spirv: Use generic transform to process shader IO
The refactored CanonicalizeEntryPointIO transform makes it much easier
to handle SPIR-V style IO as well, and doing this removes a lot of
duplicated code. Remove all of the SPIR-V transform code for shader IO
and vertex point size.
Bug: tint:920
Change-Id: Id1b97517619b4d2fd09b45d5aee848259f3dfa77
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60840
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: James Price <jrprice@google.com>
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
diff --git a/test/buffer/storage/dynamic_index/read.wgsl.expected.spvasm b/test/buffer/storage/dynamic_index/read.wgsl.expected.spvasm
index e5df892..22d8bab 100644
--- a/test/buffer/storage/dynamic_index/read.wgsl.expected.spvasm
+++ b/test/buffer/storage/dynamic_index/read.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %idx_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %idx_1 "idx_1"
OpName %S "S"
OpMemberName %S 0 "arr"
OpName %Inner "Inner"
@@ -20,8 +21,10 @@
OpMemberName %Inner 7 "h"
OpMemberName %Inner 8 "i"
OpName %s "s"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %idx "idx"
OpName %main "main"
+ OpDecorate %idx_1 BuiltIn LocalInvocationIndex
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %Inner 0 Offset 0
@@ -42,10 +45,11 @@
OpDecorate %s NonWritable
OpDecorate %s Binding 0
OpDecorate %s DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+ %idx_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
- %uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
@@ -60,10 +64,8 @@
%S = OpTypeStruct %_runtimearr_Inner
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%s = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %20 = OpTypeFunction %void
+ %20 = OpTypeFunction %void %uint
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v3int = OpTypePointer StorageBuffer %v3int
%uint_1 = OpConstant %uint 1
@@ -81,34 +83,33 @@
%_ptr_StorageBuffer_mat3v2float = OpTypePointer StorageBuffer %mat3v2float
%uint_8 = OpConstant %uint 8
%_ptr_StorageBuffer__arr_v4int_uint_4 = OpTypePointer StorageBuffer %_arr_v4int_uint_4
- %main = OpFunction %void None %20
- %23 = OpLabel
- %25 = OpLoad %uint %tint_symbol
- %27 = OpAccessChain %_ptr_StorageBuffer_v3int %s %uint_0 %25 %uint_0
+ %60 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %20
+ %idx = OpFunctionParameter %uint
+ %24 = OpLabel
+ %27 = OpAccessChain %_ptr_StorageBuffer_v3int %s %uint_0 %idx %uint_0
%28 = OpLoad %v3int %27
- %29 = OpLoad %uint %tint_symbol
- %32 = OpAccessChain %_ptr_StorageBuffer_int %s %uint_0 %29 %uint_1
- %33 = OpLoad %int %32
- %34 = OpLoad %uint %tint_symbol
- %37 = OpAccessChain %_ptr_StorageBuffer_v3uint %s %uint_0 %34 %uint_2
- %38 = OpLoad %v3uint %37
- %39 = OpLoad %uint %tint_symbol
- %42 = OpAccessChain %_ptr_StorageBuffer_uint %s %uint_0 %39 %uint_3
- %43 = OpLoad %uint %42
- %44 = OpLoad %uint %tint_symbol
- %46 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %44 %uint_4
- %47 = OpLoad %v3float %46
- %48 = OpLoad %uint %tint_symbol
- %51 = OpAccessChain %_ptr_StorageBuffer_float %s %uint_0 %48 %uint_5
- %52 = OpLoad %float %51
- %53 = OpLoad %uint %tint_symbol
- %56 = OpAccessChain %_ptr_StorageBuffer_mat2v3float %s %uint_0 %53 %uint_6
- %57 = OpLoad %mat2v3float %56
- %58 = OpLoad %uint %tint_symbol
- %61 = OpAccessChain %_ptr_StorageBuffer_mat3v2float %s %uint_0 %58 %uint_7
- %62 = OpLoad %mat3v2float %61
- %63 = OpLoad %uint %tint_symbol
- %66 = OpAccessChain %_ptr_StorageBuffer__arr_v4int_uint_4 %s %uint_0 %63 %uint_8
- %67 = OpLoad %_arr_v4int_uint_4 %66
+ %31 = OpAccessChain %_ptr_StorageBuffer_int %s %uint_0 %idx %uint_1
+ %32 = OpLoad %int %31
+ %35 = OpAccessChain %_ptr_StorageBuffer_v3uint %s %uint_0 %idx %uint_2
+ %36 = OpLoad %v3uint %35
+ %39 = OpAccessChain %_ptr_StorageBuffer_uint %s %uint_0 %idx %uint_3
+ %40 = OpLoad %uint %39
+ %42 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %idx %uint_4
+ %43 = OpLoad %v3float %42
+ %46 = OpAccessChain %_ptr_StorageBuffer_float %s %uint_0 %idx %uint_5
+ %47 = OpLoad %float %46
+ %50 = OpAccessChain %_ptr_StorageBuffer_mat2v3float %s %uint_0 %idx %uint_6
+ %51 = OpLoad %mat2v3float %50
+ %54 = OpAccessChain %_ptr_StorageBuffer_mat3v2float %s %uint_0 %idx %uint_7
+ %55 = OpLoad %mat3v2float %54
+ %58 = OpAccessChain %_ptr_StorageBuffer__arr_v4int_uint_4 %s %uint_0 %idx %uint_8
+ %59 = OpLoad %_arr_v4int_uint_4 %58
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %60
+ %62 = OpLabel
+ %64 = OpLoad %uint %idx_1
+ %63 = OpFunctionCall %void %main_inner %64
OpReturn
OpFunctionEnd
diff --git a/test/buffer/storage/dynamic_index/write.wgsl.expected.spvasm b/test/buffer/storage/dynamic_index/write.wgsl.expected.spvasm
index ca9c2b3..c7d951c 100644
--- a/test/buffer/storage/dynamic_index/write.wgsl.expected.spvasm
+++ b/test/buffer/storage/dynamic_index/write.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %idx_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %idx_1 "idx_1"
OpName %S "S"
OpMemberName %S 0 "arr"
OpName %Inner "Inner"
@@ -20,8 +21,10 @@
OpMemberName %Inner 7 "h"
OpMemberName %Inner 8 "i"
OpName %s "s"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %idx "idx"
OpName %main "main"
+ OpDecorate %idx_1 BuiltIn LocalInvocationIndex
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %Inner 0 Offset 0
@@ -41,10 +44,11 @@
OpDecorate %_runtimearr_Inner ArrayStride 176
OpDecorate %s Binding 0
OpDecorate %s DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+ %idx_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
- %uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
@@ -59,64 +63,61 @@
%S = OpTypeStruct %_runtimearr_Inner
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%s = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %20 = OpTypeFunction %void
+ %20 = OpTypeFunction %void %uint
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v3int = OpTypePointer StorageBuffer %v3int
%28 = OpConstantNull %v3int
%uint_1 = OpConstant %uint 1
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
- %33 = OpConstantNull %int
+ %32 = OpConstantNull %int
%uint_2 = OpConstant %uint 2
%_ptr_StorageBuffer_v3uint = OpTypePointer StorageBuffer %v3uint
- %38 = OpConstantNull %v3uint
+ %36 = OpConstantNull %v3uint
%uint_3 = OpConstant %uint 3
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
- %43 = OpConstantNull %uint
+ %40 = OpConstantNull %uint
%_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float
- %47 = OpConstantNull %v3float
+ %43 = OpConstantNull %v3float
%uint_5 = OpConstant %uint 5
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
- %52 = OpConstantNull %float
+ %47 = OpConstantNull %float
%uint_6 = OpConstant %uint 6
%_ptr_StorageBuffer_mat2v3float = OpTypePointer StorageBuffer %mat2v3float
- %57 = OpConstantNull %mat2v3float
+ %51 = OpConstantNull %mat2v3float
%uint_7 = OpConstant %uint 7
%_ptr_StorageBuffer_mat3v2float = OpTypePointer StorageBuffer %mat3v2float
- %62 = OpConstantNull %mat3v2float
+ %55 = OpConstantNull %mat3v2float
%uint_8 = OpConstant %uint 8
%_ptr_StorageBuffer__arr_v4int_uint_4 = OpTypePointer StorageBuffer %_arr_v4int_uint_4
- %67 = OpConstantNull %_arr_v4int_uint_4
- %main = OpFunction %void None %20
- %23 = OpLabel
- %25 = OpLoad %uint %tint_symbol
- %27 = OpAccessChain %_ptr_StorageBuffer_v3int %s %uint_0 %25 %uint_0
+ %59 = OpConstantNull %_arr_v4int_uint_4
+ %60 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %20
+ %idx = OpFunctionParameter %uint
+ %24 = OpLabel
+ %27 = OpAccessChain %_ptr_StorageBuffer_v3int %s %uint_0 %idx %uint_0
OpStore %27 %28
- %29 = OpLoad %uint %tint_symbol
- %32 = OpAccessChain %_ptr_StorageBuffer_int %s %uint_0 %29 %uint_1
- OpStore %32 %33
- %34 = OpLoad %uint %tint_symbol
- %37 = OpAccessChain %_ptr_StorageBuffer_v3uint %s %uint_0 %34 %uint_2
- OpStore %37 %38
- %39 = OpLoad %uint %tint_symbol
- %42 = OpAccessChain %_ptr_StorageBuffer_uint %s %uint_0 %39 %uint_3
+ %31 = OpAccessChain %_ptr_StorageBuffer_int %s %uint_0 %idx %uint_1
+ OpStore %31 %32
+ %35 = OpAccessChain %_ptr_StorageBuffer_v3uint %s %uint_0 %idx %uint_2
+ OpStore %35 %36
+ %39 = OpAccessChain %_ptr_StorageBuffer_uint %s %uint_0 %idx %uint_3
+ OpStore %39 %40
+ %42 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %idx %uint_4
OpStore %42 %43
- %44 = OpLoad %uint %tint_symbol
- %46 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %44 %uint_4
+ %46 = OpAccessChain %_ptr_StorageBuffer_float %s %uint_0 %idx %uint_5
OpStore %46 %47
- %48 = OpLoad %uint %tint_symbol
- %51 = OpAccessChain %_ptr_StorageBuffer_float %s %uint_0 %48 %uint_5
- OpStore %51 %52
- %53 = OpLoad %uint %tint_symbol
- %56 = OpAccessChain %_ptr_StorageBuffer_mat2v3float %s %uint_0 %53 %uint_6
- OpStore %56 %57
- %58 = OpLoad %uint %tint_symbol
- %61 = OpAccessChain %_ptr_StorageBuffer_mat3v2float %s %uint_0 %58 %uint_7
- OpStore %61 %62
- %63 = OpLoad %uint %tint_symbol
- %66 = OpAccessChain %_ptr_StorageBuffer__arr_v4int_uint_4 %s %uint_0 %63 %uint_8
- OpStore %66 %67
+ %50 = OpAccessChain %_ptr_StorageBuffer_mat2v3float %s %uint_0 %idx %uint_6
+ OpStore %50 %51
+ %54 = OpAccessChain %_ptr_StorageBuffer_mat3v2float %s %uint_0 %idx %uint_7
+ OpStore %54 %55
+ %58 = OpAccessChain %_ptr_StorageBuffer__arr_v4int_uint_4 %s %uint_0 %idx %uint_8
+ OpStore %58 %59
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %60
+ %62 = OpLabel
+ %64 = OpLoad %uint %idx_1
+ %63 = OpFunctionCall %void %main_inner %64
OpReturn
OpFunctionEnd
diff --git a/test/buffer/uniform/dynamic_index/read.wgsl.expected.spvasm b/test/buffer/uniform/dynamic_index/read.wgsl.expected.spvasm
index 4ea6207..e00a927 100644
--- a/test/buffer/uniform/dynamic_index/read.wgsl.expected.spvasm
+++ b/test/buffer/uniform/dynamic_index/read.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %idx_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %idx_1 "idx_1"
OpName %S "S"
OpMemberName %S 0 "arr"
OpName %Inner "Inner"
@@ -22,8 +23,10 @@
OpMemberName %Inner 9 "j"
OpMemberName %Inner 10 "k"
OpName %s "s"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %idx "idx"
OpName %main "main"
+ OpDecorate %idx_1 BuiltIn LocalInvocationIndex
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %Inner 0 Offset 0
@@ -46,10 +49,11 @@
OpDecorate %s NonWritable
OpDecorate %s Binding 0
OpDecorate %s DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+ %idx_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
- %uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
@@ -66,10 +70,8 @@
%S = OpTypeStruct %_arr_Inner_uint_8
%_ptr_Uniform_S = OpTypePointer Uniform %S
%s = OpVariable %_ptr_Uniform_S Uniform
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %22 = OpTypeFunction %void
+ %22 = OpTypeFunction %void %uint
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_v3int = OpTypePointer Uniform %v3int
%uint_1 = OpConstant %uint 1
@@ -85,34 +87,33 @@
%_ptr_Uniform_v2int = OpTypePointer Uniform %v2int
%uint_7 = OpConstant %uint 7
%_ptr_Uniform_mat2v3float = OpTypePointer Uniform %mat2v3float
- %main = OpFunction %void None %22
- %25 = OpLabel
- %27 = OpLoad %uint %tint_symbol
- %29 = OpAccessChain %_ptr_Uniform_v3int %s %uint_0 %27 %uint_0
+ %60 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %22
+ %idx = OpFunctionParameter %uint
+ %26 = OpLabel
+ %29 = OpAccessChain %_ptr_Uniform_v3int %s %uint_0 %idx %uint_0
%30 = OpLoad %v3int %29
- %31 = OpLoad %uint %tint_symbol
- %34 = OpAccessChain %_ptr_Uniform_int %s %uint_0 %31 %uint_1
- %35 = OpLoad %int %34
- %36 = OpLoad %uint %tint_symbol
- %39 = OpAccessChain %_ptr_Uniform_v3uint %s %uint_0 %36 %uint_2
- %40 = OpLoad %v3uint %39
- %41 = OpLoad %uint %tint_symbol
- %44 = OpAccessChain %_ptr_Uniform_uint %s %uint_0 %41 %uint_3
- %45 = OpLoad %uint %44
- %46 = OpLoad %uint %tint_symbol
- %48 = OpAccessChain %_ptr_Uniform_v3float %s %uint_0 %46 %uint_4
- %49 = OpLoad %v3float %48
- %50 = OpLoad %uint %tint_symbol
- %53 = OpAccessChain %_ptr_Uniform_float %s %uint_0 %50 %uint_5
- %54 = OpLoad %float %53
- %55 = OpLoad %uint %tint_symbol
- %58 = OpAccessChain %_ptr_Uniform_v2int %s %uint_0 %55 %uint_6
- %59 = OpLoad %v2int %58
- %60 = OpLoad %uint %tint_symbol
- %62 = OpAccessChain %_ptr_Uniform_v2int %s %uint_0 %60 %uint_7
- %63 = OpLoad %v2int %62
- %64 = OpLoad %uint %tint_symbol
- %66 = OpAccessChain %_ptr_Uniform_mat2v3float %s %uint_0 %64 %uint_8
- %67 = OpLoad %mat2v3float %66
+ %33 = OpAccessChain %_ptr_Uniform_int %s %uint_0 %idx %uint_1
+ %34 = OpLoad %int %33
+ %37 = OpAccessChain %_ptr_Uniform_v3uint %s %uint_0 %idx %uint_2
+ %38 = OpLoad %v3uint %37
+ %41 = OpAccessChain %_ptr_Uniform_uint %s %uint_0 %idx %uint_3
+ %42 = OpLoad %uint %41
+ %44 = OpAccessChain %_ptr_Uniform_v3float %s %uint_0 %idx %uint_4
+ %45 = OpLoad %v3float %44
+ %48 = OpAccessChain %_ptr_Uniform_float %s %uint_0 %idx %uint_5
+ %49 = OpLoad %float %48
+ %52 = OpAccessChain %_ptr_Uniform_v2int %s %uint_0 %idx %uint_6
+ %53 = OpLoad %v2int %52
+ %55 = OpAccessChain %_ptr_Uniform_v2int %s %uint_0 %idx %uint_7
+ %56 = OpLoad %v2int %55
+ %58 = OpAccessChain %_ptr_Uniform_mat2v3float %s %uint_0 %idx %uint_8
+ %59 = OpLoad %mat2v3float %58
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %60
+ %62 = OpLabel
+ %64 = OpLoad %uint %idx_1
+ %63 = OpFunctionCall %void %main_inner %64
OpReturn
OpFunctionEnd
diff --git a/test/bug/dawn/947.wgsl.expected.spvasm b/test/bug/dawn/947.wgsl.expected.spvasm
index 2f6571e..cfe88b2 100644
--- a/test/bug/dawn/947.wgsl.expected.spvasm
+++ b/test/bug/dawn/947.wgsl.expected.spvasm
@@ -1,221 +1,217 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 141
+; Bound: 137
; Schema: 0
OpCapability Shader
- %120 = OpExtInstImport "GLSL.std.450"
+ %116 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vs_main "vs_main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpEntryPoint Fragment %fs_main "fs_main" %tint_symbol_5 %tint_symbol_7
+ OpEntryPoint Vertex %vs_main "vs_main" %VertexIndex_1 %texcoords_1 %position_1 %vertex_point_size
+ OpEntryPoint Fragment %fs_main "fs_main" %texcoord_1 %value
OpExecutionMode %fs_main OriginUpperLeft
- OpName %tint_pointsize "tint_pointsize"
+ OpName %VertexIndex_1 "VertexIndex_1"
+ OpName %texcoords_1 "texcoords_1"
+ OpName %position_1 "position_1"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %texcoord_1 "texcoord_1"
+ OpName %value "value"
OpName %Uniforms "Uniforms"
OpMemberName %Uniforms 0 "u_scale"
OpMemberName %Uniforms 1 "u_offset"
OpName %uniforms "uniforms"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %mySampler "mySampler"
OpName %myTexture "myTexture"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_7 "tint_symbol_7"
OpName %VertexOutputs "VertexOutputs"
OpMemberName %VertexOutputs 0 "texcoords"
OpMemberName %VertexOutputs 1 "position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %vs_main "vs_main"
+ OpName %vs_main_inner "vs_main_inner"
+ OpName %VertexIndex "VertexIndex"
OpName %texcoord "texcoord"
OpName %output "output"
OpName %flipY "flipY"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %fs_main "fs_main"
+ OpName %vs_main "vs_main"
+ OpName %fs_main_inner "fs_main_inner"
+ OpName %texcoord_0 "texcoord"
OpName %clampedTexcoord "clampedTexcoord"
OpName %srcColor "srcColor"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpName %fs_main "fs_main"
+ OpDecorate %VertexIndex_1 BuiltIn VertexIndex
+ OpDecorate %texcoords_1 Location 0
+ OpDecorate %position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %texcoord_1 Location 0
+ OpDecorate %value Location 0
OpDecorate %Uniforms Block
OpMemberDecorate %Uniforms 0 Offset 0
OpMemberDecorate %Uniforms 1 Offset 8
OpDecorate %uniforms NonWritable
OpDecorate %uniforms Binding 0
OpDecorate %uniforms DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpDecorate %mySampler Binding 1
OpDecorate %mySampler DescriptorSet 0
OpDecorate %myTexture Binding 2
OpDecorate %myTexture DescriptorSet 0
- OpDecorate %tint_symbol_5 Location 0
- OpDecorate %tint_symbol_7 Location 0
OpMemberDecorate %VertexOutputs 0 Offset 0
OpMemberDecorate %VertexOutputs 1 Offset 16
OpDecorate %_arr_v2float_uint_3 ArrayStride 8
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%VertexIndex_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v2float = OpTypeVector %float 2
+%_ptr_Output_v2float = OpTypePointer Output %v2float
+ %8 = OpConstantNull %v2float
+%texcoords_1 = OpVariable %_ptr_Output_v2float Output %8
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %12 = OpConstantNull %v4float
+ %position_1 = OpVariable %_ptr_Output_v4float Output %12
+%_ptr_Output_float = OpTypePointer Output %float
+ %15 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %15
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+ %texcoord_1 = OpVariable %_ptr_Input_v2float Input
+ %value = OpVariable %_ptr_Output_v4float Output %12
%Uniforms = OpTypeStruct %v2float %v2float
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%_ptr_Output_v2float = OpTypePointer Output %v2float
- %14 = OpConstantNull %v2float
-%tint_symbol_2 = OpVariable %_ptr_Output_v2float Output %14
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %18 = OpConstantNull %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %18
- %21 = OpTypeSampler
-%_ptr_UniformConstant_21 = OpTypePointer UniformConstant %21
- %mySampler = OpVariable %_ptr_UniformConstant_21 UniformConstant
- %24 = OpTypeImage %float 2D 0 0 0 1 Unknown
+ %24 = OpTypeSampler
%_ptr_UniformConstant_24 = OpTypePointer UniformConstant %24
- %myTexture = OpVariable %_ptr_UniformConstant_24 UniformConstant
-%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol_5 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %18
- %void = OpTypeVoid
+ %mySampler = OpVariable %_ptr_UniformConstant_24 UniformConstant
+ %27 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_27 = OpTypePointer UniformConstant %27
+ %myTexture = OpVariable %_ptr_UniformConstant_27 UniformConstant
%VertexOutputs = OpTypeStruct %v2float %v4float
- %28 = OpTypeFunction %void %VertexOutputs
- %36 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %28 = OpTypeFunction %VertexOutputs %uint
%uint_3 = OpConstant %uint 3
%_arr_v2float_uint_3 = OpTypeArray %v2float %uint_3
%float_n0_5 = OpConstant %float -0.5
%float_0 = OpConstant %float 0
- %44 = OpConstantComposite %v2float %float_n0_5 %float_0
+ %37 = OpConstantComposite %v2float %float_n0_5 %float_0
%float_1_5 = OpConstant %float 1.5
- %46 = OpConstantComposite %v2float %float_1_5 %float_0
+ %39 = OpConstantComposite %v2float %float_1_5 %float_0
%float_0_5 = OpConstant %float 0.5
%float_2 = OpConstant %float 2
- %49 = OpConstantComposite %v2float %float_0_5 %float_2
- %50 = OpConstantComposite %_arr_v2float_uint_3 %44 %46 %49
+ %42 = OpConstantComposite %v2float %float_0_5 %float_2
+ %43 = OpConstantComposite %_arr_v2float_uint_3 %37 %39 %42
%_ptr_Function__arr_v2float_uint_3 = OpTypePointer Function %_arr_v2float_uint_3
- %53 = OpConstantNull %_arr_v2float_uint_3
+ %46 = OpConstantNull %_arr_v2float_uint_3
%_ptr_Function_VertexOutputs = OpTypePointer Function %VertexOutputs
- %56 = OpConstantNull %VertexOutputs
+ %49 = OpConstantNull %VertexOutputs
%uint_1 = OpConstant %uint 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %65 = OpConstantComposite %v2float %float_1 %float_1
+ %float_1 = OpConstant %float 1
+ %58 = OpConstantComposite %v2float %float_1 %float_1
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_float = OpTypePointer Uniform %float
%bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
- %78 = OpConstantNull %bool
+ %71 = OpConstantNull %bool
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_n1 = OpConstant %float -1
- %95 = OpConstantComposite %v2float %float_1 %float_n1
- %97 = OpConstantComposite %v2float %float_0 %float_1
- %113 = OpTypeFunction %void %v4float
- %122 = OpConstantComposite %v2float %float_0 %float_0
+ %87 = OpConstantComposite %v2float %float_1 %float_n1
+ %89 = OpConstantComposite %v2float %float_0 %float_1
+ %void = OpTypeVoid
+ %103 = OpTypeFunction %void
+ %111 = OpTypeFunction %v4float %v2float
+ %117 = OpConstantComposite %v2float %float_0 %float_0
%v2bool = OpTypeVector %bool 2
- %135 = OpTypeSampledImage %24
-%tint_symbol_4 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %VertexOutputs
- %33 = OpLabel
- %34 = OpCompositeExtract %v2float %tint_symbol_1 0
- OpStore %tint_symbol_2 %34
- %35 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %35
+ %129 = OpTypeSampledImage %27
+%vs_main_inner = OpFunction %VertexOutputs None %28
+%VertexIndex = OpFunctionParameter %uint
+ %32 = OpLabel
+ %texcoord = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %46
+ %output = OpVariable %_ptr_Function_VertexOutputs Function %49
+ %flipY = OpVariable %_ptr_Function_bool Function %71
+ OpStore %texcoord %43
+ %52 = OpAccessChain %_ptr_Function_v4float %output %uint_1
+ %54 = OpAccessChain %_ptr_Function_v2float %texcoord %VertexIndex
+ %55 = OpLoad %v2float %54
+ %56 = OpVectorTimesScalar %v2float %55 %float_2
+ %59 = OpFSub %v2float %56 %58
+ %60 = OpCompositeExtract %float %59 0
+ %61 = OpCompositeExtract %float %59 1
+ %62 = OpCompositeConstruct %v4float %60 %61 %float_0 %float_1
+ OpStore %52 %62
+ %65 = OpAccessChain %_ptr_Uniform_float %uniforms %uint_0 %uint_1
+ %66 = OpLoad %float %65
+ %67 = OpFOrdLessThan %bool %66 %float_0
+ OpStore %flipY %67
+ %72 = OpLoad %bool %flipY
+ OpSelectionMerge %73 None
+ OpBranchConditional %72 %74 %75
+ %74 = OpLabel
+ %76 = OpAccessChain %_ptr_Function_v2float %output %uint_0
+ %77 = OpAccessChain %_ptr_Function_v2float %texcoord %VertexIndex
+ %78 = OpLoad %v2float %77
+ %80 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_0
+ %81 = OpLoad %v2float %80
+ %82 = OpFMul %v2float %78 %81
+ %83 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_1
+ %84 = OpLoad %v2float %83
+ %85 = OpFAdd %v2float %82 %84
+ %88 = OpFMul %v2float %85 %87
+ %90 = OpFAdd %v2float %88 %89
+ OpStore %76 %90
+ OpBranch %73
+ %75 = OpLabel
+ %91 = OpAccessChain %_ptr_Function_v2float %output %uint_0
+ %92 = OpAccessChain %_ptr_Function_v2float %texcoord %VertexIndex
+ %93 = OpLoad %v2float %92
+ %94 = OpFMul %v2float %93 %87
+ %95 = OpFAdd %v2float %94 %89
+ %96 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_0
+ %97 = OpLoad %v2float %96
+ %98 = OpFMul %v2float %95 %97
+ %99 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_1
+ %100 = OpLoad %v2float %99
+ %101 = OpFAdd %v2float %98 %100
+ OpStore %91 %101
+ OpBranch %73
+ %73 = OpLabel
+ %102 = OpLoad %VertexOutputs %output
+ OpReturnValue %102
+ OpFunctionEnd
+ %vs_main = OpFunction %void None %103
+ %106 = OpLabel
+ %108 = OpLoad %uint %VertexIndex_1
+ %107 = OpFunctionCall %VertexOutputs %vs_main_inner %108
+ %109 = OpCompositeExtract %v2float %107 0
+ OpStore %texcoords_1 %109
+ %110 = OpCompositeExtract %v4float %107 1
+ OpStore %position_1 %110
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
- %vs_main = OpFunction %void None %36
- %38 = OpLabel
- %texcoord = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %53
- %output = OpVariable %_ptr_Function_VertexOutputs Function %56
- %flipY = OpVariable %_ptr_Function_bool Function %78
- OpStore %tint_pointsize %float_1
- OpStore %texcoord %50
- %59 = OpAccessChain %_ptr_Function_v4float %output %uint_1
- %60 = OpLoad %uint %tint_symbol
- %62 = OpAccessChain %_ptr_Function_v2float %texcoord %60
- %63 = OpLoad %v2float %62
- %64 = OpVectorTimesScalar %v2float %63 %float_2
- %66 = OpFSub %v2float %64 %65
- %67 = OpCompositeExtract %float %66 0
- %68 = OpCompositeExtract %float %66 1
- %69 = OpCompositeConstruct %v4float %67 %68 %float_0 %float_1
- OpStore %59 %69
- %72 = OpAccessChain %_ptr_Uniform_float %uniforms %uint_0 %uint_1
- %73 = OpLoad %float %72
- %74 = OpFOrdLessThan %bool %73 %float_0
- OpStore %flipY %74
- %79 = OpLoad %bool %flipY
- OpSelectionMerge %80 None
- OpBranchConditional %79 %81 %82
- %81 = OpLabel
- %83 = OpAccessChain %_ptr_Function_v2float %output %uint_0
- %84 = OpLoad %uint %tint_symbol
- %85 = OpAccessChain %_ptr_Function_v2float %texcoord %84
- %86 = OpLoad %v2float %85
- %88 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_0
- %89 = OpLoad %v2float %88
- %90 = OpFMul %v2float %86 %89
- %91 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_1
- %92 = OpLoad %v2float %91
- %93 = OpFAdd %v2float %90 %92
- %96 = OpFMul %v2float %93 %95
- %98 = OpFAdd %v2float %96 %97
- OpStore %83 %98
- OpBranch %80
- %82 = OpLabel
- %99 = OpAccessChain %_ptr_Function_v2float %output %uint_0
- %100 = OpLoad %uint %tint_symbol
- %101 = OpAccessChain %_ptr_Function_v2float %texcoord %100
- %102 = OpLoad %v2float %101
- %103 = OpFMul %v2float %102 %95
- %104 = OpFAdd %v2float %103 %97
- %105 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_0
- %106 = OpLoad %v2float %105
- %107 = OpFMul %v2float %104 %106
- %108 = OpAccessChain %_ptr_Uniform_v2float %uniforms %uint_1
- %109 = OpLoad %v2float %108
- %110 = OpFAdd %v2float %107 %109
- OpStore %99 %110
- OpBranch %80
- %80 = OpLabel
- %112 = OpLoad %VertexOutputs %output
- %111 = OpFunctionCall %void %tint_symbol_4 %112
- OpReturn
- OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %113
-%tint_symbol_6 = OpFunctionParameter %v4float
- %116 = OpLabel
- OpStore %tint_symbol_7 %tint_symbol_6
- OpReturn
- OpFunctionEnd
- %fs_main = OpFunction %void None %36
- %118 = OpLabel
-%clampedTexcoord = OpVariable %_ptr_Function_v2float Function %14
- %srcColor = OpVariable %_ptr_Function_v4float Function %18
- %121 = OpLoad %v2float %tint_symbol_5
- %119 = OpExtInst %v2float %120 NClamp %121 %122 %65
- OpStore %clampedTexcoord %119
- %126 = OpLoad %v2float %clampedTexcoord
- %127 = OpLoad %v2float %tint_symbol_5
- %128 = OpFOrdEqual %v2bool %126 %127
- %125 = OpAll %bool %128
- %124 = OpLogicalNot %bool %125
- OpSelectionMerge %130 None
- OpBranchConditional %124 %131 %130
- %131 = OpLabel
+%fs_main_inner = OpFunction %v4float None %111
+ %texcoord_0 = OpFunctionParameter %v2float
+ %114 = OpLabel
+%clampedTexcoord = OpVariable %_ptr_Function_v2float Function %8
+ %srcColor = OpVariable %_ptr_Function_v4float Function %12
+ %115 = OpExtInst %v2float %116 NClamp %texcoord_0 %117 %58
+ OpStore %clampedTexcoord %115
+ %121 = OpLoad %v2float %clampedTexcoord
+ %122 = OpFOrdEqual %v2bool %121 %texcoord_0
+ %120 = OpAll %bool %122
+ %119 = OpLogicalNot %bool %120
+ OpSelectionMerge %124 None
+ OpBranchConditional %119 %125 %124
+ %125 = OpLabel
OpKill
- %130 = OpLabel
- %133 = OpLoad %21 %mySampler
- %134 = OpLoad %24 %myTexture
- %136 = OpSampledImage %135 %134 %133
- %137 = OpLoad %v2float %tint_symbol_5
- %132 = OpImageSampleImplicitLod %v4float %136 %137
- OpStore %srcColor %132
- %140 = OpLoad %v4float %srcColor
- %139 = OpFunctionCall %void %tint_symbol_8 %140
+ %124 = OpLabel
+ %127 = OpLoad %24 %mySampler
+ %128 = OpLoad %27 %myTexture
+ %130 = OpSampledImage %129 %128 %127
+ %126 = OpImageSampleImplicitLod %v4float %130 %texcoord_0
+ OpStore %srcColor %126
+ %132 = OpLoad %v4float %srcColor
+ OpReturnValue %132
+ OpFunctionEnd
+ %fs_main = OpFunction %void None %103
+ %134 = OpLabel
+ %136 = OpLoad %v2float %texcoord_1
+ %135 = OpFunctionCall %v4float %fs_main_inner %136
+ OpStore %value %135
OpReturn
OpFunctionEnd
diff --git a/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.spvasm b/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.spvasm
index dfe9497..fcbdc4d 100644
--- a/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.spvasm
+++ b/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 57
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %f "f" %tint_symbol
+ OpEntryPoint GLCompute %f "f" %local_invocation_index_1
OpExecutionMode %f LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %UBO "UBO"
OpMemberName %UBO 0 "dynamic_idx"
OpName %ubo "ubo"
@@ -16,9 +17,11 @@
OpName %S "S"
OpMemberName %S 0 "data"
OpName %s "s"
- OpName %tint_symbol "tint_symbol"
- OpName %f "f"
+ OpName %f_inner "f_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
+ OpName %f "f"
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %UBO Block
OpMemberDecorate %UBO 0 Offset 0
OpDecorate %ubo NonWritable
@@ -30,7 +33,9 @@
OpDecorate %result Binding 1
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_int_uint_64 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%UBO = OpTypeStruct %int
%_ptr_Uniform_UBO = OpTypePointer Uniform %UBO
@@ -38,16 +43,13 @@
%Result = OpTypeStruct %int
%_ptr_StorageBuffer_Result = OpTypePointer StorageBuffer %Result
%result = OpVariable %_ptr_StorageBuffer_Result StorageBuffer
- %uint = OpTypeInt 32 0
%uint_64 = OpConstant %uint 64
%_arr_int_uint_64 = OpTypeArray %int %uint_64
%S = OpTypeStruct %_arr_int_uint_64
%_ptr_Workgroup_S = OpTypePointer Workgroup %S
%s = OpVariable %_ptr_Workgroup_S Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %16 = OpTypeFunction %void
+ %16 = OpTypeFunction %void %uint
%_ptr_Function_uint = OpTypePointer Function %uint
%23 = OpConstantNull %uint
%bool = OpTypeBool
@@ -59,11 +61,12 @@
%uint_264 = OpConstant %uint 264
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%_ptr_Uniform_int = OpTypePointer Uniform %int
- %f = OpFunction %void None %16
- %19 = OpLabel
+ %52 = OpTypeFunction %void
+ %f_inner = OpFunction %void None %16
+%local_invocation_index = OpFunctionParameter %uint
+ %20 = OpLabel
%idx = OpVariable %_ptr_Function_uint Function %23
- %20 = OpLoad %uint %tint_symbol
- OpStore %idx %20
+ OpStore %idx %local_invocation_index
OpBranch %24
%24 = OpLabel
OpLoopMerge %25 %26 None
@@ -96,3 +99,9 @@
OpStore %46 %51
OpReturn
OpFunctionEnd
+ %f = OpFunction %void None %52
+ %54 = OpLabel
+ %56 = OpLoad %uint %local_invocation_index_1
+ %55 = OpFunctionCall %void %f_inner %56
+ OpReturn
+ OpFunctionEnd
diff --git a/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.spvasm b/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.spvasm
index 8073672..830149d 100644
--- a/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.spvasm
+++ b/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %f "f" %tint_symbol
+ OpEntryPoint GLCompute %f "f" %local_invocation_index_1
OpExecutionMode %f LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %UBO "UBO"
OpMemberName %UBO 0 "dynamic_idx"
OpName %ubo "ubo"
@@ -16,9 +17,11 @@
OpName %S "S"
OpMemberName %S 0 "data"
OpName %s "s"
- OpName %tint_symbol "tint_symbol"
- OpName %f "f"
+ OpName %f_inner "f_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
+ OpName %f "f"
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %UBO Block
OpMemberDecorate %UBO 0 Offset 0
OpDecorate %ubo NonWritable
@@ -30,7 +33,9 @@
OpDecorate %result Binding 1
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_int_uint_64 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%UBO = OpTypeStruct %int
%_ptr_Uniform_UBO = OpTypePointer Uniform %UBO
@@ -38,16 +43,13 @@
%Result = OpTypeStruct %int
%_ptr_StorageBuffer_Result = OpTypePointer StorageBuffer %Result
%result = OpVariable %_ptr_StorageBuffer_Result StorageBuffer
- %uint = OpTypeInt 32 0
%uint_64 = OpConstant %uint 64
%_arr_int_uint_64 = OpTypeArray %int %uint_64
%S = OpTypeStruct %_arr_int_uint_64
%_ptr_Workgroup_S = OpTypePointer Workgroup %S
%s = OpVariable %_ptr_Workgroup_S Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %16 = OpTypeFunction %void
+ %16 = OpTypeFunction %void %uint
%_ptr_Function_uint = OpTypePointer Function %uint
%23 = OpConstantNull %uint
%bool = OpTypeBool
@@ -61,11 +63,12 @@
%int_1 = OpConstant %int 1
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_3 = OpConstant %int 3
- %f = OpFunction %void None %16
- %19 = OpLabel
+ %55 = OpTypeFunction %void
+ %f_inner = OpFunction %void None %16
+%local_invocation_index = OpFunctionParameter %uint
+ %20 = OpLabel
%idx = OpVariable %_ptr_Function_uint Function %23
- %20 = OpLoad %uint %tint_symbol
- OpStore %idx %20
+ OpStore %idx %local_invocation_index
OpBranch %24
%24 = OpLabel
OpLoopMerge %25 %26 None
@@ -100,3 +103,9 @@
OpStore %51 %54
OpReturn
OpFunctionEnd
+ %f = OpFunction %void None %55
+ %57 = OpLabel
+ %59 = OpLoad %uint %local_invocation_index_1
+ %58 = OpFunctionCall %void %f_inner %59
+ OpReturn
+ OpFunctionEnd
diff --git a/test/bug/tint/1046.wgsl.expected.spvasm b/test/bug/tint/1046.wgsl.expected.spvasm
index 9623706..7d91278 100644
--- a/test/bug/tint/1046.wgsl.expected.spvasm
+++ b/test/bug/tint/1046.wgsl.expected.spvasm
@@ -5,8 +5,14 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_7
+ OpEntryPoint Fragment %main "main" %position_1 %view_position_1 %normal_1 %uv_1 %color_1 %color_2
OpExecutionMode %main OriginUpperLeft
+ OpName %position_1 "position_1"
+ OpName %view_position_1 "view_position_1"
+ OpName %normal_1 "normal_1"
+ OpName %uv_1 "uv_1"
+ OpName %color_1 "color_1"
+ OpName %color_2 "color_2"
OpName %Uniforms "Uniforms"
OpMemberName %Uniforms 0 "worldView"
OpMemberName %Uniforms 1 "proj"
@@ -21,12 +27,6 @@
OpName %pointLights "pointLights"
OpName %mySampler "mySampler"
OpName %myTexture "myTexture"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_7 "tint_symbol_7"
OpName %FragmentInput "FragmentInput"
OpMemberName %FragmentInput 0 "position"
OpMemberName %FragmentInput 1 "view_position"
@@ -38,10 +38,16 @@
OpName %color "color"
OpName %FragmentOutput "FragmentOutput"
OpMemberName %FragmentOutput 0 "color"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %fragment_0 "fragment"
OpName %output "output"
+ OpName %main "main"
+ OpDecorate %position_1 BuiltIn FragCoord
+ OpDecorate %view_position_1 Location 0
+ OpDecorate %normal_1 Location 1
+ OpDecorate %uv_1 Location 2
+ OpDecorate %color_1 Location 3
+ OpDecorate %color_2 Location 0
OpDecorate %Uniforms Block
OpMemberDecorate %Uniforms 0 Offset 0
OpMemberDecorate %Uniforms 0 ColMajor
@@ -66,12 +72,6 @@
OpDecorate %mySampler DescriptorSet 0
OpDecorate %myTexture Binding 3
OpDecorate %myTexture DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 Location 1
- OpDecorate %tint_symbol_3 Location 2
- OpDecorate %tint_symbol_4 Location 3
- OpDecorate %tint_symbol_7 Location 0
OpMemberDecorate %FragmentInput 0 Offset 0
OpMemberDecorate %FragmentInput 1 Offset 16
OpMemberDecorate %FragmentInput 2 Offset 32
@@ -80,6 +80,17 @@
OpMemberDecorate %FragmentOutput 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+ %position_1 = OpVariable %_ptr_Input_v4float Input
+%view_position_1 = OpVariable %_ptr_Input_v4float Input
+ %normal_1 = OpVariable %_ptr_Input_v4float Input
+ %v2float = OpTypeVector %float 2
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+ %uv_1 = OpVariable %_ptr_Input_v2float Input
+ %color_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %13 = OpConstantNull %v4float
+ %color_2 = OpVariable %_ptr_Output_v4float Output %13
%mat4v4float = OpTypeMatrix %v4float 4
%uint = OpTypeInt 32 0
%Uniforms = OpTypeStruct %mat4v4float %mat4v4float %uint %uint %v4float
@@ -90,23 +101,12 @@
%PointLights = OpTypeStruct %_runtimearr_PointLight
%_ptr_StorageBuffer_PointLights = OpTypePointer StorageBuffer %PointLights
%pointLights = OpVariable %_ptr_StorageBuffer_PointLights StorageBuffer
- %15 = OpTypeSampler
-%_ptr_UniformConstant_15 = OpTypePointer UniformConstant %15
- %mySampler = OpVariable %_ptr_UniformConstant_15 UniformConstant
- %18 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_18 = OpTypePointer UniformConstant %18
- %myTexture = OpVariable %_ptr_UniformConstant_18 UniformConstant
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v4float Input
- %v2float = OpTypeVector %float 2
-%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol_3 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %29 = OpConstantNull %v4float
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %29
+ %26 = OpTypeSampler
+%_ptr_UniformConstant_26 = OpTypePointer UniformConstant %26
+ %mySampler = OpVariable %_ptr_UniformConstant_26 UniformConstant
+ %29 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_29 = OpTypePointer UniformConstant %29
+ %myTexture = OpVariable %_ptr_UniformConstant_29 UniformConstant
%FragmentInput = OpTypeStruct %v4float %v4float %v4float %v2float %v4float
%30 = OpTypeFunction %v4float %FragmentInput
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -120,19 +120,19 @@
%uint_2 = OpConstant %uint 2
%uint_4 = OpConstant %uint 4
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
- %78 = OpTypeSampledImage %18
- %void = OpTypeVoid
+ %78 = OpTypeSampledImage %29
%FragmentOutput = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %FragmentOutput
- %89 = OpTypeFunction %void
+ %82 = OpTypeFunction %FragmentOutput %FragmentInput
%_ptr_Function_FragmentOutput = OpTypePointer Function %FragmentOutput
- %100 = OpConstantNull %FragmentOutput
+ %89 = OpConstantNull %FragmentOutput
%float_0 = OpConstant %float 0
- %103 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
+ %92 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
+ %void = OpTypeVoid
+ %103 = OpTypeFunction %void
%getColor = OpFunction %v4float None %30
%fragment = OpFunctionParameter %FragmentInput
%34 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %29
+ %color = OpVariable %_ptr_Function_v4float Function %13
%39 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_3
%40 = OpLoad %uint %39
%42 = OpIEqual %bool %40 %uint_0
@@ -172,8 +172,8 @@
OpSelectionMerge %73 None
OpBranchConditional %72 %74 %73
%74 = OpLabel
- %76 = OpLoad %15 %mySampler
- %77 = OpLoad %18 %myTexture
+ %76 = OpLoad %26 %mySampler
+ %77 = OpLoad %29 %myTexture
%79 = OpSampledImage %78 %77 %76
%80 = OpCompositeExtract %v2float %fragment 3
%75 = OpImageSampleImplicitLod %v4float %79 %80
@@ -189,29 +189,29 @@
%81 = OpLoad %v4float %color
OpReturnValue %81
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %82
-%tint_symbol_6 = OpFunctionParameter %FragmentOutput
- %87 = OpLabel
- %88 = OpCompositeExtract %v4float %tint_symbol_6 0
- OpStore %tint_symbol_7 %88
- OpReturn
+ %main_inner = OpFunction %FragmentOutput None %82
+ %fragment_0 = OpFunctionParameter %FragmentInput
+ %86 = OpLabel
+ %output = OpVariable %_ptr_Function_FragmentOutput Function %89
+ %90 = OpAccessChain %_ptr_Function_v4float %output %uint_0
+ OpStore %90 %92
+ %95 = OpLoad %Uniforms %uniforms
+ %97 = OpLoad %26 %mySampler
+ %99 = OpLoad %29 %myTexture
+ %101 = OpLoad %PointLights %pointLights
+ %102 = OpLoad %FragmentOutput %output
+ OpReturnValue %102
OpFunctionEnd
- %main = OpFunction %void None %89
- %91 = OpLabel
- %output = OpVariable %_ptr_Function_FragmentOutput Function %100
- %92 = OpLoad %v4float %tint_symbol
- %93 = OpLoad %v4float %tint_symbol_1
- %94 = OpLoad %v4float %tint_symbol_2
- %95 = OpLoad %v2float %tint_symbol_3
- %96 = OpLoad %v4float %tint_symbol_4
- %97 = OpCompositeConstruct %FragmentInput %92 %93 %94 %95 %96
- %101 = OpAccessChain %_ptr_Function_v4float %output %uint_0
- OpStore %101 %103
- %105 = OpLoad %Uniforms %uniforms
- %107 = OpLoad %15 %mySampler
- %109 = OpLoad %18 %myTexture
- %111 = OpLoad %PointLights %pointLights
- %113 = OpLoad %FragmentOutput %output
- %112 = OpFunctionCall %void %tint_symbol_8 %113
+ %main = OpFunction %void None %103
+ %105 = OpLabel
+ %107 = OpLoad %v4float %position_1
+ %108 = OpLoad %v4float %view_position_1
+ %109 = OpLoad %v4float %normal_1
+ %110 = OpLoad %v2float %uv_1
+ %111 = OpLoad %v4float %color_1
+ %112 = OpCompositeConstruct %FragmentInput %107 %108 %109 %110 %111
+ %106 = OpFunctionCall %FragmentOutput %main_inner %112
+ %113 = OpCompositeExtract %v4float %106 0
+ OpStore %color_2 %113
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/1076.wgsl.expected.spvasm b/test/bug/tint/1076.wgsl.expected.spvasm
index 09023fc..33e81b1 100644
--- a/test/bug/tint/1076.wgsl.expected.spvasm
+++ b/test/bug/tint/1076.wgsl.expected.spvasm
@@ -5,78 +5,79 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_5 %tint_symbol_6 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %a_1 %mask_1 %b_1 %a_2 %mask_2
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %a_1 "a_1"
+ OpName %mask_1 "mask_1"
+ OpName %b_1 "b_1"
+ OpName %a_2 "a_2"
+ OpName %mask_2 "mask_2"
OpName %FragIn "FragIn"
OpMemberName %FragIn 0 "a"
OpMemberName %FragIn 1 "mask"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpName %main_inner "main_inner"
+ OpName %in "in"
+ OpName %b "b"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
+ OpDecorate %a_1 Location 0
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
- OpDecorate %tint_symbol_3 Location 1
- OpDecorate %tint_symbol_5 Location 0
- OpDecorate %tint_symbol_6 BuiltIn SampleMask
+ OpDecorate %mask_1 BuiltIn SampleMask
+ OpDecorate %b_1 Location 1
+ OpDecorate %a_2 Location 0
+ OpDecorate %mask_2 BuiltIn SampleMask
OpMemberDecorate %FragIn 0 Offset 0
OpMemberDecorate %FragIn 1 Offset 4
%float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
+ %a_1 = OpVariable %_ptr_Input_float Input
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
+ %mask_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+ %b_1 = OpVariable %_ptr_Input_float Input
%_ptr_Output_float = OpTypePointer Output %float
%12 = OpConstantNull %float
-%tint_symbol_5 = OpVariable %_ptr_Output_float Output %12
+ %a_2 = OpVariable %_ptr_Output_float Output %12
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
%15 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_6 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %15
- %void = OpTypeVoid
+ %mask_2 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %15
%FragIn = OpTypeStruct %float %uint
- %16 = OpTypeFunction %void %FragIn
- %int = OpTypeInt 32 1
- %int_0 = OpConstant %int 0
-%_ptr_Output_uint = OpTypePointer Output %uint
- %28 = OpTypeFunction %void
-%_ptr_Input_uint = OpTypePointer Input %uint
+ %16 = OpTypeFunction %FragIn %FragIn %float
%uint_0 = OpConstant %uint 0
%bool = OpTypeBool
-%tint_symbol_7 = OpFunction %void None %16
-%tint_symbol_4 = OpFunctionParameter %FragIn
+ %void = OpTypeVoid
+ %29 = OpTypeFunction %void
+ %int = OpTypeInt 32 1
+ %int_0 = OpConstant %int 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%_ptr_Output_uint = OpTypePointer Output %uint
+ %main_inner = OpFunction %FragIn None %16
+ %in = OpFunctionParameter %FragIn
+ %b = OpFunctionParameter %float
%21 = OpLabel
- %22 = OpCompositeExtract %float %tint_symbol_4 0
- OpStore %tint_symbol_5 %22
- %26 = OpAccessChain %_ptr_Output_uint %tint_symbol_6 %int_0
- %27 = OpCompositeExtract %uint %tint_symbol_4 1
- OpStore %26 %27
- OpReturn
+ %22 = OpCompositeExtract %uint %in 1
+ %24 = OpIEqual %bool %22 %uint_0
+ OpSelectionMerge %26 None
+ OpBranchConditional %24 %27 %26
+ %27 = OpLabel
+ OpReturnValue %in
+ %26 = OpLabel
+ %28 = OpCompositeConstruct %FragIn %b %uint_1
+ OpReturnValue %28
OpFunctionEnd
- %main = OpFunction %void None %28
- %30 = OpLabel
- %31 = OpLoad %float %tint_symbol
- %33 = OpAccessChain %_ptr_Input_uint %tint_symbol_1 %int_0
- %34 = OpLoad %uint %33
- %35 = OpCompositeConstruct %FragIn %31 %34
- %36 = OpCompositeExtract %uint %35 1
- %38 = OpIEqual %bool %36 %uint_0
- OpSelectionMerge %40 None
- OpBranchConditional %38 %41 %40
- %41 = OpLabel
- %42 = OpFunctionCall %void %tint_symbol_7 %35
- OpReturn
- %40 = OpLabel
- %44 = OpLoad %float %tint_symbol_3
- %45 = OpCompositeConstruct %FragIn %44 %uint_1
- %43 = OpFunctionCall %void %tint_symbol_7 %45
+ %main = OpFunction %void None %29
+ %32 = OpLabel
+ %34 = OpLoad %float %a_1
+ %38 = OpAccessChain %_ptr_Input_uint %mask_1 %int_0
+ %39 = OpLoad %uint %38
+ %40 = OpCompositeConstruct %FragIn %34 %39
+ %41 = OpLoad %float %b_1
+ %33 = OpFunctionCall %FragIn %main_inner %40 %41
+ %42 = OpCompositeExtract %float %33 0
+ OpStore %a_2 %42
+ %44 = OpAccessChain %_ptr_Output_uint %mask_2 %int_0
+ %45 = OpCompositeExtract %uint %33 1
+ OpStore %44 %45
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/292.wgsl.expected.spvasm b/test/bug/tint/292.wgsl.expected.spvasm
index fe735fc..b80f9e0 100644
--- a/test/bug/tint/292.wgsl.expected.spvasm
+++ b/test/bug/tint/292.wgsl.expected.spvasm
@@ -1,53 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 29
+; Bound: 28
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
- OpName %main "main"
+ OpEntryPoint Vertex %main "main" %value %vertex_point_size
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %main_inner "main_inner"
OpName %light "light"
OpName %negative_light "negative_light"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpName %main "main"
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
- %void = OpTypeVoid
- %9 = OpTypeFunction %void %v4float
- %14 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %9 = OpTypeFunction %v4float
%v3float = OpTypeVector %float 3
%float_1_20000005 = OpConstant %float 1.20000005
+ %float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
- %21 = OpConstantComposite %v3float %float_1_20000005 %float_1 %float_2
+ %16 = OpConstantComposite %v3float %float_1_20000005 %float_1 %float_2
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %24 = OpConstantNull %v3float
-%tint_symbol_2 = OpFunction %void None %9
-%tint_symbol = OpFunctionParameter %v4float
- %13 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %19 = OpConstantNull %v3float
+ %void = OpTypeVoid
+ %23 = OpTypeFunction %void
+ %main_inner = OpFunction %v4float None %9
+ %11 = OpLabel
+ %light = OpVariable %_ptr_Function_v3float Function %19
+%negative_light = OpVariable %_ptr_Function_v3float Function %19
+ OpStore %light %16
+ %21 = OpLoad %v3float %light
+ %20 = OpFNegate %v3float %21
+ OpStore %negative_light %20
+ OpReturnValue %5
OpFunctionEnd
- %main = OpFunction %void None %14
- %16 = OpLabel
- %light = OpVariable %_ptr_Function_v3float Function %24
-%negative_light = OpVariable %_ptr_Function_v3float Function %24
- OpStore %tint_pointsize %float_1
- OpStore %light %21
- %26 = OpLoad %v3float %light
- %25 = OpFNegate %v3float %26
- OpStore %negative_light %25
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %main = OpFunction %void None %23
+ %26 = OpLabel
+ %27 = OpFunctionCall %v4float %main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/403.wgsl.expected.spvasm b/test/bug/tint/403.wgsl.expected.spvasm
index 37f056a..acde02b 100644
--- a/test/bug/tint/403.wgsl.expected.spvasm
+++ b/test/bug/tint/403.wgsl.expected.spvasm
@@ -5,21 +5,23 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_VertexIndex_1 %value %vertex_point_size
+ OpName %gl_VertexIndex_1 "gl_VertexIndex_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %vertexUniformBuffer1 "vertexUniformBuffer1"
OpMemberName %vertexUniformBuffer1 0 "transform1"
OpName %x_20 "x_20"
OpName %vertexUniformBuffer2 "vertexUniformBuffer2"
OpMemberName %vertexUniformBuffer2 0 "transform2"
OpName %x_26 "x_26"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %gl_VertexIndex "gl_VertexIndex"
OpName %indexable "indexable"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpName %main "main"
+ OpDecorate %gl_VertexIndex_1 BuiltIn VertexIndex
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %vertexUniformBuffer1 Block
OpMemberDecorate %vertexUniformBuffer1 0 Offset 0
OpMemberDecorate %vertexUniformBuffer1 0 ColMajor
@@ -34,13 +36,18 @@
OpDecorate %x_26 NonWritable
OpDecorate %x_26 DescriptorSet 1
OpDecorate %x_26 Binding 0
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
OpDecorate %_arr_v2float_uint_3 ArrayStride 8
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%gl_VertexIndex_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %8 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %8
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
%vertexUniformBuffer1 = OpTypeStruct %mat2v2float
@@ -49,60 +56,53 @@
%vertexUniformBuffer2 = OpTypeStruct %mat2v2float
%_ptr_Uniform_vertexUniformBuffer2 = OpTypePointer Uniform %vertexUniformBuffer2
%x_26 = OpVariable %_ptr_Uniform_vertexUniformBuffer2 Uniform
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %19 = OpConstantNull %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %19
- %void = OpTypeVoid
- %20 = OpTypeFunction %void %v4float
- %25 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %20 = OpTypeFunction %v4float %uint
%uint_3 = OpConstant %uint 3
%_arr_v2float_uint_3 = OpTypeArray %v2float %uint_3
%_ptr_Function__arr_v2float_uint_3 = OpTypePointer Function %_arr_v2float_uint_3
- %33 = OpConstantNull %_arr_v2float_uint_3
+ %28 = OpConstantNull %_arr_v2float_uint_3
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_mat2v2float = OpTypePointer Uniform %mat2v2float
%float_n1 = OpConstant %float -1
- %42 = OpConstantComposite %v2float %float_n1 %float_1
- %43 = OpConstantComposite %v2float %float_1 %float_1
- %44 = OpConstantComposite %v2float %float_n1 %float_n1
- %45 = OpConstantComposite %_arr_v2float_uint_3 %42 %43 %44
+ %float_1 = OpConstant %float 1
+ %37 = OpConstantComposite %v2float %float_n1 %float_1
+ %38 = OpConstantComposite %v2float %float_1 %float_1
+ %39 = OpConstantComposite %v2float %float_n1 %float_n1
+ %40 = OpConstantComposite %_arr_v2float_uint_3 %37 %38 %39
%_ptr_Function_v2float = OpTypePointer Function %v2float
%uint_1 = OpConstant %uint 1
%float_0 = OpConstant %float 0
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol_1 = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_2 %tint_symbol_1
- OpReturn
+ %void = OpTypeVoid
+ %57 = OpTypeFunction %void
+ %main_inner = OpFunction %v4float None %20
+%gl_VertexIndex = OpFunctionParameter %uint
+ %23 = OpLabel
+ %indexable = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %28
+ %31 = OpAccessChain %_ptr_Uniform_mat2v2float %x_20 %uint_0
+ %32 = OpLoad %mat2v2float %31
+ %33 = OpAccessChain %_ptr_Uniform_mat2v2float %x_26 %uint_0
+ %34 = OpLoad %mat2v2float %33
+ OpStore %indexable %40
+ %42 = OpAccessChain %_ptr_Function_v2float %indexable %gl_VertexIndex
+ %43 = OpLoad %v2float %42
+ %44 = OpCompositeExtract %v2float %32 0
+ %45 = OpCompositeExtract %v2float %34 0
+ %46 = OpFAdd %v2float %44 %45
+ %48 = OpCompositeExtract %v2float %32 1
+ %49 = OpCompositeExtract %v2float %34 1
+ %50 = OpFAdd %v2float %48 %49
+ %51 = OpCompositeConstruct %mat2v2float %46 %50
+ %52 = OpMatrixTimesVector %v2float %51 %43
+ %53 = OpCompositeExtract %float %52 0
+ %54 = OpCompositeExtract %float %52 1
+ %56 = OpCompositeConstruct %v4float %53 %54 %float_0 %float_1
+ OpReturnValue %56
OpFunctionEnd
- %main = OpFunction %void None %25
- %27 = OpLabel
- %indexable = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %33
- OpStore %tint_pointsize %float_1
- %36 = OpAccessChain %_ptr_Uniform_mat2v2float %x_20 %uint_0
- %37 = OpLoad %mat2v2float %36
- %38 = OpAccessChain %_ptr_Uniform_mat2v2float %x_26 %uint_0
- %39 = OpLoad %mat2v2float %38
- %40 = OpLoad %uint %tint_symbol
- OpStore %indexable %45
- %47 = OpAccessChain %_ptr_Function_v2float %indexable %40
- %48 = OpLoad %v2float %47
- %49 = OpCompositeExtract %v2float %37 0
- %50 = OpCompositeExtract %v2float %39 0
- %51 = OpFAdd %v2float %49 %50
- %53 = OpCompositeExtract %v2float %37 1
- %54 = OpCompositeExtract %v2float %39 1
- %55 = OpFAdd %v2float %53 %54
- %56 = OpCompositeConstruct %mat2v2float %51 %55
- %57 = OpMatrixTimesVector %v2float %56 %48
- %59 = OpCompositeExtract %float %57 0
- %60 = OpCompositeExtract %float %57 1
- %62 = OpCompositeConstruct %v4float %59 %60 %float_0 %float_1
- %58 = OpFunctionCall %void %tint_symbol_3 %62
+ %main = OpFunction %void None %57
+ %60 = OpLabel
+ %62 = OpLoad %uint %gl_VertexIndex_1
+ %61 = OpFunctionCall %v4float %main_inner %62
+ OpStore %value %61
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/534.wgsl.expected.spvasm b/test/bug/tint/534.wgsl.expected.spvasm
index 9f983e6..0254aab 100644
--- a/test/bug/tint/534.wgsl.expected.spvasm
+++ b/test/bug/tint/534.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 135
+; Bound: 137
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %GlobalInvocationID_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %GlobalInvocationID_1 "GlobalInvocationID_1"
OpName %src "src"
OpName %dst "dst"
OpName %OutputBuf "OutputBuf"
@@ -19,10 +20,10 @@
OpMemberName %Uniforms 2 "isRGB10A2Unorm"
OpMemberName %Uniforms 3 "channelCount"
OpName %uniforms "uniforms"
- OpName %tint_symbol "tint_symbol"
OpName %ConvertToFp16FloatValue "ConvertToFp16FloatValue"
OpName %fp32 "fp32"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %GlobalInvocationID "GlobalInvocationID"
OpName %size "size"
OpName %dstTexCoord "dstTexCoord"
OpName %srcTexCoord "srcTexCoord"
@@ -33,6 +34,8 @@
OpName %dstColorBits "dstColorBits"
OpName %i "i"
OpName %outputIndex "outputIndex"
+ OpName %main "main"
+ OpDecorate %GlobalInvocationID_1 BuiltIn GlobalInvocationId
OpDecorate %src DescriptorSet 0
OpDecorate %src Binding 0
OpDecorate %dst DescriptorSet 0
@@ -50,13 +53,15 @@
OpDecorate %uniforms NonWritable
OpDecorate %uniforms DescriptorSet 0
OpDecorate %uniforms Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
- %float = OpTypeFloat 32
- %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
- %src = OpVariable %_ptr_UniformConstant_3 UniformConstant
- %dst = OpVariable %_ptr_UniformConstant_3 UniformConstant
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%GlobalInvocationID_1 = OpVariable %_ptr_Input_v3uint Input
+ %float = OpTypeFloat 32
+ %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
+ %src = OpVariable %_ptr_UniformConstant_7 UniformConstant
+ %dst = OpVariable %_ptr_UniformConstant_7 UniformConstant
%_runtimearr_uint = OpTypeRuntimeArray %uint
%OutputBuf = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_OutputBuf = OpTypePointer StorageBuffer %OutputBuf
@@ -64,18 +69,15 @@
%Uniforms = OpTypeStruct %uint %uint %uint %uint
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%17 = OpTypeFunction %uint %float
%uint_1 = OpConstant %uint 1
%void = OpTypeVoid
- %22 = OpTypeFunction %void
+ %22 = OpTypeFunction %void %v3uint
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %33 = OpConstantNull %v2int
+ %34 = OpConstantNull %v2int
%v2uint = OpTypeVector %uint 2
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
@@ -95,18 +97,19 @@
%82 = OpConstantNull %uint
%uint_3 = OpConstant %uint 3
%_ptr_Function_float = OpTypePointer Function %float
-%_ptr_Input_uint = OpTypePointer Input %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
+ %132 = OpTypeFunction %void
%ConvertToFp16FloatValue = OpFunction %uint None %17
%fp32 = OpFunctionParameter %float
%20 = OpLabel
OpReturnValue %uint_1
OpFunctionEnd
- %main = OpFunction %void None %22
- %25 = OpLabel
- %size = OpVariable %_ptr_Function_v2int Function %33
-%dstTexCoord = OpVariable %_ptr_Function_v2int Function %33
-%srcTexCoord = OpVariable %_ptr_Function_v2int Function %33
+ %main_inner = OpFunction %void None %22
+%GlobalInvocationID = OpFunctionParameter %v3uint
+ %26 = OpLabel
+ %size = OpVariable %_ptr_Function_v2int Function %34
+%dstTexCoord = OpVariable %_ptr_Function_v2int Function %34
+%srcTexCoord = OpVariable %_ptr_Function_v2int Function %34
%srcColor = OpVariable %_ptr_Function_v4float Function %64
%dstColor = OpVariable %_ptr_Function_v4float Function %64
%success = OpVariable %_ptr_Function_bool Function %72
@@ -114,13 +117,12 @@
%dstColorBits = OpVariable %_ptr_Function_v4uint Function %76
%i = OpVariable %_ptr_Function_uint Function %82
%outputIndex = OpVariable %_ptr_Function_uint Function %82
- %29 = OpLoad %3 %src
- %26 = OpImageQuerySizeLod %v2int %29 %int_0
- OpStore %size %26
- %36 = OpLoad %v3uint %tint_symbol
- %37 = OpVectorShuffle %v2uint %36 %36 0 1
- %34 = OpBitcast %v2int %37
- OpStore %dstTexCoord %34
+ %30 = OpLoad %7 %src
+ %27 = OpImageQuerySizeLod %v2int %30 %int_0
+ OpStore %size %27
+ %37 = OpVectorShuffle %v2uint %GlobalInvocationID %GlobalInvocationID 0 1
+ %35 = OpBitcast %v2int %37
+ OpStore %dstTexCoord %35
%39 = OpLoad %v2int %dstTexCoord
OpStore %srcTexCoord %39
%43 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0
@@ -139,11 +141,11 @@
OpStore %50 %57
OpBranch %47
%47 = OpLabel
- %60 = OpLoad %3 %src
+ %60 = OpLoad %7 %src
%61 = OpLoad %v2int %srcTexCoord
%58 = OpImageFetch %v4float %60 %61 Lod %int_0
OpStore %srcColor %58
- %66 = OpLoad %3 %dst
+ %66 = OpLoad %7 %dst
%67 = OpLoad %v2int %dstTexCoord
%65 = OpImageFetch %v4float %66 %67 Lod %int_0
OpStore %dstColor %65
@@ -196,29 +198,33 @@
OpStore %i %114
OpBranch %83
%84 = OpLabel
- %116 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %117 = OpLoad %uint %116
- %119 = OpAccessChain %_ptr_Function_int %size %uint_0
- %120 = OpLoad %int %119
- %118 = OpBitcast %uint %120
- %121 = OpIMul %uint %117 %118
- %122 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %123 = OpLoad %uint %122
- %124 = OpIAdd %uint %121 %123
- OpStore %outputIndex %124
- %126 = OpLoad %bool %success
- OpSelectionMerge %127 None
- OpBranchConditional %126 %128 %129
- %128 = OpLabel
+ %115 = OpCompositeExtract %uint %GlobalInvocationID 1
+ %117 = OpAccessChain %_ptr_Function_int %size %uint_0
+ %118 = OpLoad %int %117
+ %116 = OpBitcast %uint %118
+ %119 = OpIMul %uint %115 %116
+ %120 = OpCompositeExtract %uint %GlobalInvocationID 0
+ %121 = OpIAdd %uint %119 %120
+ OpStore %outputIndex %121
+ %123 = OpLoad %bool %success
+ OpSelectionMerge %124 None
+ OpBranchConditional %123 %125 %126
+ %125 = OpLabel
+ %127 = OpLoad %uint %outputIndex
+ %129 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %127
+ OpStore %129 %uint_1
+ OpBranch %124
+ %126 = OpLabel
%130 = OpLoad %uint %outputIndex
- %132 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %130
- OpStore %132 %uint_1
- OpBranch %127
- %129 = OpLabel
- %133 = OpLoad %uint %outputIndex
- %134 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %133
- OpStore %134 %uint_0
- OpBranch %127
- %127 = OpLabel
+ %131 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %130
+ OpStore %131 %uint_0
+ OpBranch %124
+ %124 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %132
+ %134 = OpLabel
+ %136 = OpLoad %v3uint %GlobalInvocationID_1
+ %135 = OpFunctionCall %void %main_inner %136
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/744.wgsl.expected.spvasm b/test/bug/tint/744.wgsl.expected.spvasm
index 6a6fdc5..33d57e0 100644
--- a/test/bug/tint/744.wgsl.expected.spvasm
+++ b/test/bug/tint/744.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %global_id_1
OpExecutionMode %main LocalSize 2 2 1
+ OpName %global_id_1 "global_id_1"
OpName %Matrix "Matrix"
OpMemberName %Matrix 0 "numbers"
OpName %firstMatrix "firstMatrix"
@@ -17,10 +18,12 @@
OpMemberName %Uniforms 1 "bShape"
OpMemberName %Uniforms 2 "outShape"
OpName %uniforms "uniforms"
- OpName %tint_symbol "tint_symbol"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %global_id "global_id"
OpName %result "result"
OpName %i "i"
+ OpName %main "main"
+ OpDecorate %global_id_1 BuiltIn GlobalInvocationId
OpDecorate %Matrix Block
OpMemberDecorate %Matrix 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -40,8 +43,10 @@
OpDecorate %uniforms NonWritable
OpDecorate %uniforms DescriptorSet 0
OpDecorate %uniforms Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%global_id_1 = OpVariable %_ptr_Input_v3uint Input
%_runtimearr_uint = OpTypeRuntimeArray %uint
%Matrix = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_Matrix = OpTypePointer StorageBuffer %Matrix
@@ -52,77 +57,79 @@
%Uniforms = OpTypeStruct %v2uint %v2uint %v2uint
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %15 = OpTypeFunction %void
- %uint_1 = OpConstant %uint 1
-%_ptr_Input_uint = OpTypePointer Input %uint
+ %15 = OpTypeFunction %void %v3uint
%uint_0 = OpConstant %uint 0
+ %uint_1 = OpConstant %uint 1
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
%uint_2 = OpConstant %uint 2
%_ptr_Function_uint = OpTypePointer Function %uint
- %35 = OpConstantNull %uint
+ %33 = OpConstantNull %uint
%bool = OpTypeBool
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
- %main = OpFunction %void None %15
- %18 = OpLabel
- %result = OpVariable %_ptr_Function_uint Function %35
- %i = OpVariable %_ptr_Function_uint Function %35
- %21 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %22 = OpLoad %uint %21
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %25 = OpLoad %uint %24
- %26 = OpCompositeConstruct %v2uint %22 %25
- %28 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0 %uint_1
- %29 = OpLoad %uint %28
- %31 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_2 %uint_1
- %32 = OpLoad %uint %31
+ %69 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %15
+ %global_id = OpFunctionParameter %v3uint
+ %19 = OpLabel
+ %result = OpVariable %_ptr_Function_uint Function %33
+ %i = OpVariable %_ptr_Function_uint Function %33
+ %20 = OpCompositeExtract %uint %global_id 1
+ %21 = OpCompositeExtract %uint %global_id 0
+ %22 = OpCompositeConstruct %v2uint %20 %21
+ %26 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0 %uint_1
+ %27 = OpLoad %uint %26
+ %29 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_2 %uint_1
+ %30 = OpLoad %uint %29
OpStore %result %uint_0
OpStore %i %uint_0
+ OpBranch %35
+ %35 = OpLabel
+ OpLoopMerge %36 %37 None
+ OpBranch %38
+ %38 = OpLabel
+ %40 = OpLoad %uint %i
+ %41 = OpULessThan %bool %40 %27
+ %39 = OpLogicalNot %bool %41
+ OpSelectionMerge %43 None
+ OpBranchConditional %39 %44 %43
+ %44 = OpLabel
+ OpBranch %36
+ %43 = OpLabel
+ %45 = OpLoad %uint %i
+ %46 = OpCompositeExtract %uint %22 0
+ %47 = OpIMul %uint %46 %27
+ %48 = OpIAdd %uint %45 %47
+ %49 = OpCompositeExtract %uint %22 1
+ %50 = OpLoad %uint %i
+ %51 = OpIMul %uint %50 %30
+ %52 = OpIAdd %uint %49 %51
+ %53 = OpLoad %uint %result
+ %55 = OpAccessChain %_ptr_StorageBuffer_uint %firstMatrix %uint_0 %48
+ %56 = OpLoad %uint %55
+ %57 = OpAccessChain %_ptr_StorageBuffer_uint %secondMatrix %uint_0 %52
+ %58 = OpLoad %uint %57
+ %59 = OpIMul %uint %56 %58
+ %60 = OpIAdd %uint %53 %59
+ OpStore %result %60
OpBranch %37
%37 = OpLabel
- OpLoopMerge %38 %39 None
- OpBranch %40
- %40 = OpLabel
- %42 = OpLoad %uint %i
- %43 = OpULessThan %bool %42 %29
- %41 = OpLogicalNot %bool %43
- OpSelectionMerge %45 None
- OpBranchConditional %41 %46 %45
- %46 = OpLabel
- OpBranch %38
- %45 = OpLabel
- %47 = OpLoad %uint %i
- %48 = OpCompositeExtract %uint %26 0
- %49 = OpIMul %uint %48 %29
- %50 = OpIAdd %uint %47 %49
- %51 = OpCompositeExtract %uint %26 1
- %52 = OpLoad %uint %i
- %53 = OpIMul %uint %52 %32
- %54 = OpIAdd %uint %51 %53
- %55 = OpLoad %uint %result
- %57 = OpAccessChain %_ptr_StorageBuffer_uint %firstMatrix %uint_0 %50
- %58 = OpLoad %uint %57
- %59 = OpAccessChain %_ptr_StorageBuffer_uint %secondMatrix %uint_0 %54
- %60 = OpLoad %uint %59
- %61 = OpIMul %uint %58 %60
- %62 = OpIAdd %uint %55 %61
- OpStore %result %62
- OpBranch %39
- %39 = OpLabel
- %63 = OpLoad %uint %i
- %64 = OpIAdd %uint %63 %uint_1
- OpStore %i %64
- OpBranch %37
- %38 = OpLabel
- %65 = OpCompositeExtract %uint %26 1
- %66 = OpCompositeExtract %uint %26 0
- %67 = OpIMul %uint %66 %32
- %68 = OpIAdd %uint %65 %67
- %69 = OpAccessChain %_ptr_StorageBuffer_uint %resultMatrix %uint_0 %68
- %70 = OpLoad %uint %result
- OpStore %69 %70
+ %61 = OpLoad %uint %i
+ %62 = OpIAdd %uint %61 %uint_1
+ OpStore %i %62
+ OpBranch %35
+ %36 = OpLabel
+ %63 = OpCompositeExtract %uint %22 1
+ %64 = OpCompositeExtract %uint %22 0
+ %65 = OpIMul %uint %64 %30
+ %66 = OpIAdd %uint %63 %65
+ %67 = OpAccessChain %_ptr_StorageBuffer_uint %resultMatrix %uint_0 %66
+ %68 = OpLoad %uint %result
+ OpStore %67 %68
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %69
+ %71 = OpLabel
+ %73 = OpLoad %v3uint %global_id_1
+ %72 = OpFunctionCall %void %main_inner %73
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/749.spvasm.expected.spvasm b/test/bug/tint/749.spvasm.expected.spvasm
index 2dc95c7..96f878d 100644
--- a/test/bug/tint/749.spvasm.expected.spvasm
+++ b/test/bug/tint/749.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%1694 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_188 "x_188"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -48,9 +48,11 @@
OpName %uv "uv"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -58,31 +60,29 @@
OpDecorate %x_188 NonWritable
OpDecorate %x_188 DescriptorSet 0
OpDecorate %x_188 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_188 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -129,7 +129,7 @@
%int_8 = OpConstant %int 8
%uint_9 = OpConstant %uint 9
%main_out = OpTypeStruct %v4float
- %1820 = OpTypeFunction %void %main_out
+ %1820 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -2624,20 +2624,20 @@
OpStore %1819 %1817
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %1820
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %1820
+%gl_FragCoord_param = OpFunctionParameter %v4float
%1824 = OpLabel
- %1825 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %1825
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %1825 = OpFunctionCall %void %main_1
+ %1826 = OpLoad %v4float %x_GLF_color
+ %1827 = OpCompositeConstruct %main_out %1826
+ OpReturnValue %1827
OpFunctionEnd
%main = OpFunction %void None %419
- %1827 = OpLabel
- %1828 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %1828
- %1829 = OpFunctionCall %void %main_1
- %1831 = OpLoad %v4float %x_GLF_color
- %1832 = OpCompositeConstruct %main_out %1831
- %1830 = OpFunctionCall %void %tint_symbol_3 %1832
+ %1829 = OpLabel
+ %1831 = OpLoad %v4float %gl_FragCoord_param_1
+ %1830 = OpFunctionCall %main_out %main_inner %1831
+ %1832 = OpCompositeExtract %v4float %1830 0
+ OpStore %x_GLF_color_1_1 %1832
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/757.wgsl.expected.spvasm b/test/bug/tint/757.wgsl.expected.spvasm
index 1802700..d19f643 100644
--- a/test/bug/tint/757.wgsl.expected.spvasm
+++ b/test/bug/tint/757.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %GlobalInvocationID_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %GlobalInvocationID_1 "GlobalInvocationID_1"
OpName %Constants "Constants"
OpMemberName %Constants 0 "level"
OpName %constants "constants"
@@ -14,11 +15,13 @@
OpName %Result "Result"
OpMemberName %Result 0 "values"
OpName %result "result"
- OpName %tint_symbol "tint_symbol"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %GlobalInvocationID "GlobalInvocationID"
OpName %flatIndex "flatIndex"
OpName %texel "texel"
OpName %i "i"
+ OpName %main "main"
+ OpDecorate %GlobalInvocationID_1 BuiltIn GlobalInvocationId
OpDecorate %Constants Block
OpMemberDecorate %Constants 0 Offset 0
OpDecorate %constants NonWritable
@@ -31,97 +34,99 @@
OpDecorate %_runtimearr_float ArrayStride 4
OpDecorate %result DescriptorSet 0
OpDecorate %result Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
+ %uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%GlobalInvocationID_1 = OpVariable %_ptr_Input_v3uint Input
%int = OpTypeInt 32 1
%Constants = OpTypeStruct %int
%_ptr_Uniform_Constants = OpTypePointer Uniform %Constants
%constants = OpVariable %_ptr_Uniform_Constants Uniform
%float = OpTypeFloat 32
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %myTexture = OpVariable %_ptr_UniformConstant_7 UniformConstant
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %myTexture = OpVariable %_ptr_UniformConstant_11 UniformConstant
%_runtimearr_float = OpTypeRuntimeArray %float
%Result = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_Result = OpTypePointer StorageBuffer %Result
%result = OpVariable %_ptr_StorageBuffer_Result StorageBuffer
- %uint = OpTypeInt 32 0
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %17 = OpTypeFunction %void
+ %17 = OpTypeFunction %void %v3uint
%uint_2 = OpConstant %uint 2
-%_ptr_Input_uint = OpTypePointer Input %uint
- %uint_1 = OpConstant %uint 1
- %uint_0 = OpConstant %uint 0
%_ptr_Function_uint = OpTypePointer Function %uint
- %38 = OpConstantNull %uint
+ %33 = OpConstantNull %uint
+ %uint_1 = OpConstant %uint 1
%v4float = OpTypeVector %float 4
%v3int = OpTypeVector %int 3
%v2int = OpTypeVector %int 2
%v2uint = OpTypeVector %uint 2
%int_0 = OpConstant %int 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %56 = OpConstantNull %v4float
+ %51 = OpConstantNull %v4float
+ %uint_0 = OpConstant %uint 0
%bool = OpTypeBool
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%_ptr_Function_float = OpTypePointer Function %float
- %main = OpFunction %void None %17
- %20 = OpLabel
- %flatIndex = OpVariable %_ptr_Function_uint Function %38
- %texel = OpVariable %_ptr_Function_v4float Function %56
- %i = OpVariable %_ptr_Function_uint Function %38
- %22 = OpIMul %uint %uint_2 %uint_2
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_2
- %25 = OpLoad %uint %24
- %26 = OpIMul %uint %22 %25
- %28 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %29 = OpLoad %uint %28
- %30 = OpIMul %uint %uint_2 %29
- %31 = OpIAdd %uint %26 %30
- %33 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %34 = OpLoad %uint %33
- %35 = OpIAdd %uint %31 %34
- OpStore %flatIndex %35
- %39 = OpLoad %uint %flatIndex
- %40 = OpIMul %uint %39 %uint_1
- OpStore %flatIndex %40
- %43 = OpLoad %7 %myTexture
- %48 = OpLoad %v3uint %tint_symbol
- %49 = OpVectorShuffle %v2uint %48 %48 0 1
- %45 = OpBitcast %v2int %49
- %50 = OpCompositeExtract %int %45 0
- %51 = OpCompositeExtract %int %45 1
- %53 = OpCompositeConstruct %v3int %50 %51 %int_0
- %41 = OpImageFetch %v4float %43 %53 Lod %int_0
- OpStore %texel %41
+ %74 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %17
+%GlobalInvocationID = OpFunctionParameter %v3uint
+ %21 = OpLabel
+ %flatIndex = OpVariable %_ptr_Function_uint Function %33
+ %texel = OpVariable %_ptr_Function_v4float Function %51
+ %i = OpVariable %_ptr_Function_uint Function %33
+ %23 = OpIMul %uint %uint_2 %uint_2
+ %24 = OpCompositeExtract %uint %GlobalInvocationID 2
+ %25 = OpIMul %uint %23 %24
+ %26 = OpCompositeExtract %uint %GlobalInvocationID 1
+ %27 = OpIMul %uint %uint_2 %26
+ %28 = OpIAdd %uint %25 %27
+ %29 = OpCompositeExtract %uint %GlobalInvocationID 0
+ %30 = OpIAdd %uint %28 %29
+ OpStore %flatIndex %30
+ %34 = OpLoad %uint %flatIndex
+ %36 = OpIMul %uint %34 %uint_1
+ OpStore %flatIndex %36
+ %39 = OpLoad %11 %myTexture
+ %44 = OpVectorShuffle %v2uint %GlobalInvocationID %GlobalInvocationID 0 1
+ %41 = OpBitcast %v2int %44
+ %45 = OpCompositeExtract %int %41 0
+ %46 = OpCompositeExtract %int %41 1
+ %48 = OpCompositeConstruct %v3int %45 %46 %int_0
+ %37 = OpImageFetch %v4float %39 %48 Lod %int_0
+ OpStore %texel %37
OpStore %i %uint_0
- OpBranch %58
- %58 = OpLabel
- OpLoopMerge %59 %60 None
- OpBranch %61
- %61 = OpLabel
- %63 = OpLoad %uint %i
- %64 = OpULessThan %bool %63 %uint_1
- %62 = OpLogicalNot %bool %64
- OpSelectionMerge %66 None
- OpBranchConditional %62 %67 %66
- %67 = OpLabel
- OpBranch %59
- %66 = OpLabel
- %68 = OpLoad %uint %flatIndex
- %69 = OpLoad %uint %i
- %70 = OpIAdd %uint %68 %69
- %72 = OpAccessChain %_ptr_StorageBuffer_float %result %uint_0 %70
- %74 = OpAccessChain %_ptr_Function_float %texel %uint_0
- %75 = OpLoad %float %74
- OpStore %72 %75
- OpBranch %60
- %60 = OpLabel
- %76 = OpLoad %uint %i
- %77 = OpIAdd %uint %76 %uint_1
- OpStore %i %77
- OpBranch %58
- %59 = OpLabel
+ OpBranch %54
+ %54 = OpLabel
+ OpLoopMerge %55 %56 None
+ OpBranch %57
+ %57 = OpLabel
+ %59 = OpLoad %uint %i
+ %60 = OpULessThan %bool %59 %uint_1
+ %58 = OpLogicalNot %bool %60
+ OpSelectionMerge %62 None
+ OpBranchConditional %58 %63 %62
+ %63 = OpLabel
+ OpBranch %55
+ %62 = OpLabel
+ %64 = OpLoad %uint %flatIndex
+ %65 = OpLoad %uint %i
+ %66 = OpIAdd %uint %64 %65
+ %68 = OpAccessChain %_ptr_StorageBuffer_float %result %uint_0 %66
+ %70 = OpAccessChain %_ptr_Function_float %texel %uint_0
+ %71 = OpLoad %float %70
+ OpStore %68 %71
+ OpBranch %56
+ %56 = OpLabel
+ %72 = OpLoad %uint %i
+ %73 = OpIAdd %uint %72 %uint_1
+ OpStore %i %73
+ OpBranch %54
+ %55 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %74
+ %76 = OpLabel
+ %78 = OpLoad %v3uint %GlobalInvocationID_1
+ %77 = OpFunctionCall %void %main_inner %78
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/824.wgsl.expected.spvasm b/test/bug/tint/824.wgsl.expected.spvasm
index feb9f7c..dc41468 100644
--- a/test/bug/tint/824.wgsl.expected.spvasm
+++ b/test/bug/tint/824.wgsl.expected.spvasm
@@ -1,111 +1,113 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_3 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpEntryPoint Vertex %main "main" %VertexIndex_1 %InstanceIndex_1 %Position_1 %color_1 %vertex_point_size
+ OpName %VertexIndex_1 "VertexIndex_1"
+ OpName %InstanceIndex_1 "InstanceIndex_1"
+ OpName %Position_1 "Position_1"
+ OpName %color_1 "color_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Output "Output"
OpMemberName %Output 0 "Position"
OpMemberName %Output 1 "color"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %VertexIndex "VertexIndex"
+ OpName %InstanceIndex "InstanceIndex"
OpName %zv "zv"
OpName %output "output"
OpName %colors "colors"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_1 BuiltIn InstanceIndex
- OpDecorate %tint_symbol_3 BuiltIn Position
- OpDecorate %tint_symbol_4 Location 0
+ OpName %main "main"
+ OpDecorate %VertexIndex_1 BuiltIn VertexIndex
+ OpDecorate %InstanceIndex_1 BuiltIn InstanceIndex
+ OpDecorate %Position_1 BuiltIn Position
+ OpDecorate %color_1 Location 0
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Output 0 Offset 0
OpMemberDecorate %Output 1 Offset 16
OpDecorate %_arr_v2float_uint_4 ArrayStride 8
OpDecorate %_arr_v4float_uint_4 ArrayStride 16
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+%VertexIndex_1 = OpVariable %_ptr_Input_uint Input
+%InstanceIndex_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %12
- %void = OpTypeVoid
+ %9 = OpConstantNull %v4float
+ %Position_1 = OpVariable %_ptr_Output_v4float Output %9
+ %color_1 = OpVariable %_ptr_Output_v4float Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %13 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %13
%Output = OpTypeStruct %v4float %v4float
- %14 = OpTypeFunction %void %Output
- %22 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %14 = OpTypeFunction %Output %uint %uint
%v2float = OpTypeVector %float 2
%uint_4 = OpConstant %uint 4
%_arr_v2float_uint_4 = OpTypeArray %v2float %uint_4
%float_0_200000003 = OpConstant %float 0.200000003
- %30 = OpConstantComposite %v2float %float_0_200000003 %float_0_200000003
+ %24 = OpConstantComposite %v2float %float_0_200000003 %float_0_200000003
%float_0_300000012 = OpConstant %float 0.300000012
- %32 = OpConstantComposite %v2float %float_0_300000012 %float_0_300000012
+ %26 = OpConstantComposite %v2float %float_0_300000012 %float_0_300000012
%float_n0_100000001 = OpConstant %float -0.100000001
- %34 = OpConstantComposite %v2float %float_n0_100000001 %float_n0_100000001
+ %28 = OpConstantComposite %v2float %float_n0_100000001 %float_n0_100000001
%float_1_10000002 = OpConstant %float 1.10000002
- %36 = OpConstantComposite %v2float %float_1_10000002 %float_1_10000002
- %37 = OpConstantComposite %_arr_v2float_uint_4 %30 %32 %34 %36
+ %30 = OpConstantComposite %v2float %float_1_10000002 %float_1_10000002
+ %31 = OpConstantComposite %_arr_v2float_uint_4 %24 %26 %28 %30
%_ptr_Function__arr_v2float_uint_4 = OpTypePointer Function %_arr_v2float_uint_4
- %40 = OpConstantNull %_arr_v2float_uint_4
+ %34 = OpConstantNull %_arr_v2float_uint_4
%uint_0 = OpConstant %uint 0
%_ptr_Function_float = OpTypePointer Function %float
%_ptr_Function_Output = OpTypePointer Function %Output
- %48 = OpConstantNull %Output
+ %41 = OpConstantNull %Output
%_ptr_Function_v4float = OpTypePointer Function %v4float
%float_0_5 = OpConstant %float 0.5
+ %float_1 = OpConstant %float 1
%_arr_v4float_uint_4 = OpTypeArray %v4float %uint_4
%float_0 = OpConstant %float 0
- %55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
- %56 = OpConstantComposite %v4float %float_0 %float_1 %float_0 %float_1
- %57 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
- %58 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
- %59 = OpConstantComposite %_arr_v4float_uint_4 %55 %56 %57 %58
+ %49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
+ %50 = OpConstantComposite %v4float %float_0 %float_1 %float_0 %float_1
+ %51 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
+ %52 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
+ %53 = OpConstantComposite %_arr_v4float_uint_4 %49 %50 %51 %52
%_ptr_Function__arr_v4float_uint_4 = OpTypePointer Function %_arr_v4float_uint_4
- %62 = OpConstantNull %_arr_v4float_uint_4
+ %56 = OpConstantNull %_arr_v4float_uint_4
%uint_1 = OpConstant %uint 1
-%tint_symbol_5 = OpFunction %void None %14
-%tint_symbol_2 = OpFunctionParameter %Output
+ %void = OpTypeVoid
+ %62 = OpTypeFunction %void
+ %main_inner = OpFunction %Output None %14
+%VertexIndex = OpFunctionParameter %uint
+%InstanceIndex = OpFunctionParameter %uint
%19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol_2 0
- OpStore %tint_symbol_3 %20
- %21 = OpCompositeExtract %v4float %tint_symbol_2 1
- OpStore %tint_symbol_4 %21
- OpReturn
+ %zv = OpVariable %_ptr_Function__arr_v2float_uint_4 Function %34
+ %output = OpVariable %_ptr_Function_Output Function %41
+ %colors = OpVariable %_ptr_Function__arr_v4float_uint_4 Function %56
+ OpStore %zv %31
+ %37 = OpAccessChain %_ptr_Function_float %zv %InstanceIndex %uint_0
+ %38 = OpLoad %float %37
+ %43 = OpAccessChain %_ptr_Function_v4float %output %uint_0
+ %46 = OpCompositeConstruct %v4float %float_0_5 %float_0_5 %38 %float_1
+ OpStore %43 %46
+ OpStore %colors %53
+ %58 = OpAccessChain %_ptr_Function_v4float %output %uint_1
+ %59 = OpAccessChain %_ptr_Function_v4float %colors %InstanceIndex
+ %60 = OpLoad %v4float %59
+ OpStore %58 %60
+ %61 = OpLoad %Output %output
+ OpReturnValue %61
OpFunctionEnd
- %main = OpFunction %void None %22
- %24 = OpLabel
- %zv = OpVariable %_ptr_Function__arr_v2float_uint_4 Function %40
- %output = OpVariable %_ptr_Function_Output Function %48
- %colors = OpVariable %_ptr_Function__arr_v4float_uint_4 Function %62
- OpStore %tint_pointsize %float_1
- OpStore %zv %37
- %41 = OpLoad %uint %tint_symbol_1
- %44 = OpAccessChain %_ptr_Function_float %zv %41 %uint_0
- %45 = OpLoad %float %44
- %50 = OpAccessChain %_ptr_Function_v4float %output %uint_0
- %52 = OpCompositeConstruct %v4float %float_0_5 %float_0_5 %45 %float_1
- OpStore %50 %52
- OpStore %colors %59
- %64 = OpAccessChain %_ptr_Function_v4float %output %uint_1
- %65 = OpLoad %uint %tint_symbol_1
- %66 = OpAccessChain %_ptr_Function_v4float %colors %65
- %67 = OpLoad %v4float %66
- OpStore %64 %67
- %69 = OpLoad %Output %output
- %68 = OpFunctionCall %void %tint_symbol_5 %69
+ %main = OpFunction %void None %62
+ %65 = OpLabel
+ %67 = OpLoad %uint %VertexIndex_1
+ %68 = OpLoad %uint %InstanceIndex_1
+ %66 = OpFunctionCall %Output %main_inner %67 %68
+ %69 = OpCompositeExtract %v4float %66 0
+ OpStore %Position_1 %69
+ %70 = OpCompositeExtract %v4float %66 1
+ OpStore %color_1 %70
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/827.wgsl.expected.spvasm b/test/bug/tint/827.wgsl.expected.spvasm
index 4bc890f..d2f383b 100644
--- a/test/bug/tint/827.wgsl.expected.spvasm
+++ b/test/bug/tint/827.wgsl.expected.spvasm
@@ -5,15 +5,18 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %GlobalInvocationId_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %GlobalInvocationId_1 "GlobalInvocationId_1"
OpName %width "width"
OpName %tex "tex"
OpName %Result "Result"
OpMemberName %Result 0 "values"
OpName %result "result"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %GlobalInvocationId "GlobalInvocationId"
OpName %main "main"
+ OpDecorate %GlobalInvocationId_1 BuiltIn GlobalInvocationId
OpDecorate %tex DescriptorSet 0
OpDecorate %tex Binding 0
OpDecorate %Result Block
@@ -21,49 +24,50 @@
OpDecorate %_runtimearr_float ArrayStride 4
OpDecorate %result DescriptorSet 0
OpDecorate %result Binding 1
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%GlobalInvocationId_1 = OpVariable %_ptr_Input_v3uint Input
%width = OpConstant %uint 128
%float = OpTypeFloat 32
- %5 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_5 = OpTypePointer UniformConstant %5
- %tex = OpVariable %_ptr_UniformConstant_5 UniformConstant
+ %8 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
+ %tex = OpVariable %_ptr_UniformConstant_8 UniformConstant
%_runtimearr_float = OpTypeRuntimeArray %float
%Result = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_Result = OpTypePointer StorageBuffer %Result
%result = OpVariable %_ptr_StorageBuffer_Result StorageBuffer
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %14 = OpTypeFunction %void
+ %14 = OpTypeFunction %void %v3uint
%uint_0 = OpConstant %uint 0
- %uint_1 = OpConstant %uint 1
-%_ptr_Input_uint = OpTypePointer Input %uint
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%v4float = OpTypeVector %float 4
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
- %main = OpFunction %void None %14
- %17 = OpLabel
- %21 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %22 = OpLoad %uint %21
- %23 = OpIMul %uint %22 %width
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %25 = OpLoad %uint %24
- %26 = OpIAdd %uint %23 %25
- %28 = OpAccessChain %_ptr_StorageBuffer_float %result %uint_0 %26
- %32 = OpLoad %5 %tex
- %36 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %37 = OpLoad %uint %36
- %35 = OpBitcast %int %37
- %39 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %40 = OpLoad %uint %39
- %38 = OpBitcast %int %40
- %41 = OpCompositeConstruct %v2int %35 %38
- %30 = OpImageFetch %v4float %32 %41 Lod %int_0
- %29 = OpCompositeExtract %float %30 0
- OpStore %28 %29
+ %38 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %14
+%GlobalInvocationId = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %20 = OpCompositeExtract %uint %GlobalInvocationId 1
+ %21 = OpIMul %uint %20 %width
+ %22 = OpCompositeExtract %uint %GlobalInvocationId 0
+ %23 = OpIAdd %uint %21 %22
+ %25 = OpAccessChain %_ptr_StorageBuffer_float %result %uint_0 %23
+ %29 = OpLoad %8 %tex
+ %33 = OpCompositeExtract %uint %GlobalInvocationId 0
+ %32 = OpBitcast %int %33
+ %35 = OpCompositeExtract %uint %GlobalInvocationId 1
+ %34 = OpBitcast %int %35
+ %36 = OpCompositeConstruct %v2int %32 %34
+ %27 = OpImageFetch %v4float %29 %36 Lod %int_0
+ %26 = OpCompositeExtract %float %27 0
+ OpStore %25 %26
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %38
+ %40 = OpLabel
+ %42 = OpLoad %v3uint %GlobalInvocationId_1
+ %41 = OpFunctionCall %void %main_inner %42
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/913.wgsl.expected.spvasm b/test/bug/tint/913.wgsl.expected.spvasm
index 0a66bbb..f34ef94 100644
--- a/test/bug/tint/913.wgsl.expected.spvasm
+++ b/test/bug/tint/913.wgsl.expected.spvasm
@@ -1,14 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 191
+; Bound: 193
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %GlobalInvocationID_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %GlobalInvocationID_1 "GlobalInvocationID_1"
OpName %src "src"
OpName %dst "dst"
OpName %OutputBuf "OutputBuf"
@@ -21,13 +22,15 @@
OpMemberName %Uniforms 3 "dstCopyOrigin"
OpMemberName %Uniforms 4 "copySize"
OpName %uniforms "uniforms"
- OpName %tint_symbol "tint_symbol"
OpName %aboutEqual "aboutEqual"
OpName %value "value"
OpName %expect "expect"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %GlobalInvocationID "GlobalInvocationID"
OpName %success "success"
OpName %srcTexCoord "srcTexCoord"
+ OpName %main "main"
+ OpDecorate %GlobalInvocationID_1 BuiltIn GlobalInvocationId
OpDecorate %src DescriptorSet 0
OpDecorate %src Binding 0
OpDecorate %dst DescriptorSet 0
@@ -46,13 +49,15 @@
OpDecorate %uniforms NonWritable
OpDecorate %uniforms DescriptorSet 0
OpDecorate %uniforms Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
- %float = OpTypeFloat 32
- %3 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
- %src = OpVariable %_ptr_UniformConstant_3 UniformConstant
- %dst = OpVariable %_ptr_UniformConstant_3 UniformConstant
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%GlobalInvocationID_1 = OpVariable %_ptr_Input_v3uint Input
+ %float = OpTypeFloat 32
+ %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
+ %src = OpVariable %_ptr_UniformConstant_7 UniformConstant
+ %dst = OpVariable %_ptr_UniformConstant_7 UniformConstant
%_runtimearr_uint = OpTypeRuntimeArray %uint
%OutputBuf = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_OutputBuf = OpTypePointer StorageBuffer %OutputBuf
@@ -61,14 +66,11 @@
%Uniforms = OpTypeStruct %uint %uint %v2uint %v2uint %v2uint
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%bool = OpTypeBool
%18 = OpTypeFunction %bool %float %float
%float_0_00100000005 = OpConstant %float 0.00100000005
%void = OpTypeVoid
- %29 = OpTypeFunction %void
+ %29 = OpTypeFunction %void %v3uint
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
@@ -90,8 +92,8 @@
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
%110 = OpConstantNull %v2uint
%_ptr_Function_uint = OpTypePointer Function %uint
-%_ptr_Input_uint = OpTypePointer Input %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
+ %188 = OpTypeFunction %void
%aboutEqual = OpFunction %bool None %18
%value = OpFunctionParameter %float
%expect = OpFunctionParameter %float
@@ -101,16 +103,16 @@
%28 = OpFOrdLessThan %bool %24 %float_0_00100000005
OpReturnValue %28
OpFunctionEnd
- %main = OpFunction %void None %29
- %32 = OpLabel
+ %main_inner = OpFunction %void None %29
+%GlobalInvocationID = OpFunctionParameter %v3uint
+ %33 = OpLabel
%success = OpVariable %_ptr_Function_bool Function %50
%srcTexCoord = OpVariable %_ptr_Function_v2uint Function %110
- %36 = OpLoad %3 %src
- %33 = OpImageQuerySizeLod %v2int %36 %int_0
- %39 = OpLoad %3 %dst
- %38 = OpImageQuerySizeLod %v2int %39 %int_0
- %41 = OpLoad %v3uint %tint_symbol
- %42 = OpVectorShuffle %v2uint %41 %41 0 1
+ %37 = OpLoad %7 %src
+ %34 = OpImageQuerySizeLod %v2int %37 %int_0
+ %40 = OpLoad %7 %dst
+ %39 = OpImageQuerySizeLod %v2int %40 %int_0
+ %42 = OpVectorShuffle %v2uint %GlobalInvocationID %GlobalInvocationID 0 1
OpStore %success %true
%51 = OpCompositeExtract %uint %42 0
%55 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_3 %uint_0
@@ -125,7 +127,7 @@
%64 = OpULessThan %bool %60 %63
OpBranch %58
%58 = OpLabel
- %65 = OpPhi %bool %57 %32 %64 %59
+ %65 = OpPhi %bool %57 %33 %64 %59
OpSelectionMerge %66 None
OpBranchConditional %65 %66 %67
%67 = OpLabel
@@ -159,7 +161,7 @@
OpSelectionMerge %91 None
OpBranchConditional %90 %92 %91
%92 = OpLabel
- %95 = OpLoad %3 %dst
+ %95 = OpLoad %7 %dst
%96 = OpBitcast %v2int %42
%94 = OpImageFetch %v4float %95 %96 Lod %int_0
%97 = OpFOrdEqual %v4bool %94 %46
@@ -184,7 +186,7 @@
OpBranchConditional %113 %115 %114
%115 = OpLabel
%117 = OpAccessChain %_ptr_Function_uint %srcTexCoord %uint_1
- %119 = OpCompositeExtract %int %33 1
+ %119 = OpCompositeExtract %int %34 1
%118 = OpBitcast %uint %119
%120 = OpAccessChain %_ptr_Function_uint %srcTexCoord %uint_1
%121 = OpLoad %uint %120
@@ -193,11 +195,11 @@
OpStore %117 %123
OpBranch %114
%114 = OpLabel
- %125 = OpLoad %3 %src
+ %125 = OpLoad %7 %src
%127 = OpLoad %v2uint %srcTexCoord
%126 = OpBitcast %v2int %127
%124 = OpImageFetch %v4float %125 %126 Lod %int_0
- %129 = OpLoad %3 %dst
+ %129 = OpLoad %7 %dst
%130 = OpBitcast %v2int %42
%128 = OpImageFetch %v4float %129 %130 Lod %int_0
%131 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_1
@@ -270,25 +272,29 @@
%134 = OpLabel
OpBranch %87
%87 = OpLabel
- %176 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %177 = OpLoad %uint %176
- %179 = OpCompositeExtract %int %38 0
- %178 = OpBitcast %uint %179
- %180 = OpIMul %uint %177 %178
- %181 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %182 = OpLoad %uint %181
- %183 = OpIAdd %uint %180 %182
- %184 = OpLoad %bool %success
- OpSelectionMerge %185 None
- OpBranchConditional %184 %186 %187
- %186 = OpLabel
- %189 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %183
- OpStore %189 %uint_1
- OpBranch %185
- %187 = OpLabel
- %190 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %183
- OpStore %190 %uint_0
- OpBranch %185
- %185 = OpLabel
+ %175 = OpCompositeExtract %uint %GlobalInvocationID 1
+ %177 = OpCompositeExtract %int %39 0
+ %176 = OpBitcast %uint %177
+ %178 = OpIMul %uint %175 %176
+ %179 = OpCompositeExtract %uint %GlobalInvocationID 0
+ %180 = OpIAdd %uint %178 %179
+ %181 = OpLoad %bool %success
+ OpSelectionMerge %182 None
+ OpBranchConditional %181 %183 %184
+ %183 = OpLabel
+ %186 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %180
+ OpStore %186 %uint_1
+ OpBranch %182
+ %184 = OpLabel
+ %187 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %180
+ OpStore %187 %uint_0
+ OpBranch %182
+ %182 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %188
+ %190 = OpLabel
+ %192 = OpLoad %v3uint %GlobalInvocationID_1
+ %191 = OpFunctionCall %void %main_inner %192
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/914.wgsl.expected.spvasm b/test/bug/tint/914.wgsl.expected.spvasm
index a2c1018..5c4ef44 100644
--- a/test/bug/tint/914.wgsl.expected.spvasm
+++ b/test/bug/tint/914.wgsl.expected.spvasm
@@ -1,12 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 372
+; Bound: 375
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol_2 %tint_symbol %tint_symbol_1
+ OpEntryPoint GLCompute %main "main" %local_id_1 %global_id_1 %local_invocation_index_1
OpExecutionMode %main LocalSize 16 16 1
+ OpName %local_id_1 "local_id_1"
+ OpName %global_id_1 "global_id_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %Matrix "Matrix"
OpMemberName %Matrix 0 "numbers"
OpName %firstMatrix "firstMatrix"
@@ -24,9 +27,6 @@
OpName %TileAOuter "TileInner"
OpName %mm_Asub "mm_Asub"
OpName %mm_Bsub "mm_Bsub"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %mm_readA "mm_readA"
OpName %row "row"
OpName %col "col"
@@ -37,7 +37,10 @@
OpName %row_1 "row"
OpName %col_1 "col"
OpName %value "value"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %local_id "local_id"
+ OpName %global_id "global_id"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
OpName %acc "acc"
OpName %ACached "ACached"
@@ -54,6 +57,10 @@
OpName %innerCol_1 "innerCol"
OpName %innerRow_2 "innerRow"
OpName %innerCol_2 "innerCol"
+ OpName %main "main"
+ OpDecorate %local_id_1 BuiltIn LocalInvocationId
+ OpDecorate %global_id_1 BuiltIn GlobalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %Matrix Block
OpMemberDecorate %Matrix 0 Offset 0
OpDecorate %_runtimearr_float ArrayStride 4
@@ -75,11 +82,15 @@
OpDecorate %uniforms Binding 3
OpDecorate %_arr_float_TileAOuter ArrayStride 4
OpDecorate %_arr__arr_float_TileAOuter_TileAOuter ArrayStride 256
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_1 BuiltIn GlobalInvocationId
- OpDecorate %tint_symbol_2 BuiltIn LocalInvocationIndex
OpDecorate %_arr_float_uint_16 ArrayStride 4
OpDecorate %_arr_float_RowPerThread ArrayStride 4
+ %uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+ %local_id_1 = OpVariable %_ptr_Input_v3uint Input
+%global_id_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%_runtimearr_float = OpTypeRuntimeArray %float
%Matrix = OpTypeStruct %_runtimearr_float
@@ -87,7 +98,6 @@
%firstMatrix = OpVariable %_ptr_StorageBuffer_Matrix StorageBuffer
%secondMatrix = OpVariable %_ptr_StorageBuffer_Matrix StorageBuffer
%resultMatrix = OpVariable %_ptr_StorageBuffer_Matrix StorageBuffer
- %uint = OpTypeInt 32 0
%Uniforms = OpTypeStruct %uint %uint %uint
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
@@ -98,12 +108,6 @@
%_ptr_Workgroup__arr__arr_float_TileAOuter_TileAOuter = OpTypePointer Workgroup %_arr__arr_float_TileAOuter_TileAOuter
%mm_Asub = OpVariable %_ptr_Workgroup__arr__arr_float_TileAOuter_TileAOuter Workgroup
%mm_Bsub = OpVariable %_ptr_Workgroup__arr__arr_float_TileAOuter_TileAOuter Workgroup
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v3uint Input
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
%25 = OpTypeFunction %float %uint %uint
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
@@ -114,22 +118,23 @@
%uint_2 = OpConstant %uint 2
%void = OpTypeVoid
%75 = OpTypeFunction %void %uint %uint %float
- %98 = OpTypeFunction %void
+ %98 = OpTypeFunction %void %v3uint %v3uint %uint
%_ptr_Function_uint = OpTypePointer Function %uint
- %104 = OpConstantNull %uint
+ %106 = OpConstantNull %uint
%uint_4096 = OpConstant %uint 4096
%_ptr_Workgroup_float = OpTypePointer Workgroup %float
- %121 = OpConstantNull %float
+ %123 = OpConstantNull %float
%uint_256 = OpConstant %uint 256
%uint_264 = OpConstant %uint 264
%uint_16 = OpConstant %uint 16
%_arr_float_uint_16 = OpTypeArray %float %uint_16
%_ptr_Function__arr_float_uint_16 = OpTypePointer Function %_arr_float_uint_16
- %149 = OpConstantNull %_arr_float_uint_16
+ %147 = OpConstantNull %_arr_float_uint_16
%_ptr_Function_float = OpTypePointer Function %float
%_arr_float_RowPerThread = OpTypeArray %float %RowPerThread
%_ptr_Function__arr_float_RowPerThread = OpTypePointer Function %_arr_float_RowPerThread
- %155 = OpConstantNull %_arr_float_RowPerThread
+ %153 = OpConstantNull %_arr_float_RowPerThread
+ %368 = OpTypeFunction %void
%mm_readA = OpFunction %float None %25
%row = OpFunctionParameter %uint
%col = OpFunctionParameter %uint
@@ -218,401 +223,405 @@
%91 = OpLabel
OpReturn
OpFunctionEnd
- %main = OpFunction %void None %98
- %100 = OpLabel
- %idx = OpVariable %_ptr_Function_uint Function %104
- %acc = OpVariable %_ptr_Function__arr_float_uint_16 Function %149
- %ACached = OpVariable %_ptr_Function_float Function %121
- %BCached = OpVariable %_ptr_Function__arr_float_RowPerThread Function %155
- %index = OpVariable %_ptr_Function_uint Function %104
- %t = OpVariable %_ptr_Function_uint Function %104
- %innerRow = OpVariable %_ptr_Function_uint Function %104
- %innerCol = OpVariable %_ptr_Function_uint Function %104
- %innerRow_0 = OpVariable %_ptr_Function_uint Function %104
- %innerCol_0 = OpVariable %_ptr_Function_uint Function %104
- %k = OpVariable %_ptr_Function_uint Function %104
- %inner = OpVariable %_ptr_Function_uint Function %104
- %innerRow_1 = OpVariable %_ptr_Function_uint Function %104
- %innerCol_1 = OpVariable %_ptr_Function_uint Function %104
- %innerRow_2 = OpVariable %_ptr_Function_uint Function %104
- %innerCol_2 = OpVariable %_ptr_Function_uint Function %104
- %101 = OpLoad %uint %tint_symbol_2
- OpStore %idx %101
- OpBranch %105
- %105 = OpLabel
- OpLoopMerge %106 %107 None
- OpBranch %108
- %108 = OpLabel
- %110 = OpLoad %uint %idx
- %112 = OpULessThan %bool %110 %uint_4096
- %109 = OpLogicalNot %bool %112
- OpSelectionMerge %113 None
- OpBranchConditional %109 %114 %113
- %114 = OpLabel
- OpBranch %106
- %113 = OpLabel
- %115 = OpLoad %uint %idx
- %116 = OpUDiv %uint %115 %TileAOuter
- %117 = OpLoad %uint %idx
- %118 = OpUMod %uint %117 %TileAOuter
- %120 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %116 %118
- OpStore %120 %121
- %122 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %116 %118
- OpStore %122 %121
+ %main_inner = OpFunction %void None %98
+ %local_id = OpFunctionParameter %v3uint
+ %global_id = OpFunctionParameter %v3uint
+%local_invocation_index = OpFunctionParameter %uint
+ %103 = OpLabel
+ %idx = OpVariable %_ptr_Function_uint Function %106
+ %acc = OpVariable %_ptr_Function__arr_float_uint_16 Function %147
+ %ACached = OpVariable %_ptr_Function_float Function %123
+ %BCached = OpVariable %_ptr_Function__arr_float_RowPerThread Function %153
+ %index = OpVariable %_ptr_Function_uint Function %106
+ %t = OpVariable %_ptr_Function_uint Function %106
+ %innerRow = OpVariable %_ptr_Function_uint Function %106
+ %innerCol = OpVariable %_ptr_Function_uint Function %106
+ %innerRow_0 = OpVariable %_ptr_Function_uint Function %106
+ %innerCol_0 = OpVariable %_ptr_Function_uint Function %106
+ %k = OpVariable %_ptr_Function_uint Function %106
+ %inner = OpVariable %_ptr_Function_uint Function %106
+ %innerRow_1 = OpVariable %_ptr_Function_uint Function %106
+ %innerCol_1 = OpVariable %_ptr_Function_uint Function %106
+ %innerRow_2 = OpVariable %_ptr_Function_uint Function %106
+ %innerCol_2 = OpVariable %_ptr_Function_uint Function %106
+ OpStore %idx %local_invocation_index
OpBranch %107
%107 = OpLabel
- %123 = OpLoad %uint %idx
- %125 = OpIAdd %uint %123 %uint_256
- OpStore %idx %125
- OpBranch %105
- %106 = OpLabel
+ OpLoopMerge %108 %109 None
+ OpBranch %110
+ %110 = OpLabel
+ %112 = OpLoad %uint %idx
+ %114 = OpULessThan %bool %112 %uint_4096
+ %111 = OpLogicalNot %bool %114
+ OpSelectionMerge %115 None
+ OpBranchConditional %111 %116 %115
+ %116 = OpLabel
+ OpBranch %108
+ %115 = OpLabel
+ %117 = OpLoad %uint %idx
+ %118 = OpUDiv %uint %117 %TileAOuter
+ %119 = OpLoad %uint %idx
+ %120 = OpUMod %uint %119 %TileAOuter
+ %122 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %118 %120
+ OpStore %122 %123
+ %124 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %118 %120
+ OpStore %124 %123
+ OpBranch %109
+ %109 = OpLabel
+ %125 = OpLoad %uint %idx
+ %127 = OpIAdd %uint %125 %uint_256
+ OpStore %idx %127
+ OpBranch %107
+ %108 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
- %128 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %129 = OpLoad %uint %128
- %130 = OpIMul %uint %129 %RowPerThread
- %131 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %132 = OpLoad %uint %131
+ %130 = OpCompositeExtract %uint %local_id 1
+ %131 = OpIMul %uint %130 %RowPerThread
+ %132 = OpCompositeExtract %uint %local_id 0
%133 = OpIMul %uint %132 %RowPerThread
- %134 = OpAccessChain %_ptr_Input_uint %tint_symbol_1 %uint_1
- %135 = OpLoad %uint %134
- %136 = OpIMul %uint %135 %RowPerThread
- %137 = OpAccessChain %_ptr_Input_uint %tint_symbol_1 %uint_0
- %138 = OpLoad %uint %137
- %139 = OpIMul %uint %138 %RowPerThread
- %140 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_1
- %141 = OpLoad %uint %140
- %142 = OpISub %uint %141 %uint_1
- %143 = OpUDiv %uint %142 %TileAOuter
- %144 = OpIAdd %uint %143 %uint_1
+ %134 = OpCompositeExtract %uint %global_id 1
+ %135 = OpIMul %uint %134 %RowPerThread
+ %136 = OpCompositeExtract %uint %global_id 0
+ %137 = OpIMul %uint %136 %RowPerThread
+ %138 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_1
+ %139 = OpLoad %uint %138
+ %140 = OpISub %uint %139 %uint_1
+ %141 = OpUDiv %uint %140 %TileAOuter
+ %142 = OpIAdd %uint %141 %uint_1
OpStore %index %uint_0
+ OpBranch %155
+ %155 = OpLabel
+ OpLoopMerge %156 %157 None
+ OpBranch %158
+ %158 = OpLabel
+ %160 = OpLoad %uint %index
+ %161 = OpIMul %uint %RowPerThread %RowPerThread
+ %162 = OpULessThan %bool %160 %161
+ %159 = OpLogicalNot %bool %162
+ OpSelectionMerge %163 None
+ OpBranchConditional %159 %164 %163
+ %164 = OpLabel
+ OpBranch %156
+ %163 = OpLabel
+ %165 = OpLoad %uint %index
+ %166 = OpAccessChain %_ptr_Function_float %acc %165
+ OpStore %166 %float_0
OpBranch %157
%157 = OpLabel
- OpLoopMerge %158 %159 None
- OpBranch %160
- %160 = OpLabel
- %162 = OpLoad %uint %index
- %163 = OpIMul %uint %RowPerThread %RowPerThread
- %164 = OpULessThan %bool %162 %163
- %161 = OpLogicalNot %bool %164
- OpSelectionMerge %165 None
- OpBranchConditional %161 %166 %165
- %166 = OpLabel
- OpBranch %158
- %165 = OpLabel
%167 = OpLoad %uint %index
- %168 = OpAccessChain %_ptr_Function_float %acc %167
- OpStore %168 %float_0
- OpBranch %159
- %159 = OpLabel
- %169 = OpLoad %uint %index
- %170 = OpIAdd %uint %169 %uint_1
- OpStore %index %170
- OpBranch %157
- %158 = OpLabel
- %171 = OpUDiv %uint %TileAOuter %uint_16
- %172 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %173 = OpLoad %uint %172
- %174 = OpIMul %uint %173 %171
- %175 = OpUDiv %uint %TileAOuter %uint_16
- %176 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_1
- %177 = OpLoad %uint %176
- %178 = OpIMul %uint %177 %175
+ %168 = OpIAdd %uint %167 %uint_1
+ OpStore %index %168
+ OpBranch %155
+ %156 = OpLabel
+ %169 = OpUDiv %uint %TileAOuter %uint_16
+ %170 = OpCompositeExtract %uint %local_id 0
+ %171 = OpIMul %uint %170 %169
+ %172 = OpUDiv %uint %TileAOuter %uint_16
+ %173 = OpCompositeExtract %uint %local_id 1
+ %174 = OpIMul %uint %173 %172
OpStore %t %uint_0
- OpBranch %180
- %180 = OpLabel
- OpLoopMerge %181 %182 None
- OpBranch %183
+ OpBranch %176
+ %176 = OpLabel
+ OpLoopMerge %177 %178 None
+ OpBranch %179
+ %179 = OpLabel
+ %181 = OpLoad %uint %t
+ %182 = OpULessThan %bool %181 %142
+ %180 = OpLogicalNot %bool %182
+ OpSelectionMerge %183 None
+ OpBranchConditional %180 %184 %183
+ %184 = OpLabel
+ OpBranch %177
%183 = OpLabel
- %185 = OpLoad %uint %t
- %186 = OpULessThan %bool %185 %144
- %184 = OpLogicalNot %bool %186
- OpSelectionMerge %187 None
- OpBranchConditional %184 %188 %187
- %188 = OpLabel
- OpBranch %181
- %187 = OpLabel
OpStore %innerRow %uint_0
- OpBranch %190
- %190 = OpLabel
- OpLoopMerge %191 %192 None
- OpBranch %193
+ OpBranch %186
+ %186 = OpLabel
+ OpLoopMerge %187 %188 None
+ OpBranch %189
+ %189 = OpLabel
+ %191 = OpLoad %uint %innerRow
+ %192 = OpULessThan %bool %191 %RowPerThread
+ %190 = OpLogicalNot %bool %192
+ OpSelectionMerge %193 None
+ OpBranchConditional %190 %194 %193
+ %194 = OpLabel
+ OpBranch %187
%193 = OpLabel
- %195 = OpLoad %uint %innerRow
- %196 = OpULessThan %bool %195 %RowPerThread
- %194 = OpLogicalNot %bool %196
- OpSelectionMerge %197 None
- OpBranchConditional %194 %198 %197
- %198 = OpLabel
- OpBranch %191
- %197 = OpLabel
OpStore %innerCol %uint_0
- OpBranch %200
- %200 = OpLabel
- OpLoopMerge %201 %202 None
- OpBranch %203
+ OpBranch %196
+ %196 = OpLabel
+ OpLoopMerge %197 %198 None
+ OpBranch %199
+ %199 = OpLabel
+ %201 = OpLoad %uint %innerCol
+ %202 = OpULessThan %bool %201 %169
+ %200 = OpLogicalNot %bool %202
+ OpSelectionMerge %203 None
+ OpBranchConditional %200 %204 %203
+ %204 = OpLabel
+ OpBranch %197
%203 = OpLabel
- %205 = OpLoad %uint %innerCol
- %206 = OpULessThan %bool %205 %171
- %204 = OpLogicalNot %bool %206
- OpSelectionMerge %207 None
- OpBranchConditional %204 %208 %207
- %208 = OpLabel
- OpBranch %201
- %207 = OpLabel
- %209 = OpLoad %uint %innerRow
- %210 = OpIAdd %uint %130 %209
- %211 = OpLoad %uint %innerCol
- %212 = OpIAdd %uint %174 %211
- %213 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %210 %212
- %215 = OpLoad %uint %innerRow
- %216 = OpIAdd %uint %136 %215
- %217 = OpLoad %uint %t
- %218 = OpIMul %uint %217 %TileAOuter
- %219 = OpIAdd %uint %218 %212
- %214 = OpFunctionCall %float %mm_readA %216 %219
- OpStore %213 %214
- OpBranch %202
- %202 = OpLabel
- %220 = OpLoad %uint %innerCol
- %221 = OpIAdd %uint %220 %uint_1
- OpStore %innerCol %221
- OpBranch %200
- %201 = OpLabel
- OpBranch %192
- %192 = OpLabel
- %222 = OpLoad %uint %innerRow
- %223 = OpIAdd %uint %222 %uint_1
- OpStore %innerRow %223
- OpBranch %190
- %191 = OpLabel
+ %205 = OpLoad %uint %innerRow
+ %206 = OpIAdd %uint %131 %205
+ %207 = OpLoad %uint %innerCol
+ %208 = OpIAdd %uint %171 %207
+ %209 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %206 %208
+ %211 = OpLoad %uint %innerRow
+ %212 = OpIAdd %uint %135 %211
+ %213 = OpLoad %uint %t
+ %214 = OpIMul %uint %213 %TileAOuter
+ %215 = OpIAdd %uint %214 %208
+ %210 = OpFunctionCall %float %mm_readA %212 %215
+ OpStore %209 %210
+ OpBranch %198
+ %198 = OpLabel
+ %216 = OpLoad %uint %innerCol
+ %217 = OpIAdd %uint %216 %uint_1
+ OpStore %innerCol %217
+ OpBranch %196
+ %197 = OpLabel
+ OpBranch %188
+ %188 = OpLabel
+ %218 = OpLoad %uint %innerRow
+ %219 = OpIAdd %uint %218 %uint_1
+ OpStore %innerRow %219
+ OpBranch %186
+ %187 = OpLabel
OpStore %innerRow_0 %uint_0
- OpBranch %225
- %225 = OpLabel
- OpLoopMerge %226 %227 None
- OpBranch %228
+ OpBranch %221
+ %221 = OpLabel
+ OpLoopMerge %222 %223 None
+ OpBranch %224
+ %224 = OpLabel
+ %226 = OpLoad %uint %innerRow_0
+ %227 = OpULessThan %bool %226 %172
+ %225 = OpLogicalNot %bool %227
+ OpSelectionMerge %228 None
+ OpBranchConditional %225 %229 %228
+ %229 = OpLabel
+ OpBranch %222
%228 = OpLabel
- %230 = OpLoad %uint %innerRow_0
- %231 = OpULessThan %bool %230 %175
- %229 = OpLogicalNot %bool %231
- OpSelectionMerge %232 None
- OpBranchConditional %229 %233 %232
- %233 = OpLabel
- OpBranch %226
- %232 = OpLabel
OpStore %innerCol_0 %uint_0
- OpBranch %235
- %235 = OpLabel
- OpLoopMerge %236 %237 None
- OpBranch %238
+ OpBranch %231
+ %231 = OpLabel
+ OpLoopMerge %232 %233 None
+ OpBranch %234
+ %234 = OpLabel
+ %236 = OpLoad %uint %innerCol_0
+ %237 = OpULessThan %bool %236 %RowPerThread
+ %235 = OpLogicalNot %bool %237
+ OpSelectionMerge %238 None
+ OpBranchConditional %235 %239 %238
+ %239 = OpLabel
+ OpBranch %232
%238 = OpLabel
- %240 = OpLoad %uint %innerCol_0
- %241 = OpULessThan %bool %240 %RowPerThread
- %239 = OpLogicalNot %bool %241
- OpSelectionMerge %242 None
- OpBranchConditional %239 %243 %242
- %243 = OpLabel
- OpBranch %236
- %242 = OpLabel
- %244 = OpLoad %uint %innerRow_0
- %245 = OpIAdd %uint %178 %244
- %246 = OpLoad %uint %innerCol_0
- %247 = OpIAdd %uint %133 %246
- %248 = OpLoad %uint %innerCol_0
- %249 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %248 %247
- %251 = OpLoad %uint %t
- %252 = OpIMul %uint %251 %TileAOuter
- %253 = OpIAdd %uint %252 %245
- %254 = OpLoad %uint %innerCol_0
- %255 = OpIAdd %uint %139 %254
- %250 = OpFunctionCall %float %mm_readB %253 %255
- OpStore %249 %250
- OpBranch %237
- %237 = OpLabel
- %256 = OpLoad %uint %innerCol_0
- %257 = OpIAdd %uint %256 %uint_1
- OpStore %innerCol_0 %257
- OpBranch %235
- %236 = OpLabel
- OpBranch %227
- %227 = OpLabel
- %258 = OpLoad %uint %innerRow_0
- %259 = OpIAdd %uint %258 %uint_1
- OpStore %innerRow_0 %259
- OpBranch %225
- %226 = OpLabel
+ %240 = OpLoad %uint %innerRow_0
+ %241 = OpIAdd %uint %174 %240
+ %242 = OpLoad %uint %innerCol_0
+ %243 = OpIAdd %uint %133 %242
+ %244 = OpLoad %uint %innerCol_0
+ %245 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %244 %243
+ %247 = OpLoad %uint %t
+ %248 = OpIMul %uint %247 %TileAOuter
+ %249 = OpIAdd %uint %248 %241
+ %250 = OpLoad %uint %innerCol_0
+ %251 = OpIAdd %uint %137 %250
+ %246 = OpFunctionCall %float %mm_readB %249 %251
+ OpStore %245 %246
+ OpBranch %233
+ %233 = OpLabel
+ %252 = OpLoad %uint %innerCol_0
+ %253 = OpIAdd %uint %252 %uint_1
+ OpStore %innerCol_0 %253
+ OpBranch %231
+ %232 = OpLabel
+ OpBranch %223
+ %223 = OpLabel
+ %254 = OpLoad %uint %innerRow_0
+ %255 = OpIAdd %uint %254 %uint_1
+ OpStore %innerRow_0 %255
+ OpBranch %221
+ %222 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
OpStore %k %uint_0
- OpBranch %262
- %262 = OpLabel
- OpLoopMerge %263 %264 None
- OpBranch %265
+ OpBranch %258
+ %258 = OpLabel
+ OpLoopMerge %259 %260 None
+ OpBranch %261
+ %261 = OpLabel
+ %263 = OpLoad %uint %k
+ %264 = OpULessThan %bool %263 %TileAOuter
+ %262 = OpLogicalNot %bool %264
+ OpSelectionMerge %265 None
+ OpBranchConditional %262 %266 %265
+ %266 = OpLabel
+ OpBranch %259
%265 = OpLabel
- %267 = OpLoad %uint %k
- %268 = OpULessThan %bool %267 %TileAOuter
- %266 = OpLogicalNot %bool %268
- OpSelectionMerge %269 None
- OpBranchConditional %266 %270 %269
- %270 = OpLabel
- OpBranch %263
- %269 = OpLabel
OpStore %inner %uint_0
- OpBranch %272
- %272 = OpLabel
- OpLoopMerge %273 %274 None
- OpBranch %275
+ OpBranch %268
+ %268 = OpLabel
+ OpLoopMerge %269 %270 None
+ OpBranch %271
+ %271 = OpLabel
+ %273 = OpLoad %uint %inner
+ %274 = OpULessThan %bool %273 %RowPerThread
+ %272 = OpLogicalNot %bool %274
+ OpSelectionMerge %275 None
+ OpBranchConditional %272 %276 %275
+ %276 = OpLabel
+ OpBranch %269
%275 = OpLabel
%277 = OpLoad %uint %inner
- %278 = OpULessThan %bool %277 %RowPerThread
- %276 = OpLogicalNot %bool %278
- OpSelectionMerge %279 None
- OpBranchConditional %276 %280 %279
- %280 = OpLabel
- OpBranch %273
- %279 = OpLabel
- %281 = OpLoad %uint %inner
- %282 = OpAccessChain %_ptr_Function_float %BCached %281
- %283 = OpLoad %uint %k
+ %278 = OpAccessChain %_ptr_Function_float %BCached %277
+ %279 = OpLoad %uint %k
+ %280 = OpLoad %uint %inner
+ %281 = OpIAdd %uint %133 %280
+ %282 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %279 %281
+ %283 = OpLoad %float %282
+ OpStore %278 %283
+ OpBranch %270
+ %270 = OpLabel
%284 = OpLoad %uint %inner
- %285 = OpIAdd %uint %133 %284
- %286 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %283 %285
- %287 = OpLoad %float %286
- OpStore %282 %287
- OpBranch %274
- %274 = OpLabel
- %288 = OpLoad %uint %inner
- %289 = OpIAdd %uint %288 %uint_1
- OpStore %inner %289
- OpBranch %272
- %273 = OpLabel
+ %285 = OpIAdd %uint %284 %uint_1
+ OpStore %inner %285
+ OpBranch %268
+ %269 = OpLabel
OpStore %innerRow_1 %uint_0
- OpBranch %291
- %291 = OpLabel
- OpLoopMerge %292 %293 None
- OpBranch %294
+ OpBranch %287
+ %287 = OpLabel
+ OpLoopMerge %288 %289 None
+ OpBranch %290
+ %290 = OpLabel
+ %292 = OpLoad %uint %innerRow_1
+ %293 = OpULessThan %bool %292 %RowPerThread
+ %291 = OpLogicalNot %bool %293
+ OpSelectionMerge %294 None
+ OpBranchConditional %291 %295 %294
+ %295 = OpLabel
+ OpBranch %288
%294 = OpLabel
%296 = OpLoad %uint %innerRow_1
- %297 = OpULessThan %bool %296 %RowPerThread
- %295 = OpLogicalNot %bool %297
- OpSelectionMerge %298 None
- OpBranchConditional %295 %299 %298
- %299 = OpLabel
- OpBranch %292
- %298 = OpLabel
- %300 = OpLoad %uint %innerRow_1
- %301 = OpIAdd %uint %130 %300
- %302 = OpLoad %uint %k
- %303 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %301 %302
- %304 = OpLoad %float %303
- OpStore %ACached %304
+ %297 = OpIAdd %uint %131 %296
+ %298 = OpLoad %uint %k
+ %299 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %297 %298
+ %300 = OpLoad %float %299
+ OpStore %ACached %300
OpStore %innerCol_1 %uint_0
- OpBranch %306
- %306 = OpLabel
- OpLoopMerge %307 %308 None
- OpBranch %309
+ OpBranch %302
+ %302 = OpLabel
+ OpLoopMerge %303 %304 None
+ OpBranch %305
+ %305 = OpLabel
+ %307 = OpLoad %uint %innerCol_1
+ %308 = OpULessThan %bool %307 %RowPerThread
+ %306 = OpLogicalNot %bool %308
+ OpSelectionMerge %309 None
+ OpBranchConditional %306 %310 %309
+ %310 = OpLabel
+ OpBranch %303
%309 = OpLabel
- %311 = OpLoad %uint %innerCol_1
- %312 = OpULessThan %bool %311 %RowPerThread
- %310 = OpLogicalNot %bool %312
- OpSelectionMerge %313 None
- OpBranchConditional %310 %314 %313
- %314 = OpLabel
- OpBranch %307
- %313 = OpLabel
- %315 = OpLoad %uint %innerRow_1
- %316 = OpIMul %uint %315 %RowPerThread
- %317 = OpLoad %uint %innerCol_1
- %318 = OpIAdd %uint %316 %317
- %319 = OpAccessChain %_ptr_Function_float %acc %318
- %320 = OpAccessChain %_ptr_Function_float %acc %318
+ %311 = OpLoad %uint %innerRow_1
+ %312 = OpIMul %uint %311 %RowPerThread
+ %313 = OpLoad %uint %innerCol_1
+ %314 = OpIAdd %uint %312 %313
+ %315 = OpAccessChain %_ptr_Function_float %acc %314
+ %316 = OpAccessChain %_ptr_Function_float %acc %314
+ %317 = OpLoad %float %316
+ %318 = OpLoad %float %ACached
+ %319 = OpLoad %uint %innerCol_1
+ %320 = OpAccessChain %_ptr_Function_float %BCached %319
%321 = OpLoad %float %320
- %322 = OpLoad %float %ACached
- %323 = OpLoad %uint %innerCol_1
- %324 = OpAccessChain %_ptr_Function_float %BCached %323
- %325 = OpLoad %float %324
- %326 = OpFMul %float %322 %325
- %327 = OpFAdd %float %321 %326
- OpStore %319 %327
- OpBranch %308
- %308 = OpLabel
- %328 = OpLoad %uint %innerCol_1
+ %322 = OpFMul %float %318 %321
+ %323 = OpFAdd %float %317 %322
+ OpStore %315 %323
+ OpBranch %304
+ %304 = OpLabel
+ %324 = OpLoad %uint %innerCol_1
+ %325 = OpIAdd %uint %324 %uint_1
+ OpStore %innerCol_1 %325
+ OpBranch %302
+ %303 = OpLabel
+ OpBranch %289
+ %289 = OpLabel
+ %326 = OpLoad %uint %innerRow_1
+ %327 = OpIAdd %uint %326 %uint_1
+ OpStore %innerRow_1 %327
+ OpBranch %287
+ %288 = OpLabel
+ OpBranch %260
+ %260 = OpLabel
+ %328 = OpLoad %uint %k
%329 = OpIAdd %uint %328 %uint_1
- OpStore %innerCol_1 %329
- OpBranch %306
- %307 = OpLabel
- OpBranch %293
- %293 = OpLabel
- %330 = OpLoad %uint %innerRow_1
- %331 = OpIAdd %uint %330 %uint_1
- OpStore %innerRow_1 %331
- OpBranch %291
- %292 = OpLabel
- OpBranch %264
- %264 = OpLabel
- %332 = OpLoad %uint %k
- %333 = OpIAdd %uint %332 %uint_1
- OpStore %k %333
- OpBranch %262
- %263 = OpLabel
+ OpStore %k %329
+ OpBranch %258
+ %259 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
- OpBranch %182
- %182 = OpLabel
- %335 = OpLoad %uint %t
- %336 = OpIAdd %uint %335 %uint_1
- OpStore %t %336
- OpBranch %180
- %181 = OpLabel
+ OpBranch %178
+ %178 = OpLabel
+ %331 = OpLoad %uint %t
+ %332 = OpIAdd %uint %331 %uint_1
+ OpStore %t %332
+ OpBranch %176
+ %177 = OpLabel
OpStore %innerRow_2 %uint_0
- OpBranch %338
- %338 = OpLabel
- OpLoopMerge %339 %340 None
- OpBranch %341
+ OpBranch %334
+ %334 = OpLabel
+ OpLoopMerge %335 %336 None
+ OpBranch %337
+ %337 = OpLabel
+ %339 = OpLoad %uint %innerRow_2
+ %340 = OpULessThan %bool %339 %RowPerThread
+ %338 = OpLogicalNot %bool %340
+ OpSelectionMerge %341 None
+ OpBranchConditional %338 %342 %341
+ %342 = OpLabel
+ OpBranch %335
%341 = OpLabel
- %343 = OpLoad %uint %innerRow_2
- %344 = OpULessThan %bool %343 %RowPerThread
- %342 = OpLogicalNot %bool %344
- OpSelectionMerge %345 None
- OpBranchConditional %342 %346 %345
- %346 = OpLabel
- OpBranch %339
- %345 = OpLabel
OpStore %innerCol_2 %uint_0
- OpBranch %348
- %348 = OpLabel
- OpLoopMerge %349 %350 None
- OpBranch %351
+ OpBranch %344
+ %344 = OpLabel
+ OpLoopMerge %345 %346 None
+ OpBranch %347
+ %347 = OpLabel
+ %349 = OpLoad %uint %innerCol_2
+ %350 = OpULessThan %bool %349 %RowPerThread
+ %348 = OpLogicalNot %bool %350
+ OpSelectionMerge %351 None
+ OpBranchConditional %348 %352 %351
+ %352 = OpLabel
+ OpBranch %345
%351 = OpLabel
- %353 = OpLoad %uint %innerCol_2
- %354 = OpULessThan %bool %353 %RowPerThread
- %352 = OpLogicalNot %bool %354
- OpSelectionMerge %355 None
- OpBranchConditional %352 %356 %355
- %356 = OpLabel
- OpBranch %349
- %355 = OpLabel
- %357 = OpLoad %uint %innerRow_2
- %358 = OpIMul %uint %357 %RowPerThread
- %359 = OpLoad %uint %innerCol_2
- %360 = OpIAdd %uint %358 %359
- %362 = OpLoad %uint %innerRow_2
- %363 = OpIAdd %uint %136 %362
+ %353 = OpLoad %uint %innerRow_2
+ %354 = OpIMul %uint %353 %RowPerThread
+ %355 = OpLoad %uint %innerCol_2
+ %356 = OpIAdd %uint %354 %355
+ %358 = OpLoad %uint %innerRow_2
+ %359 = OpIAdd %uint %135 %358
+ %360 = OpLoad %uint %innerCol_2
+ %361 = OpIAdd %uint %137 %360
+ %362 = OpAccessChain %_ptr_Function_float %acc %356
+ %363 = OpLoad %float %362
+ %357 = OpFunctionCall %void %mm_write %359 %361 %363
+ OpBranch %346
+ %346 = OpLabel
%364 = OpLoad %uint %innerCol_2
- %365 = OpIAdd %uint %139 %364
- %366 = OpAccessChain %_ptr_Function_float %acc %360
- %367 = OpLoad %float %366
- %361 = OpFunctionCall %void %mm_write %363 %365 %367
- OpBranch %350
- %350 = OpLabel
- %368 = OpLoad %uint %innerCol_2
- %369 = OpIAdd %uint %368 %uint_1
- OpStore %innerCol_2 %369
- OpBranch %348
- %349 = OpLabel
- OpBranch %340
- %340 = OpLabel
- %370 = OpLoad %uint %innerRow_2
- %371 = OpIAdd %uint %370 %uint_1
- OpStore %innerRow_2 %371
- OpBranch %338
- %339 = OpLabel
+ %365 = OpIAdd %uint %364 %uint_1
+ OpStore %innerCol_2 %365
+ OpBranch %344
+ %345 = OpLabel
+ OpBranch %336
+ %336 = OpLabel
+ %366 = OpLoad %uint %innerRow_2
+ %367 = OpIAdd %uint %366 %uint_1
+ OpStore %innerRow_2 %367
+ OpBranch %334
+ %335 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %368
+ %370 = OpLabel
+ %372 = OpLoad %v3uint %local_id_1
+ %373 = OpLoad %v3uint %global_id_1
+ %374 = OpLoad %uint %local_invocation_index_1
+ %371 = OpFunctionCall %void %main_inner %372 %373 %374
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/922.wgsl.expected.spvasm b/test/bug/tint/922.wgsl.expected.spvasm
index 1f01f8a..f81704a 100644
--- a/test/bug/tint/922.wgsl.expected.spvasm
+++ b/test/bug/tint/922.wgsl.expected.spvasm
@@ -1,12 +1,20 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 383
+; Bound: 387
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_6 %tint_symbol_7 %tint_symbol_8
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %a_Position_1 %a_UV_1 %a_Color_1 %a_Normal_1 %a_PosMtxIdx_1 %v_Color_1 %v_TexCoord_1 %member_1 %vertex_point_size
+ OpName %a_Position_1 "a_Position_1"
+ OpName %a_UV_1 "a_UV_1"
+ OpName %a_Color_1 "a_Color_1"
+ OpName %a_Normal_1 "a_Normal_1"
+ OpName %a_PosMtxIdx_1 "a_PosMtxIdx_1"
+ OpName %v_Color_1 "v_Color_1"
+ OpName %v_TexCoord_1 "v_TexCoord_1"
+ OpName %member_1 "member_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ub_SceneParams "ub_SceneParams"
OpMemberName %ub_SceneParams 0 "u_Projection"
OpName %Mat4x4_ "Mat4x4_"
@@ -37,14 +45,6 @@
OpName %v_Color "v_Color"
OpName %v_TexCoord "v_TexCoord"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_8 "tint_symbol_8"
OpName %Mat4x3GetCol0_ "Mat4x3GetCol0_"
OpName %m "m"
OpName %m1 "m1"
@@ -104,10 +104,22 @@
OpMemberName %VertexOutput 0 "v_Color"
OpMemberName %VertexOutput 1 "v_TexCoord"
OpMemberName %VertexOutput 2 "member"
- OpName %tint_symbol_9 "tint_symbol_9"
- OpName %tint_symbol_5 "tint_symbol_5"
+ OpName %main_inner "main_inner"
+ OpName %a_Position "a_Position"
+ OpName %a_UV "a_UV"
+ OpName %a_Color "a_Color"
+ OpName %a_Normal "a_Normal"
+ OpName %a_PosMtxIdx "a_PosMtxIdx"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %a_Position_1 Location 0
+ OpDecorate %a_UV_1 Location 1
+ OpDecorate %a_Color_1 Location 2
+ OpDecorate %a_Normal_1 Location 3
+ OpDecorate %a_PosMtxIdx_1 Location 4
+ OpDecorate %v_Color_1 Location 0
+ OpDecorate %v_TexCoord_1 Location 1
+ OpDecorate %member_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %ub_SceneParams Block
OpMemberDecorate %ub_SceneParams 0 Offset 0
OpMemberDecorate %Mat4x4_ 0 Offset 0
@@ -135,22 +147,32 @@
OpDecorate %global2 NonWritable
OpDecorate %global2 DescriptorSet 0
OpDecorate %global2 Binding 2
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_6 Location 0
- OpDecorate %tint_symbol_7 Location 1
- OpDecorate %tint_symbol_8 BuiltIn Position
OpMemberDecorate %VertexOutput 0 Offset 0
OpMemberDecorate %VertexOutput 1 Offset 16
OpMemberDecorate %VertexOutput 2 Offset 32
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %v3float = OpTypeVector %float 3
+%_ptr_Input_v3float = OpTypePointer Input %v3float
+%a_Position_1 = OpVariable %_ptr_Input_v3float Input
+ %v2float = OpTypeVector %float 2
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+ %a_UV_1 = OpVariable %_ptr_Input_v2float Input
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+ %a_Color_1 = OpVariable %_ptr_Input_v4float Input
+ %a_Normal_1 = OpVariable %_ptr_Input_v3float Input
+%_ptr_Input_float = OpTypePointer Input %float
+%a_PosMtxIdx_1 = OpVariable %_ptr_Input_float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %16 = OpConstantNull %v4float
+ %v_Color_1 = OpVariable %_ptr_Output_v4float Output %16
+%_ptr_Output_v2float = OpTypePointer Output %v2float
+ %19 = OpConstantNull %v2float
+%v_TexCoord_1 = OpVariable %_ptr_Output_v2float Output %19
+ %member_1 = OpVariable %_ptr_Output_v4float Output %16
+%_ptr_Output_float = OpTypePointer Output %float
+ %23 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %23
%Mat4x4_ = OpTypeStruct %v4float %v4float %v4float %v4float
%ub_SceneParams = OpTypeStruct %Mat4x4_
%_ptr_Uniform_ub_SceneParams = OpTypePointer Uniform %ub_SceneParams
@@ -168,37 +190,19 @@
%ub_PacketParams = OpTypeStruct %_arr_Mat4x3__uint_32
%_ptr_Uniform_ub_PacketParams = OpTypePointer Uniform %ub_PacketParams
%global2 = OpVariable %_ptr_Uniform_ub_PacketParams Uniform
- %v3float = OpTypeVector %float 3
%_ptr_Private_v3float = OpTypePointer Private %v3float
- %26 = OpConstantNull %v3float
-%a_Position1 = OpVariable %_ptr_Private_v3float Private %26
- %v2float = OpTypeVector %float 2
+ %43 = OpConstantNull %v3float
+%a_Position1 = OpVariable %_ptr_Private_v3float Private %43
%_ptr_Private_v2float = OpTypePointer Private %v2float
- %30 = OpConstantNull %v2float
- %a_UV1 = OpVariable %_ptr_Private_v2float Private %30
+ %a_UV1 = OpVariable %_ptr_Private_v2float Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %33 = OpConstantNull %v4float
- %a_Color1 = OpVariable %_ptr_Private_v4float Private %33
- %a_Normal1 = OpVariable %_ptr_Private_v3float Private %26
+ %a_Color1 = OpVariable %_ptr_Private_v4float Private %16
+ %a_Normal1 = OpVariable %_ptr_Private_v3float Private %43
%_ptr_Private_float = OpTypePointer Private %float
-%a_PosMtxIdx1 = OpVariable %_ptr_Private_float Private %4
- %v_Color = OpVariable %_ptr_Private_v4float Private %33
- %v_TexCoord = OpVariable %_ptr_Private_v2float Private %30
-%gl_Position = OpVariable %_ptr_Private_v4float Private %33
-%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol = OpVariable %_ptr_Input_v3float Input
-%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol_1 = OpVariable %_ptr_Input_v2float Input
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_2 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v3float Input
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_6 = OpVariable %_ptr_Output_v4float Output %33
-%_ptr_Output_v2float = OpTypePointer Output %v2float
-%tint_symbol_7 = OpVariable %_ptr_Output_v2float Output %30
-%tint_symbol_8 = OpVariable %_ptr_Output_v4float Output %33
+%a_PosMtxIdx1 = OpVariable %_ptr_Private_float Private %23
+ %v_Color = OpVariable %_ptr_Private_v4float Private %16
+ %v_TexCoord = OpVariable %_ptr_Private_v2float Private %19
+%gl_Position = OpVariable %_ptr_Private_v4float Private %16
%54 = OpTypeFunction %v3float %Mat4x3_
%_ptr_Function_Mat4x3_ = OpTypePointer Function %Mat4x3_
%60 = OpConstantNull %Mat4x3_
@@ -235,7 +239,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_Mat4x2_ = OpTypePointer Uniform %Mat4x2_
%VertexOutput = OpTypeStruct %v4float %v2float %v4float
- %362 = OpTypeFunction %void %VertexOutput
+ %362 = OpTypeFunction %VertexOutput %v3float %v2float %v4float %v3float %float
%Mat4x3GetCol0_ = OpFunction %v3float None %54
%m = OpFunctionParameter %Mat4x3_
%57 = OpLabel
@@ -309,7 +313,7 @@
%v = OpFunctionParameter %v4float
%117 = OpLabel
%m9 = OpVariable %_ptr_Function_Mat4x4_ Function %120
- %v1 = OpVariable %_ptr_Function_v4float Function %33
+ %v1 = OpVariable %_ptr_Function_v4float Function %16
OpStore %m9 %m8
OpStore %v1 %v
%123 = OpLoad %Mat4x4_ %m9
@@ -336,7 +340,7 @@
%v2 = OpFunctionParameter %v4float
%144 = OpLabel
%m11 = OpVariable %_ptr_Function_Mat4x3_ Function %60
- %v3 = OpVariable %_ptr_Function_v4float Function %33
+ %v3 = OpVariable %_ptr_Function_v4float Function %16
OpStore %m11 %m10
OpStore %v3 %v2
%147 = OpLoad %Mat4x3_ %m11
@@ -359,7 +363,7 @@
%v4 = OpFunctionParameter %v4float
%164 = OpLabel
%m13 = OpVariable %_ptr_Function_Mat4x2_ Function %167
- %v5 = OpVariable %_ptr_Function_v4float Function %33
+ %v5 = OpVariable %_ptr_Function_v4float Function %16
OpStore %m13 %m12
OpStore %v5 %v4
%169 = OpLoad %Mat4x2_ %m13
@@ -377,7 +381,7 @@
%v6 = OpFunctionParameter %v3float
%m14 = OpFunctionParameter %Mat4x3_
%182 = OpLabel
- %v7 = OpVariable %_ptr_Function_v3float Function %26
+ %v7 = OpVariable %_ptr_Function_v3float Function %43
%m15 = OpVariable %_ptr_Function_Mat4x3_ Function %60
OpStore %v7 %v6
OpStore %m15 %m14
@@ -403,7 +407,7 @@
%_Mat4x4_ = OpFunction %Mat4x4_ None %203
%n = OpFunctionParameter %float
%206 = OpLabel
- %n1 = OpVariable %_ptr_Function_float Function %4
+ %n1 = OpVariable %_ptr_Function_float Function %23
%o = OpVariable %_ptr_Function_Mat4x4_ Function %120
OpStore %n1 %n
%210 = OpLoad %float %n1
@@ -470,7 +474,7 @@
%_Mat4x3_ = OpFunction %Mat4x3_ None %259
%n2 = OpFunctionParameter %float
%262 = OpLabel
- %n3 = OpVariable %_ptr_Function_float Function %4
+ %n3 = OpVariable %_ptr_Function_float Function %23
%o3 = OpVariable %_ptr_Function_Mat4x3_ Function %60
OpStore %n3 %n2
%265 = OpLoad %float %n3
@@ -512,7 +516,7 @@
%main1 = OpFunction %void None %291
%294 = OpLabel
%t_PosMtx = OpVariable %_ptr_Function_Mat4x3_ Function %60
-%t_TexSpaceCoord = OpVariable %_ptr_Function_v2float Function %30
+%t_TexSpaceCoord = OpVariable %_ptr_Function_v2float Function %19
%298 = OpLoad %float %a_PosMtxIdx1
%299 = OpConvertFToS %int %298
%302 = OpAccessChain %_ptr_Uniform_Mat4x3_ %global2 %uint_0 %299
@@ -580,35 +584,39 @@
%338 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_9 = OpFunction %void None %362
-%tint_symbol_5 = OpFunctionParameter %VertexOutput
- %366 = OpLabel
- %367 = OpCompositeExtract %v4float %tint_symbol_5 0
- OpStore %tint_symbol_6 %367
- %368 = OpCompositeExtract %v2float %tint_symbol_5 1
- OpStore %tint_symbol_7 %368
- %369 = OpCompositeExtract %v4float %tint_symbol_5 2
- OpStore %tint_symbol_8 %369
- OpReturn
+ %main_inner = OpFunction %VertexOutput None %362
+ %a_Position = OpFunctionParameter %v3float
+ %a_UV = OpFunctionParameter %v2float
+ %a_Color = OpFunctionParameter %v4float
+ %a_Normal = OpFunctionParameter %v3float
+%a_PosMtxIdx = OpFunctionParameter %float
+ %370 = OpLabel
+ OpStore %a_Position1 %a_Position
+ OpStore %a_UV1 %a_UV
+ OpStore %a_Color1 %a_Color
+ OpStore %a_Normal1 %a_Normal
+ OpStore %a_PosMtxIdx1 %a_PosMtxIdx
+ %371 = OpFunctionCall %void %main1
+ %372 = OpLoad %v4float %v_Color
+ %373 = OpLoad %v2float %v_TexCoord
+ %374 = OpLoad %v4float %gl_Position
+ %375 = OpCompositeConstruct %VertexOutput %372 %373 %374
+ OpReturnValue %375
OpFunctionEnd
%main = OpFunction %void None %291
- %371 = OpLabel
- OpStore %tint_pointsize %float_1
- %372 = OpLoad %v3float %tint_symbol
- OpStore %a_Position1 %372
- %373 = OpLoad %v2float %tint_symbol_1
- OpStore %a_UV1 %373
- %374 = OpLoad %v4float %tint_symbol_2
- OpStore %a_Color1 %374
- %375 = OpLoad %v3float %tint_symbol_3
- OpStore %a_Normal1 %375
- %376 = OpLoad %float %tint_symbol_4
- OpStore %a_PosMtxIdx1 %376
- %377 = OpFunctionCall %void %main1
- %378 = OpLoad %v4float %v_Color
- %379 = OpLoad %v2float %v_TexCoord
- %380 = OpLoad %v4float %gl_Position
- %382 = OpCompositeConstruct %VertexOutput %378 %379 %380
- %381 = OpFunctionCall %void %tint_symbol_9 %382
+ %377 = OpLabel
+ %379 = OpLoad %v3float %a_Position_1
+ %380 = OpLoad %v2float %a_UV_1
+ %381 = OpLoad %v4float %a_Color_1
+ %382 = OpLoad %v3float %a_Normal_1
+ %383 = OpLoad %float %a_PosMtxIdx_1
+ %378 = OpFunctionCall %VertexOutput %main_inner %379 %380 %381 %382 %383
+ %384 = OpCompositeExtract %v4float %378 0
+ OpStore %v_Color_1 %384
+ %385 = OpCompositeExtract %v2float %378 1
+ OpStore %v_TexCoord_1 %385
+ %386 = OpCompositeExtract %v4float %378 2
+ OpStore %member_1 %386
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/926.wgsl.expected.spvasm b/test/bug/tint/926.wgsl.expected.spvasm
index 5389a2c..8b29d27 100644
--- a/test/bug/tint/926.wgsl.expected.spvasm
+++ b/test/bug/tint/926.wgsl.expected.spvasm
@@ -1,41 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 21
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %computeMain "computeMain"
+ OpEntryPoint GLCompute %computeMain "computeMain" %global_id_1
OpExecutionMode %computeMain LocalSize 1 1 1
+ OpName %global_id_1 "global_id_1"
OpName %DrawIndirectArgs "DrawIndirectArgs"
OpMemberName %DrawIndirectArgs 0 "vertexCount"
OpName %drawOut "drawOut"
OpName %cubeVerts "cubeVerts"
- OpName %tint_symbol "tint_symbol"
+ OpName %computeMain_inner "computeMain_inner"
+ OpName %global_id "global_id"
OpName %computeMain "computeMain"
+ OpDecorate %global_id_1 BuiltIn GlobalInvocationId
OpDecorate %DrawIndirectArgs Block
OpMemberDecorate %DrawIndirectArgs 0 Offset 0
OpDecorate %drawOut DescriptorSet 0
OpDecorate %drawOut Binding 5
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%global_id_1 = OpVariable %_ptr_Input_v3uint Input
%DrawIndirectArgs = OpTypeStruct %uint
%_ptr_StorageBuffer_DrawIndirectArgs = OpTypePointer StorageBuffer %DrawIndirectArgs
%drawOut = OpVariable %_ptr_StorageBuffer_DrawIndirectArgs StorageBuffer
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%cubeVerts = OpVariable %_ptr_Private_uint Private %uint_0
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %11 = OpTypeFunction %void
+ %11 = OpTypeFunction %void %v3uint
%uint_1 = OpConstant %uint 1
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
-%computeMain = OpFunction %void None %11
- %14 = OpLabel
- %19 = OpAccessChain %_ptr_StorageBuffer_uint %drawOut %uint_0
- %20 = OpLoad %uint %cubeVerts
- %15 = OpAtomicIAdd %uint %19 %uint_1 %uint_0 %20
+ %22 = OpTypeFunction %void
+%computeMain_inner = OpFunction %void None %11
+ %global_id = OpFunctionParameter %v3uint
+ %15 = OpLabel
+ %20 = OpAccessChain %_ptr_StorageBuffer_uint %drawOut %uint_0
+ %21 = OpLoad %uint %cubeVerts
+ %16 = OpAtomicIAdd %uint %20 %uint_1 %uint_0 %21
+ OpReturn
+ OpFunctionEnd
+%computeMain = OpFunction %void None %22
+ %24 = OpLabel
+ %26 = OpLoad %v3uint %global_id_1
+ %25 = OpFunctionCall %void %computeMain_inner %26
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/942.wgsl.expected.spvasm b/test/bug/tint/942.wgsl.expected.spvasm
index 29414dc..0111307 100644
--- a/test/bug/tint/942.wgsl.expected.spvasm
+++ b/test/bug/tint/942.wgsl.expected.spvasm
@@ -1,13 +1,16 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 254
+; Bound: 259
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol_2 %tint_symbol %tint_symbol_1
+ OpEntryPoint GLCompute %main "main" %WorkGroupID_1 %LocalInvocationID_1 %local_invocation_index_1
OpExecutionMode %main LocalSize 64 1 1
+ OpName %WorkGroupID_1 "WorkGroupID_1"
+ OpName %LocalInvocationID_1 "LocalInvocationID_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %samp "samp"
OpName %Params "Params"
OpMemberName %Params 0 "filterDim"
@@ -19,10 +22,10 @@
OpMemberName %Flip 0 "value"
OpName %flip "flip"
OpName %tile "tile"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %WorkGroupID "WorkGroupID"
+ OpName %LocalInvocationID "LocalInvocationID"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
OpName %r "r"
OpName %c "c"
@@ -33,6 +36,10 @@
OpName %acc "acc"
OpName %f "f"
OpName %i "i"
+ OpName %main "main"
+ OpDecorate %WorkGroupID_1 BuiltIn WorkgroupId
+ OpDecorate %LocalInvocationID_1 BuiltIn LocalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %samp DescriptorSet 0
OpDecorate %samp Binding 0
OpDecorate %Params Block
@@ -53,23 +60,26 @@
OpDecorate %flip Binding 3
OpDecorate %_arr_v3float_uint_256 ArrayStride 16
OpDecorate %_arr__arr_v3float_uint_256_uint_4 ArrayStride 4096
- OpDecorate %tint_symbol BuiltIn WorkgroupId
- OpDecorate %tint_symbol_1 BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_2 BuiltIn LocalInvocationIndex
- %3 = OpTypeSampler
-%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
- %samp = OpVariable %_ptr_UniformConstant_3 UniformConstant
%uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%WorkGroupID_1 = OpVariable %_ptr_Input_v3uint Input
+%LocalInvocationID_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
+ %10 = OpTypeSampler
+%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
+ %samp = OpVariable %_ptr_UniformConstant_10 UniformConstant
%Params = OpTypeStruct %uint %uint
%_ptr_Uniform_Params = OpTypePointer Uniform %Params
%params = OpVariable %_ptr_Uniform_Params Uniform
%float = OpTypeFloat 32
- %10 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %inputTex = OpVariable %_ptr_UniformConstant_10 UniformConstant
- %14 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
- %outputTex = OpVariable %_ptr_UniformConstant_14 UniformConstant
+ %16 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_16 = OpTypePointer UniformConstant %16
+ %inputTex = OpVariable %_ptr_UniformConstant_16 UniformConstant
+ %20 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_20 = OpTypePointer UniformConstant %20
+ %outputTex = OpVariable %_ptr_UniformConstant_20 UniformConstant
%Flip = OpTypeStruct %uint
%_ptr_Uniform_Flip = OpTypePointer Uniform %Flip
%flip = OpVariable %_ptr_Uniform_Flip Uniform
@@ -80,20 +90,14 @@
%_arr__arr_v3float_uint_256_uint_4 = OpTypeArray %_arr_v3float_uint_256 %uint_4
%_ptr_Workgroup__arr__arr_v3float_uint_256_uint_4 = OpTypePointer Workgroup %_arr__arr_v3float_uint_256_uint_4
%tile = OpVariable %_ptr_Workgroup__arr__arr_v3float_uint_256_uint_4 Workgroup
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v3uint Input
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %31 = OpTypeFunction %void
+ %31 = OpTypeFunction %void %v3uint %v3uint %uint
%_ptr_Function_uint = OpTypePointer Function %uint
- %38 = OpConstantNull %uint
+ %40 = OpConstantNull %uint
%uint_1024 = OpConstant %uint 1024
%bool = OpTypeBool
%_ptr_Workgroup_v3float = OpTypePointer Workgroup %v3float
- %56 = OpConstantNull %v3float
+ %58 = OpConstantNull %v3float
%uint_64 = OpConstant %uint 64
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
@@ -108,76 +112,77 @@
%_ptr_Function_v2int = OpTypePointer Function %v2int
%119 = OpConstantNull %v2int
%v4float = OpTypeVector %float 4
- %138 = OpTypeSampledImage %10
+ %137 = OpTypeSampledImage %16
%v2float = OpTypeVector %float 2
%float_0_25 = OpConstant %float 0.25
- %144 = OpConstantComposite %v2float %float_0_25 %float_0_25
+ %143 = OpConstantComposite %v2float %float_0_25 %float_0_25
%float_0 = OpConstant %float 0
%v2bool = OpTypeVector %bool 2
- %209 = OpConstantComposite %v3float %float_0 %float_0 %float_0
+ %207 = OpConstantComposite %v3float %float_0 %float_0 %float_0
%_ptr_Function_v3float = OpTypePointer Function %v3float
%float_1 = OpConstant %float 1
- %main = OpFunction %void None %31
- %34 = OpLabel
- %idx = OpVariable %_ptr_Function_uint Function %38
- %r = OpVariable %_ptr_Function_uint Function %38
- %c = OpVariable %_ptr_Function_uint Function %38
+ %252 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %31
+%WorkGroupID = OpFunctionParameter %v3uint
+%LocalInvocationID = OpFunctionParameter %v3uint
+%local_invocation_index = OpFunctionParameter %uint
+ %37 = OpLabel
+ %idx = OpVariable %_ptr_Function_uint Function %40
+ %r = OpVariable %_ptr_Function_uint Function %40
+ %c = OpVariable %_ptr_Function_uint Function %40
%loadIndex = OpVariable %_ptr_Function_v2int Function %119
- %r_0 = OpVariable %_ptr_Function_uint Function %38
- %c_0 = OpVariable %_ptr_Function_uint Function %38
+ %r_0 = OpVariable %_ptr_Function_uint Function %40
+ %c_0 = OpVariable %_ptr_Function_uint Function %40
%writeIndex = OpVariable %_ptr_Function_v2int Function %119
- %acc = OpVariable %_ptr_Function_v3float Function %56
- %f = OpVariable %_ptr_Function_uint Function %38
- %i = OpVariable %_ptr_Function_uint Function %38
- %35 = OpLoad %uint %tint_symbol_2
- OpStore %idx %35
- OpBranch %39
- %39 = OpLabel
- OpLoopMerge %40 %41 None
- OpBranch %42
- %42 = OpLabel
- %44 = OpLoad %uint %idx
- %46 = OpULessThan %bool %44 %uint_1024
- %43 = OpLogicalNot %bool %46
- OpSelectionMerge %48 None
- OpBranchConditional %43 %49 %48
- %49 = OpLabel
- OpBranch %40
- %48 = OpLabel
- %50 = OpLoad %uint %idx
- %51 = OpUDiv %uint %50 %uint_256
- %52 = OpLoad %uint %idx
- %53 = OpUMod %uint %52 %uint_256
- %55 = OpAccessChain %_ptr_Workgroup_v3float %tile %51 %53
- OpStore %55 %56
+ %acc = OpVariable %_ptr_Function_v3float Function %58
+ %f = OpVariable %_ptr_Function_uint Function %40
+ %i = OpVariable %_ptr_Function_uint Function %40
+ OpStore %idx %local_invocation_index
OpBranch %41
%41 = OpLabel
- %57 = OpLoad %uint %idx
- %59 = OpIAdd %uint %57 %uint_64
- OpStore %idx %59
- OpBranch %39
- %40 = OpLabel
+ OpLoopMerge %42 %43 None
+ OpBranch %44
+ %44 = OpLabel
+ %46 = OpLoad %uint %idx
+ %48 = OpULessThan %bool %46 %uint_1024
+ %45 = OpLogicalNot %bool %48
+ OpSelectionMerge %50 None
+ OpBranchConditional %45 %51 %50
+ %51 = OpLabel
+ OpBranch %42
+ %50 = OpLabel
+ %52 = OpLoad %uint %idx
+ %53 = OpUDiv %uint %52 %uint_256
+ %54 = OpLoad %uint %idx
+ %55 = OpUMod %uint %54 %uint_256
+ %57 = OpAccessChain %_ptr_Workgroup_v3float %tile %53 %55
+ OpStore %57 %58
+ OpBranch %43
+ %43 = OpLabel
+ %59 = OpLoad %uint %idx
+ %61 = OpIAdd %uint %59 %uint_64
+ OpStore %idx %61
+ OpBranch %41
+ %42 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
- %65 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
- %66 = OpLoad %uint %65
- %68 = OpISub %uint %66 %uint_1
- %69 = OpUDiv %uint %68 %uint_2
- %73 = OpLoad %10 %inputTex
- %70 = OpImageQuerySizeLod %v2int %73 %int_0
- %77 = OpLoad %v3uint %tint_symbol
- %78 = OpVectorShuffle %v2uint %77 %77 0 1
- %79 = OpAccessChain %_ptr_Uniform_uint %params %uint_1
- %80 = OpLoad %uint %79
- %81 = OpCompositeConstruct %v2uint %80 %uint_4
- %82 = OpIMul %v2uint %78 %81
- %83 = OpLoad %v3uint %tint_symbol_1
- %84 = OpVectorShuffle %v2uint %83 %83 0 1
+ %67 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
+ %68 = OpLoad %uint %67
+ %70 = OpISub %uint %68 %uint_1
+ %71 = OpUDiv %uint %70 %uint_2
+ %75 = OpLoad %16 %inputTex
+ %72 = OpImageQuerySizeLod %v2int %75 %int_0
+ %79 = OpVectorShuffle %v2uint %WorkGroupID %WorkGroupID 0 1
+ %80 = OpAccessChain %_ptr_Uniform_uint %params %uint_1
+ %81 = OpLoad %uint %80
+ %82 = OpCompositeConstruct %v2uint %81 %uint_4
+ %83 = OpIMul %v2uint %79 %82
+ %84 = OpVectorShuffle %v2uint %LocalInvocationID %LocalInvocationID 0 1
%86 = OpIMul %v2uint %84 %85
- %87 = OpIAdd %v2uint %82 %86
- %75 = OpBitcast %v2int %87
- %88 = OpBitcast %int %69
+ %87 = OpIAdd %v2uint %83 %86
+ %77 = OpBitcast %v2int %87
+ %88 = OpBitcast %int %71
%89 = OpCompositeConstruct %v2int %88 %int_0
- %90 = OpISub %v2int %75 %89
+ %90 = OpISub %v2int %77 %89
OpStore %r %uint_0
OpBranch %92
%92 = OpLabel
@@ -225,173 +230,179 @@
OpBranch %123
%123 = OpLabel
%127 = OpLoad %uint %r
- %128 = OpAccessChain %_ptr_Input_uint %tint_symbol_1 %uint_0
- %129 = OpLoad %uint %128
- %130 = OpIMul %uint %uint_4 %129
- %131 = OpLoad %uint %c
- %132 = OpIAdd %uint %130 %131
- %133 = OpAccessChain %_ptr_Workgroup_v3float %tile %127 %132
- %136 = OpLoad %3 %samp
- %137 = OpLoad %10 %inputTex
- %139 = OpSampledImage %138 %137 %136
- %142 = OpLoad %v2int %loadIndex
- %140 = OpConvertSToF %v2float %142
- %145 = OpFAdd %v2float %140 %144
- %146 = OpConvertSToF %v2float %70
- %147 = OpFDiv %v2float %145 %146
- %134 = OpImageSampleExplicitLod %v4float %139 %147 Lod %float_0
- %149 = OpVectorShuffle %v3float %134 %134 0 1 2
- OpStore %133 %149
+ %128 = OpCompositeExtract %uint %LocalInvocationID 0
+ %129 = OpIMul %uint %uint_4 %128
+ %130 = OpLoad %uint %c
+ %131 = OpIAdd %uint %129 %130
+ %132 = OpAccessChain %_ptr_Workgroup_v3float %tile %127 %131
+ %135 = OpLoad %10 %samp
+ %136 = OpLoad %16 %inputTex
+ %138 = OpSampledImage %137 %136 %135
+ %141 = OpLoad %v2int %loadIndex
+ %139 = OpConvertSToF %v2float %141
+ %144 = OpFAdd %v2float %139 %143
+ %145 = OpConvertSToF %v2float %72
+ %146 = OpFDiv %v2float %144 %145
+ %133 = OpImageSampleExplicitLod %v4float %138 %146 Lod %float_0
+ %148 = OpVectorShuffle %v3float %133 %133 0 1 2
+ OpStore %132 %148
OpBranch %104
%104 = OpLabel
- %150 = OpLoad %uint %c
- %151 = OpIAdd %uint %150 %uint_1
- OpStore %c %151
+ %149 = OpLoad %uint %c
+ %150 = OpIAdd %uint %149 %uint_1
+ OpStore %c %150
OpBranch %102
%103 = OpLabel
OpBranch %94
%94 = OpLabel
- %152 = OpLoad %uint %r
- %153 = OpIAdd %uint %152 %uint_1
- OpStore %r %153
+ %151 = OpLoad %uint %r
+ %152 = OpIAdd %uint %151 %uint_1
+ OpStore %r %152
OpBranch %92
%93 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
OpStore %r_0 %uint_0
- OpBranch %156
- %156 = OpLabel
- OpLoopMerge %157 %158 None
- OpBranch %159
- %159 = OpLabel
- %161 = OpLoad %uint %r_0
- %162 = OpULessThan %bool %161 %uint_4
- %160 = OpLogicalNot %bool %162
- OpSelectionMerge %163 None
- OpBranchConditional %160 %164 %163
- %164 = OpLabel
- OpBranch %157
- %163 = OpLabel
- OpStore %c_0 %uint_0
- OpBranch %166
- %166 = OpLabel
- OpLoopMerge %167 %168 None
- OpBranch %169
- %169 = OpLabel
- %171 = OpLoad %uint %c_0
- %172 = OpULessThan %bool %171 %uint_4
- %170 = OpLogicalNot %bool %172
- OpSelectionMerge %173 None
- OpBranchConditional %170 %174 %173
- %174 = OpLabel
- OpBranch %167
- %173 = OpLabel
- %176 = OpLoad %uint %c_0
- %175 = OpBitcast %int %176
- %178 = OpLoad %uint %r_0
- %177 = OpBitcast %int %178
- %179 = OpCompositeConstruct %v2int %175 %177
- %180 = OpIAdd %v2int %90 %179
- OpStore %writeIndex %180
- %182 = OpAccessChain %_ptr_Uniform_uint %flip %uint_0
- %183 = OpLoad %uint %182
- %184 = OpINotEqual %bool %183 %uint_0
- OpSelectionMerge %185 None
- OpBranchConditional %184 %186 %185
- %186 = OpLabel
- %187 = OpLoad %v2int %writeIndex
- %188 = OpVectorShuffle %v2int %187 %187 1 0
- OpStore %writeIndex %188
- OpBranch %185
- %185 = OpLabel
- %189 = OpAccessChain %_ptr_Input_uint %tint_symbol_1 %uint_0
- %190 = OpLoad %uint %189
- %191 = OpIMul %uint %uint_4 %190
- %192 = OpLoad %uint %c_0
- %193 = OpIAdd %uint %191 %192
- %194 = OpUGreaterThanEqual %bool %193 %69
- OpSelectionMerge %195 None
- OpBranchConditional %194 %196 %195
- %196 = OpLabel
- %197 = OpISub %uint %uint_256 %69
- %198 = OpULessThan %bool %193 %197
- OpBranch %195
- %195 = OpLabel
- %199 = OpPhi %bool %194 %185 %198 %196
- OpSelectionMerge %200 None
- OpBranchConditional %199 %201 %200
- %201 = OpLabel
- %203 = OpLoad %v2int %writeIndex
- %204 = OpSLessThan %v2bool %203 %70
- %202 = OpAll %bool %204
- OpBranch %200
- %200 = OpLabel
- %206 = OpPhi %bool %199 %195 %202 %201
- OpSelectionMerge %207 None
- OpBranchConditional %206 %208 %207
- %208 = OpLabel
- OpStore %acc %209
- OpStore %f %uint_0
- OpBranch %213
- %213 = OpLabel
- OpLoopMerge %214 %215 None
- OpBranch %216
- %216 = OpLabel
- %218 = OpLoad %uint %f
- %219 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
- %220 = OpLoad %uint %219
- %221 = OpULessThan %bool %218 %220
- %217 = OpLogicalNot %bool %221
- OpSelectionMerge %222 None
- OpBranchConditional %217 %223 %222
- %223 = OpLabel
- OpBranch %214
- %222 = OpLabel
- %224 = OpLoad %uint %f
- %225 = OpIAdd %uint %193 %224
- %226 = OpISub %uint %225 %69
- OpStore %i %226
- %228 = OpLoad %v3float %acc
- %231 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
- %232 = OpLoad %uint %231
- %230 = OpConvertUToF %float %232
- %233 = OpFDiv %float %float_1 %230
- %234 = OpLoad %uint %r_0
- %235 = OpLoad %uint %i
- %236 = OpAccessChain %_ptr_Workgroup_v3float %tile %234 %235
- %237 = OpLoad %v3float %236
- %238 = OpVectorTimesScalar %v3float %237 %233
- %239 = OpFAdd %v3float %228 %238
- OpStore %acc %239
- OpBranch %215
- %215 = OpLabel
- %240 = OpLoad %uint %f
- %241 = OpIAdd %uint %240 %uint_1
- OpStore %f %241
- OpBranch %213
- %214 = OpLabel
- %243 = OpLoad %14 %outputTex
- %244 = OpLoad %v2int %writeIndex
- %245 = OpLoad %v3float %acc
- %246 = OpCompositeExtract %float %245 0
- %247 = OpCompositeExtract %float %245 1
- %248 = OpCompositeExtract %float %245 2
- %249 = OpCompositeConstruct %v4float %246 %247 %248 %float_1
- OpImageWrite %243 %244 %249
- OpBranch %207
- %207 = OpLabel
- OpBranch %168
- %168 = OpLabel
- %250 = OpLoad %uint %c_0
- %251 = OpIAdd %uint %250 %uint_1
- OpStore %c_0 %251
- OpBranch %166
- %167 = OpLabel
+ OpBranch %155
+ %155 = OpLabel
+ OpLoopMerge %156 %157 None
OpBranch %158
%158 = OpLabel
- %252 = OpLoad %uint %r_0
- %253 = OpIAdd %uint %252 %uint_1
- OpStore %r_0 %253
+ %160 = OpLoad %uint %r_0
+ %161 = OpULessThan %bool %160 %uint_4
+ %159 = OpLogicalNot %bool %161
+ OpSelectionMerge %162 None
+ OpBranchConditional %159 %163 %162
+ %163 = OpLabel
OpBranch %156
+ %162 = OpLabel
+ OpStore %c_0 %uint_0
+ OpBranch %165
+ %165 = OpLabel
+ OpLoopMerge %166 %167 None
+ OpBranch %168
+ %168 = OpLabel
+ %170 = OpLoad %uint %c_0
+ %171 = OpULessThan %bool %170 %uint_4
+ %169 = OpLogicalNot %bool %171
+ OpSelectionMerge %172 None
+ OpBranchConditional %169 %173 %172
+ %173 = OpLabel
+ OpBranch %166
+ %172 = OpLabel
+ %175 = OpLoad %uint %c_0
+ %174 = OpBitcast %int %175
+ %177 = OpLoad %uint %r_0
+ %176 = OpBitcast %int %177
+ %178 = OpCompositeConstruct %v2int %174 %176
+ %179 = OpIAdd %v2int %90 %178
+ OpStore %writeIndex %179
+ %181 = OpAccessChain %_ptr_Uniform_uint %flip %uint_0
+ %182 = OpLoad %uint %181
+ %183 = OpINotEqual %bool %182 %uint_0
+ OpSelectionMerge %184 None
+ OpBranchConditional %183 %185 %184
+ %185 = OpLabel
+ %186 = OpLoad %v2int %writeIndex
+ %187 = OpVectorShuffle %v2int %186 %186 1 0
+ OpStore %writeIndex %187
+ OpBranch %184
+ %184 = OpLabel
+ %188 = OpCompositeExtract %uint %LocalInvocationID 0
+ %189 = OpIMul %uint %uint_4 %188
+ %190 = OpLoad %uint %c_0
+ %191 = OpIAdd %uint %189 %190
+ %192 = OpUGreaterThanEqual %bool %191 %71
+ OpSelectionMerge %193 None
+ OpBranchConditional %192 %194 %193
+ %194 = OpLabel
+ %195 = OpISub %uint %uint_256 %71
+ %196 = OpULessThan %bool %191 %195
+ OpBranch %193
+ %193 = OpLabel
+ %197 = OpPhi %bool %192 %184 %196 %194
+ OpSelectionMerge %198 None
+ OpBranchConditional %197 %199 %198
+ %199 = OpLabel
+ %201 = OpLoad %v2int %writeIndex
+ %202 = OpSLessThan %v2bool %201 %72
+ %200 = OpAll %bool %202
+ OpBranch %198
+ %198 = OpLabel
+ %204 = OpPhi %bool %197 %193 %200 %199
+ OpSelectionMerge %205 None
+ OpBranchConditional %204 %206 %205
+ %206 = OpLabel
+ OpStore %acc %207
+ OpStore %f %uint_0
+ OpBranch %211
+ %211 = OpLabel
+ OpLoopMerge %212 %213 None
+ OpBranch %214
+ %214 = OpLabel
+ %216 = OpLoad %uint %f
+ %217 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
+ %218 = OpLoad %uint %217
+ %219 = OpULessThan %bool %216 %218
+ %215 = OpLogicalNot %bool %219
+ OpSelectionMerge %220 None
+ OpBranchConditional %215 %221 %220
+ %221 = OpLabel
+ OpBranch %212
+ %220 = OpLabel
+ %222 = OpLoad %uint %f
+ %223 = OpIAdd %uint %191 %222
+ %224 = OpISub %uint %223 %71
+ OpStore %i %224
+ %226 = OpLoad %v3float %acc
+ %229 = OpAccessChain %_ptr_Uniform_uint %params %uint_0
+ %230 = OpLoad %uint %229
+ %228 = OpConvertUToF %float %230
+ %231 = OpFDiv %float %float_1 %228
+ %232 = OpLoad %uint %r_0
+ %233 = OpLoad %uint %i
+ %234 = OpAccessChain %_ptr_Workgroup_v3float %tile %232 %233
+ %235 = OpLoad %v3float %234
+ %236 = OpVectorTimesScalar %v3float %235 %231
+ %237 = OpFAdd %v3float %226 %236
+ OpStore %acc %237
+ OpBranch %213
+ %213 = OpLabel
+ %238 = OpLoad %uint %f
+ %239 = OpIAdd %uint %238 %uint_1
+ OpStore %f %239
+ OpBranch %211
+ %212 = OpLabel
+ %241 = OpLoad %20 %outputTex
+ %242 = OpLoad %v2int %writeIndex
+ %243 = OpLoad %v3float %acc
+ %244 = OpCompositeExtract %float %243 0
+ %245 = OpCompositeExtract %float %243 1
+ %246 = OpCompositeExtract %float %243 2
+ %247 = OpCompositeConstruct %v4float %244 %245 %246 %float_1
+ OpImageWrite %241 %242 %247
+ OpBranch %205
+ %205 = OpLabel
+ OpBranch %167
+ %167 = OpLabel
+ %248 = OpLoad %uint %c_0
+ %249 = OpIAdd %uint %248 %uint_1
+ OpStore %c_0 %249
+ OpBranch %165
+ %166 = OpLabel
+ OpBranch %157
%157 = OpLabel
+ %250 = OpLoad %uint %r_0
+ %251 = OpIAdd %uint %250 %uint_1
+ OpStore %r_0 %251
+ OpBranch %155
+ %156 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %252
+ %254 = OpLabel
+ %256 = OpLoad %v3uint %WorkGroupID_1
+ %257 = OpLoad %v3uint %LocalInvocationID_1
+ %258 = OpLoad %uint %local_invocation_index_1
+ %255 = OpFunctionCall %void %main_inner %256 %257 %258
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/943.spvasm.expected.spvasm b/test/bug/tint/943.spvasm.expected.spvasm
index 252bb7a..315f30e 100644
--- a/test/bug/tint/943.spvasm.expected.spvasm
+++ b/test/bug/tint/943.spvasm.expected.spvasm
@@ -1,12 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 628
+; Bound: 633
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol_2 %tint_symbol %tint_symbol_1
+ OpEntryPoint GLCompute %main "main" %gl_LocalInvocationID_param_1 %gl_GlobalInvocationID_param_1 %local_invocation_index_1
OpExecutionMode %main LocalSize 1 64 1
+ OpName %gl_LocalInvocationID_param_1 "gl_LocalInvocationID_param_1"
+ OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %dimAOuter_1 "dimAOuter_1"
OpName %Uniforms "Uniforms"
OpMemberName %Uniforms 0 "NAN"
@@ -31,9 +34,6 @@
OpName %ssbB "ssbB"
OpMemberName %ssbB 0 "B"
OpName %x_185 "x_185"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %coordsInBounds_vi2_vi2_ "coordsInBounds_vi2_vi2_"
OpName %coord "coord"
OpName %shape "shape"
@@ -120,8 +120,15 @@
OpName %param_18 "param_18"
OpName %param_19 "param_19"
OpName %param_20 "param_20"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %gl_LocalInvocationID_param "gl_LocalInvocationID_param"
+ OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
+ OpName %main "main"
+ OpDecorate %gl_LocalInvocationID_param_1 BuiltIn LocalInvocationId
+ OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %Uniforms Block
OpMemberDecorate %Uniforms 0 Offset 0
OpMemberDecorate %Uniforms 1 Offset 16
@@ -150,32 +157,34 @@
OpDecorate %x_185 NonWritable
OpDecorate %x_185 DescriptorSet 0
OpDecorate %x_185 Binding 2
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_1 BuiltIn GlobalInvocationId
- OpDecorate %tint_symbol_2 BuiltIn LocalInvocationIndex
OpDecorate %_arr__arr_float_uint_1_uint_1 ArrayStride 4
+ %uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_LocalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
+%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%dimAOuter_1 = OpVariable %_ptr_Private_int Private %4
+ %11 = OpConstantNull %int
+%dimAOuter_1 = OpVariable %_ptr_Private_int Private %11
%float = OpTypeFloat 32
%v3int = OpTypeVector %int 3
%v2int = OpTypeVector %int 2
%Uniforms = OpTypeStruct %float %v3int %v3int %v3int %v2int
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%x_48 = OpVariable %_ptr_Uniform_Uniforms Uniform
- %dimInner_1 = OpVariable %_ptr_Private_int Private %4
-%dimBOuter_1 = OpVariable %_ptr_Private_int Private %4
+ %dimInner_1 = OpVariable %_ptr_Private_int Private %11
+%dimBOuter_1 = OpVariable %_ptr_Private_int Private %11
%_runtimearr_float = OpTypeRuntimeArray %float
%ssbOut = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_ssbOut = OpTypePointer StorageBuffer %ssbOut
%x_54 = OpVariable %_ptr_StorageBuffer_ssbOut StorageBuffer
- %uint = OpTypeInt 32 0
- %v3uint = OpTypeVector %uint 3
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %21 = OpConstantNull %v3uint
-%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %21
-%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %21
+ %26 = OpConstantNull %v3uint
+%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %26
+%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %26
%uint_64 = OpConstant %uint 64
%_arr_float_uint_64 = OpTypeArray %float %uint_64
%_arr__arr_float_uint_64_uint_64 = OpTypeArray %_arr_float_uint_64 %uint_64
@@ -189,15 +198,10 @@
%ssbA = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_ssbA = OpTypePointer StorageBuffer %ssbA
%x_165 = OpVariable %_ptr_StorageBuffer_ssbA StorageBuffer
- %batch = OpVariable %_ptr_Private_int Private %4
+ %batch = OpVariable %_ptr_Private_int Private %11
%ssbB = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_ssbB = OpTypePointer StorageBuffer %ssbB
%x_185 = OpVariable %_ptr_StorageBuffer_ssbB StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v3uint Input
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
%bool = OpTypeBool
%_ptr_Function_v2int = OpTypePointer Function %v2int
%45 = OpTypeFunction %bool %_ptr_Function_v2int %_ptr_Function_v2int
@@ -237,8 +241,9 @@
%_ptr_Workgroup_float = OpTypePointer Workgroup %float
%uint_264 = OpConstant %uint 264
%575 = OpTypeFunction %void
+ %597 = OpTypeFunction %void %v3uint %v3uint %uint
%_ptr_Function_uint = OpTypePointer Function %uint
- %606 = OpConstantNull %uint
+ %607 = OpConstantNull %uint
%uint_4096 = OpConstant %uint 4096
%coordsInBounds_vi2_vi2_ = OpFunction %bool None %45
%coord = OpFunctionParameter %_ptr_Function_v2int
@@ -269,7 +274,7 @@
%row = OpFunctionParameter %_ptr_Function_int
%col = OpFunctionParameter %_ptr_Function_int
%78 = OpLabel
- %batchASize = OpVariable %_ptr_Function_int Function %4
+ %batchASize = OpVariable %_ptr_Function_int Function %11
%param_10 = OpVariable %_ptr_Function_v2int Function %81
%param_11 = OpVariable %_ptr_Function_v2int Function %81
%x_430 = OpVariable %_ptr_Function_float Function %85
@@ -315,7 +320,7 @@
%row_1 = OpFunctionParameter %_ptr_Function_int
%col_1 = OpFunctionParameter %_ptr_Function_int
%127 = OpLabel
- %batchBSize = OpVariable %_ptr_Function_int Function %4
+ %batchBSize = OpVariable %_ptr_Function_int Function %11
%param_12 = OpVariable %_ptr_Function_v2int Function %81
%param_13 = OpVariable %_ptr_Function_v2int Function %81
%x_468 = OpVariable %_ptr_Function_float Function %85
@@ -388,9 +393,9 @@
%d2 = OpFunctionParameter %_ptr_Function_int
%value_1 = OpFunctionParameter %_ptr_Function_float
%201 = OpLabel
-%flatIndex_1 = OpVariable %_ptr_Function_int Function %4
+%flatIndex_1 = OpVariable %_ptr_Function_int Function %11
%param = OpVariable %_ptr_Function_v3int Function %204
- %param_1 = OpVariable %_ptr_Function_int Function %4
+ %param_1 = OpVariable %_ptr_Function_int Function %11
%param_2 = OpVariable %_ptr_Function_float Function %85
%208 = OpLoad %int %d0
%210 = OpLoad %int %d1
@@ -412,9 +417,9 @@
%value_2 = OpFunctionParameter %_ptr_Function_float
%227 = OpLabel
%outCoord = OpVariable %_ptr_Function_v3int Function %204
- %param_14 = OpVariable %_ptr_Function_int Function %4
- %param_15 = OpVariable %_ptr_Function_int Function %4
- %param_16 = OpVariable %_ptr_Function_int Function %4
+ %param_14 = OpVariable %_ptr_Function_int Function %11
+ %param_15 = OpVariable %_ptr_Function_int Function %11
+ %param_16 = OpVariable %_ptr_Function_int Function %11
%param_17 = OpVariable %_ptr_Function_float Function %85
%233 = OpLoad %int %batch
%235 = OpLoad %int %row_2
@@ -437,39 +442,39 @@
%dimInner = OpFunctionParameter %_ptr_Function_int
%dimBOuter = OpFunctionParameter %_ptr_Function_int
%256 = OpLabel
- %tileRow = OpVariable %_ptr_Function_int Function %4
- %tileCol = OpVariable %_ptr_Function_int Function %4
- %globalRow = OpVariable %_ptr_Function_int Function %4
- %globalCol = OpVariable %_ptr_Function_int Function %4
- %numTiles = OpVariable %_ptr_Function_int Function %4
- %innerRow = OpVariable %_ptr_Function_int Function %4
- %innerCol = OpVariable %_ptr_Function_int Function %4
+ %tileRow = OpVariable %_ptr_Function_int Function %11
+ %tileCol = OpVariable %_ptr_Function_int Function %11
+ %globalRow = OpVariable %_ptr_Function_int Function %11
+ %globalCol = OpVariable %_ptr_Function_int Function %11
+ %numTiles = OpVariable %_ptr_Function_int Function %11
+ %innerRow = OpVariable %_ptr_Function_int Function %11
+ %innerCol = OpVariable %_ptr_Function_int Function %11
%acc = OpVariable %_ptr_Function__arr__arr_float_uint_1_uint_1 Function %267
- %tileColA = OpVariable %_ptr_Function_int Function %4
- %tileRowB = OpVariable %_ptr_Function_int Function %4
- %t = OpVariable %_ptr_Function_int Function %4
- %innerRow_1 = OpVariable %_ptr_Function_int Function %4
- %innerCol_1 = OpVariable %_ptr_Function_int Function %4
- %inputRow = OpVariable %_ptr_Function_int Function %4
- %inputCol = OpVariable %_ptr_Function_int Function %4
- %param_3 = OpVariable %_ptr_Function_int Function %4
- %param_4 = OpVariable %_ptr_Function_int Function %4
- %innerRow_2 = OpVariable %_ptr_Function_int Function %4
- %innerCol_2 = OpVariable %_ptr_Function_int Function %4
- %inputRow_1 = OpVariable %_ptr_Function_int Function %4
- %inputCol_1 = OpVariable %_ptr_Function_int Function %4
- %param_5 = OpVariable %_ptr_Function_int Function %4
- %param_6 = OpVariable %_ptr_Function_int Function %4
- %k = OpVariable %_ptr_Function_int Function %4
- %inner = OpVariable %_ptr_Function_int Function %4
+ %tileColA = OpVariable %_ptr_Function_int Function %11
+ %tileRowB = OpVariable %_ptr_Function_int Function %11
+ %t = OpVariable %_ptr_Function_int Function %11
+ %innerRow_1 = OpVariable %_ptr_Function_int Function %11
+ %innerCol_1 = OpVariable %_ptr_Function_int Function %11
+ %inputRow = OpVariable %_ptr_Function_int Function %11
+ %inputCol = OpVariable %_ptr_Function_int Function %11
+ %param_3 = OpVariable %_ptr_Function_int Function %11
+ %param_4 = OpVariable %_ptr_Function_int Function %11
+ %innerRow_2 = OpVariable %_ptr_Function_int Function %11
+ %innerCol_2 = OpVariable %_ptr_Function_int Function %11
+ %inputRow_1 = OpVariable %_ptr_Function_int Function %11
+ %inputCol_1 = OpVariable %_ptr_Function_int Function %11
+ %param_5 = OpVariable %_ptr_Function_int Function %11
+ %param_6 = OpVariable %_ptr_Function_int Function %11
+ %k = OpVariable %_ptr_Function_int Function %11
+ %inner = OpVariable %_ptr_Function_int Function %11
%BCached = OpVariable %_ptr_Function__arr_float_uint_1 Function %287
- %innerRow_3 = OpVariable %_ptr_Function_int Function %4
+ %innerRow_3 = OpVariable %_ptr_Function_int Function %11
%ACached = OpVariable %_ptr_Function_float Function %85
- %innerCol_3 = OpVariable %_ptr_Function_int Function %4
- %innerRow_4 = OpVariable %_ptr_Function_int Function %4
- %innerCol_4 = OpVariable %_ptr_Function_int Function %4
- %param_7 = OpVariable %_ptr_Function_int Function %4
- %param_8 = OpVariable %_ptr_Function_int Function %4
+ %innerCol_3 = OpVariable %_ptr_Function_int Function %11
+ %innerRow_4 = OpVariable %_ptr_Function_int Function %11
+ %innerCol_4 = OpVariable %_ptr_Function_int Function %11
+ %param_7 = OpVariable %_ptr_Function_int Function %11
+ %param_8 = OpVariable %_ptr_Function_int Function %11
%param_9 = OpVariable %_ptr_Function_float Function %85
%x_393 = OpVariable %_ptr_Function_bool Function %54
%x_394_phi = OpVariable %_ptr_Function_bool Function %54
@@ -916,9 +921,9 @@
OpFunctionEnd
%main_1 = OpFunction %void None %575
%577 = OpLabel
- %param_18 = OpVariable %_ptr_Function_int Function %4
- %param_19 = OpVariable %_ptr_Function_int Function %4
- %param_20 = OpVariable %_ptr_Function_int Function %4
+ %param_18 = OpVariable %_ptr_Function_int Function %11
+ %param_19 = OpVariable %_ptr_Function_int Function %11
+ %param_20 = OpVariable %_ptr_Function_int Function %11
%581 = OpAccessChain %_ptr_Uniform_int %x_48 %uint_1 %uint_1
%582 = OpLoad %int %581
OpStore %dimAOuter_1 %582
@@ -941,47 +946,53 @@
%593 = OpFunctionCall %void %mm_matMul_i1_i1_i1_ %param_18 %param_19 %param_20
OpReturn
OpFunctionEnd
- %main = OpFunction %void None %575
- %598 = OpLabel
- %idx = OpVariable %_ptr_Function_uint Function %606
- %599 = OpLoad %uint %tint_symbol_2
- %600 = OpLoad %uint %tint_symbol_2
- %601 = OpUMod %uint %600 %uint_1
- %602 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %599 %601
- OpStore %602 %85
- %603 = OpLoad %uint %tint_symbol_2
- OpStore %idx %603
- OpBranch %607
- %607 = OpLabel
- OpLoopMerge %608 %609 None
+ %main_inner = OpFunction %void None %597
+%gl_LocalInvocationID_param = OpFunctionParameter %v3uint
+%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
+%local_invocation_index = OpFunctionParameter %uint
+ %602 = OpLabel
+ %idx = OpVariable %_ptr_Function_uint Function %607
+ %603 = OpUMod %uint %local_invocation_index %uint_1
+ %604 = OpAccessChain %_ptr_Workgroup_float %mm_Bsub %local_invocation_index %603
+ OpStore %604 %85
+ OpStore %idx %local_invocation_index
+ OpBranch %608
+ %608 = OpLabel
+ OpLoopMerge %609 %610 None
+ OpBranch %611
+ %611 = OpLabel
+ %613 = OpLoad %uint %idx
+ %615 = OpULessThan %bool %613 %uint_4096
+ %612 = OpLogicalNot %bool %615
+ OpSelectionMerge %616 None
+ OpBranchConditional %612 %617 %616
+ %617 = OpLabel
+ OpBranch %609
+ %616 = OpLabel
+ %618 = OpLoad %uint %idx
+ %619 = OpUDiv %uint %618 %uint_64
+ %620 = OpLoad %uint %idx
+ %621 = OpUMod %uint %620 %uint_64
+ %622 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %619 %621
+ OpStore %622 %85
OpBranch %610
%610 = OpLabel
- %612 = OpLoad %uint %idx
- %614 = OpULessThan %bool %612 %uint_4096
- %611 = OpLogicalNot %bool %614
- OpSelectionMerge %615 None
- OpBranchConditional %611 %616 %615
- %616 = OpLabel
+ %623 = OpLoad %uint %idx
+ %624 = OpIAdd %uint %623 %uint_64
+ OpStore %idx %624
OpBranch %608
- %615 = OpLabel
- %617 = OpLoad %uint %idx
- %618 = OpUDiv %uint %617 %uint_64
- %619 = OpLoad %uint %idx
- %620 = OpUMod %uint %619 %uint_64
- %621 = OpAccessChain %_ptr_Workgroup_float %mm_Asub %618 %620
- OpStore %621 %85
- OpBranch %609
%609 = OpLabel
- %622 = OpLoad %uint %idx
- %623 = OpIAdd %uint %622 %uint_64
- OpStore %idx %623
- OpBranch %607
- %608 = OpLabel
OpControlBarrier %uint_2 %uint_2 %uint_264
- %625 = OpLoad %v3uint %tint_symbol
- OpStore %gl_LocalInvocationID %625
- %626 = OpLoad %v3uint %tint_symbol_1
- OpStore %gl_GlobalInvocationID %626
- %627 = OpFunctionCall %void %main_1
+ OpStore %gl_LocalInvocationID %gl_LocalInvocationID_param
+ OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
+ %626 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %575
+ %628 = OpLabel
+ %630 = OpLoad %v3uint %gl_LocalInvocationID_param_1
+ %631 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
+ %632 = OpLoad %uint %local_invocation_index_1
+ %629 = OpFunctionCall %void %main_inner %630 %631 %632
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/948.wgsl.expected.spvasm b/test/bug/tint/948.wgsl.expected.spvasm
index 81d4524..51c0bb0 100644
--- a/test/bug/tint/948.wgsl.expected.spvasm
+++ b/test/bug/tint/948.wgsl.expected.spvasm
@@ -1,13 +1,20 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 381
+; Bound: 386
; Schema: 0
OpCapability Shader
%138 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_7
+ OpEntryPoint Fragment %main "main" %tUV_param_1 %tileID_1_param_1 %levelUnits_param_1 %stageUnits_1_param_1 %vPosition_param_1 %vUV_param_1 %glFragColor_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %tUV_param_1 "tUV_param_1"
+ OpName %tileID_1_param_1 "tileID_1_param_1"
+ OpName %levelUnits_param_1 "levelUnits_param_1"
+ OpName %stageUnits_1_param_1 "stageUnits_1_param_1"
+ OpName %vPosition_param_1 "vPosition_param_1"
+ OpName %vUV_param_1 "vUV_param_1"
+ OpName %glFragColor_1_1 "glFragColor_1_1"
OpName %LeftOver "LeftOver"
OpMemberName %LeftOver 0 "time"
OpMemberName %LeftOver 1 "padding"
@@ -36,13 +43,6 @@
OpName %stageUnits_1 "stageUnits_1"
OpName %vPosition "vPosition"
OpName %vUV "vUV"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_7 "tint_symbol_7"
OpName %getFrameData_f1_ "getFrameData_f1_"
OpName %frameID "frameID"
OpName %fX "fX"
@@ -67,9 +67,21 @@
OpName %mixed "mixed"
OpName %main_out "main_out"
OpMemberName %main_out 0 "glFragColor_1"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %main_inner "main_inner"
+ OpName %tUV_param "tUV_param"
+ OpName %tileID_1_param "tileID_1_param"
+ OpName %levelUnits_param "levelUnits_param"
+ OpName %stageUnits_1_param "stageUnits_1_param"
+ OpName %vPosition_param "vPosition_param"
+ OpName %vUV_param "vUV_param"
OpName %main "main"
+ OpDecorate %tUV_param_1 Location 2
+ OpDecorate %tileID_1_param_1 Location 5
+ OpDecorate %levelUnits_param_1 Location 4
+ OpDecorate %stageUnits_1_param_1 Location 3
+ OpDecorate %vPosition_param_1 Location 0
+ OpDecorate %vUV_param_1 Location 1
+ OpDecorate %glFragColor_1_1 Location 0
OpDecorate %LeftOver Block
OpMemberDecorate %LeftOver 0 Offset 0
OpMemberDecorate %LeftOver 1 Offset 4
@@ -103,67 +115,60 @@
OpDecorate %spriteSheetTexture Binding 1
OpDecorate %spriteSheetSampler DescriptorSet 2
OpDecorate %spriteSheetSampler Binding 0
- OpDecorate %tint_symbol Location 2
- OpDecorate %tint_symbol_1 Location 5
- OpDecorate %tint_symbol_2 Location 4
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_4 Location 0
- OpDecorate %tint_symbol_5 Location 1
- OpDecorate %tint_symbol_7 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
- %uint = OpTypeInt 32 0
- %v4float = OpTypeVector %float 4
-%mat4v4float = OpTypeMatrix %v4float 4
%v2float = OpTypeVector %float 2
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+%tUV_param_1 = OpVariable %_ptr_Input_v2float Input
+%tileID_1_param_1 = OpVariable %_ptr_Input_v2float Input
+%levelUnits_param_1 = OpVariable %_ptr_Input_v2float Input
+%stageUnits_1_param_1 = OpVariable %_ptr_Input_v2float Input
%v3float = OpTypeVector %float 3
+%_ptr_Input_v3float = OpTypePointer Input %v3float
+%vPosition_param_1 = OpVariable %_ptr_Input_v3float Input
+%vUV_param_1 = OpVariable %_ptr_Input_v2float Input
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %15 = OpConstantNull %v4float
+%glFragColor_1_1 = OpVariable %_ptr_Output_v4float Output %15
+ %uint = OpTypeInt 32 0
+%mat4v4float = OpTypeMatrix %v4float 4
%LeftOver = OpTypeStruct %float %uint %mat4v4float %v2float %v2float %v2float %float %float %v3float
%_ptr_Uniform_LeftOver = OpTypePointer Uniform %LeftOver
%x_20 = OpVariable %_ptr_Uniform_LeftOver Uniform
- %12 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
-%frameMapTexture = OpVariable %_ptr_UniformConstant_12 UniformConstant
- %15 = OpTypeSampler
-%_ptr_UniformConstant_15 = OpTypePointer UniformConstant %15
-%frameMapSampler = OpVariable %_ptr_UniformConstant_15 UniformConstant
+ %23 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_23 = OpTypePointer UniformConstant %23
+%frameMapTexture = OpVariable %_ptr_UniformConstant_23 UniformConstant
+ %26 = OpTypeSampler
+%_ptr_UniformConstant_26 = OpTypePointer UniformConstant %26
+%frameMapSampler = OpVariable %_ptr_UniformConstant_26 UniformConstant
%_ptr_Private_v2float = OpTypePointer Private %v2float
- %18 = OpConstantNull %v2float
- %tUV = OpVariable %_ptr_Private_v2float Private %18
-%tileMapsTexture0 = OpVariable %_ptr_UniformConstant_12 UniformConstant
-%tileMapsSampler = OpVariable %_ptr_UniformConstant_15 UniformConstant
-%tileMapsTexture1 = OpVariable %_ptr_UniformConstant_12 UniformConstant
-%animationMapTexture = OpVariable %_ptr_UniformConstant_12 UniformConstant
-%animationMapSampler = OpVariable %_ptr_UniformConstant_15 UniformConstant
+ %29 = OpConstantNull %v2float
+ %tUV = OpVariable %_ptr_Private_v2float Private %29
+%tileMapsTexture0 = OpVariable %_ptr_UniformConstant_23 UniformConstant
+%tileMapsSampler = OpVariable %_ptr_UniformConstant_26 UniformConstant
+%tileMapsTexture1 = OpVariable %_ptr_UniformConstant_23 UniformConstant
+%animationMapTexture = OpVariable %_ptr_UniformConstant_23 UniformConstant
+%animationMapSampler = OpVariable %_ptr_UniformConstant_26 UniformConstant
%_ptr_Private_float = OpTypePointer Private %float
- %26 = OpConstantNull %float
- %mt = OpVariable %_ptr_Private_float Private %26
-%spriteSheetTexture = OpVariable %_ptr_UniformConstant_12 UniformConstant
-%spriteSheetSampler = OpVariable %_ptr_UniformConstant_15 UniformConstant
+ %37 = OpConstantNull %float
+ %mt = OpVariable %_ptr_Private_float Private %37
+%spriteSheetTexture = OpVariable %_ptr_UniformConstant_23 UniformConstant
+%spriteSheetSampler = OpVariable %_ptr_UniformConstant_26 UniformConstant
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %31 = OpConstantNull %v4float
-%glFragColor = OpVariable %_ptr_Private_v4float Private %31
- %tileID_1 = OpVariable %_ptr_Private_v2float Private %18
- %levelUnits = OpVariable %_ptr_Private_v2float Private %18
-%stageUnits_1 = OpVariable %_ptr_Private_v2float Private %18
+%glFragColor = OpVariable %_ptr_Private_v4float Private %15
+ %tileID_1 = OpVariable %_ptr_Private_v2float Private %29
+ %levelUnits = OpVariable %_ptr_Private_v2float Private %29
+%stageUnits_1 = OpVariable %_ptr_Private_v2float Private %29
%_ptr_Private_v3float = OpTypePointer Private %v3float
- %37 = OpConstantNull %v3float
- %vPosition = OpVariable %_ptr_Private_v3float Private %37
- %vUV = OpVariable %_ptr_Private_v2float Private %18
-%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v2float Input
-%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol_4 = OpVariable %_ptr_Input_v3float Input
-%tint_symbol_5 = OpVariable %_ptr_Input_v2float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %31
+ %47 = OpConstantNull %v3float
+ %vPosition = OpVariable %_ptr_Private_v3float Private %47
+ %vUV = OpVariable %_ptr_Private_v2float Private %29
%_ptr_Function_float = OpTypePointer Function %float
%49 = OpTypeFunction %mat4v4float %_ptr_Function_float
%uint_7 = OpConstant %uint 7
%_ptr_Uniform_float = OpTypePointer Uniform %float
- %66 = OpTypeSampledImage %12
+ %66 = OpTypeSampledImage %23
%float_0 = OpConstant %float 0
%float_0_25 = OpConstant %float 0.25
%float_0_5 = OpConstant %float 0.5
@@ -197,31 +202,31 @@
%uint_8 = OpConstant %uint 8
%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
%main_out = OpTypeStruct %v4float
- %363 = OpTypeFunction %void %main_out
+ %363 = OpTypeFunction %main_out %v2float %v2float %v2float %v2float %v3float %v2float
%getFrameData_f1_ = OpFunction %mat4v4float None %49
%frameID = OpFunctionParameter %_ptr_Function_float
%53 = OpLabel
- %fX = OpVariable %_ptr_Function_float Function %26
+ %fX = OpVariable %_ptr_Function_float Function %37
%56 = OpLoad %float %frameID
%59 = OpAccessChain %_ptr_Uniform_float %x_20 %uint_7
%60 = OpLoad %float %59
%61 = OpFDiv %float %56 %60
OpStore %fX %61
%62 = OpLoad %float %fX
- %64 = OpLoad %15 %frameMapSampler
- %65 = OpLoad %12 %frameMapTexture
+ %64 = OpLoad %26 %frameMapSampler
+ %65 = OpLoad %23 %frameMapTexture
%67 = OpSampledImage %66 %65 %64
%69 = OpCompositeConstruct %v2float %62 %float_0
%63 = OpImageSampleImplicitLod %v4float %67 %69 Bias %float_0
%70 = OpLoad %float %fX
- %72 = OpLoad %15 %frameMapSampler
- %73 = OpLoad %12 %frameMapTexture
+ %72 = OpLoad %26 %frameMapSampler
+ %73 = OpLoad %23 %frameMapTexture
%74 = OpSampledImage %66 %73 %72
%76 = OpCompositeConstruct %v2float %70 %float_0_25
%71 = OpImageSampleImplicitLod %v4float %74 %76 Bias %float_0
%77 = OpLoad %float %fX
- %79 = OpLoad %15 %frameMapSampler
- %80 = OpLoad %12 %frameMapTexture
+ %79 = OpLoad %26 %frameMapSampler
+ %80 = OpLoad %23 %frameMapTexture
%81 = OpSampledImage %66 %80 %79
%83 = OpCompositeConstruct %v2float %77 %float_0_5
%78 = OpImageSampleImplicitLod %v4float %81 %83 Bias %float_0
@@ -250,24 +255,24 @@
OpFunctionEnd
%main_1 = OpFunction %void None %106
%109 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %31
- %tileUV = OpVariable %_ptr_Function_v2float Function %18
- %tileID = OpVariable %_ptr_Function_v2float Function %18
- %sheetUnits = OpVariable %_ptr_Function_v2float Function %18
-%spriteUnits = OpVariable %_ptr_Function_float Function %26
- %stageUnits = OpVariable %_ptr_Function_v2float Function %18
+ %color = OpVariable %_ptr_Function_v4float Function %15
+ %tileUV = OpVariable %_ptr_Function_v2float Function %29
+ %tileID = OpVariable %_ptr_Function_v2float Function %29
+ %sheetUnits = OpVariable %_ptr_Function_v2float Function %29
+%spriteUnits = OpVariable %_ptr_Function_float Function %37
+ %stageUnits = OpVariable %_ptr_Function_v2float Function %29
%i = OpVariable %_ptr_Function_int Function %121
- %frameID_1 = OpVariable %_ptr_Function_float Function %26
-%animationData = OpVariable %_ptr_Function_v4float Function %31
- %f = OpVariable %_ptr_Function_float Function %26
+ %frameID_1 = OpVariable %_ptr_Function_float Function %37
+%animationData = OpVariable %_ptr_Function_v4float Function %15
+ %f = OpVariable %_ptr_Function_float Function %37
%frameData = OpVariable %_ptr_Function_mat4v4float Function %127
- %param = OpVariable %_ptr_Function_float Function %26
- %frameSize = OpVariable %_ptr_Function_v2float Function %18
- %offset_1 = OpVariable %_ptr_Function_v2float Function %18
- %ratio = OpVariable %_ptr_Function_v2float Function %18
- %nc = OpVariable %_ptr_Function_v4float Function %31
- %alpha = OpVariable %_ptr_Function_float Function %26
- %mixed = OpVariable %_ptr_Function_v3float Function %37
+ %param = OpVariable %_ptr_Function_float Function %37
+ %frameSize = OpVariable %_ptr_Function_v2float Function %29
+ %offset_1 = OpVariable %_ptr_Function_v2float Function %29
+ %ratio = OpVariable %_ptr_Function_v2float Function %29
+ %nc = OpVariable %_ptr_Function_v4float Function %15
+ %alpha = OpVariable %_ptr_Function_float Function %37
+ %mixed = OpVariable %_ptr_Function_v3float Function %47
OpStore %color %99
%136 = OpLoad %v2float %tUV
%137 = OpExtInst %v2float %138 Fract %136
@@ -314,8 +319,8 @@
%177 = OpLoad %v2float %tileID
%178 = OpAccessChain %_ptr_Uniform_v2float %x_20 %uint_4
%179 = OpLoad %v2float %178
- %181 = OpLoad %15 %tileMapsSampler
- %182 = OpLoad %12 %tileMapsTexture1
+ %181 = OpLoad %26 %tileMapsSampler
+ %182 = OpLoad %23 %tileMapsTexture1
%183 = OpSampledImage %66 %182 %181
%185 = OpFAdd %v2float %177 %184
%186 = OpFDiv %v2float %185 %179
@@ -327,8 +332,8 @@
%188 = OpLoad %v2float %tileID
%189 = OpAccessChain %_ptr_Uniform_v2float %x_20 %uint_4
%190 = OpLoad %v2float %189
- %192 = OpLoad %15 %tileMapsSampler
- %193 = OpLoad %12 %tileMapsTexture0
+ %192 = OpLoad %26 %tileMapsSampler
+ %193 = OpLoad %23 %tileMapsTexture0
%194 = OpSampledImage %66 %193 %192
%195 = OpFAdd %v2float %188 %184
%196 = OpFDiv %v2float %195 %190
@@ -342,8 +347,8 @@
%198 = OpLoad %float %frameID_1
%199 = OpAccessChain %_ptr_Uniform_float %x_20 %uint_7
%200 = OpLoad %float %199
- %202 = OpLoad %15 %animationMapSampler
- %203 = OpLoad %12 %animationMapTexture
+ %202 = OpLoad %26 %animationMapSampler
+ %203 = OpLoad %23 %animationMapTexture
%204 = OpSampledImage %66 %203 %202
%205 = OpFAdd %float %198 %float_0_5
%206 = OpFDiv %float %205 %200
@@ -394,8 +399,8 @@
%240 = OpAccessChain %_ptr_Uniform_float %x_20 %uint_7
%241 = OpLoad %float %240
%242 = OpLoad %float %f
- %244 = OpLoad %15 %animationMapSampler
- %245 = OpLoad %12 %animationMapTexture
+ %244 = OpLoad %26 %animationMapSampler
+ %245 = OpLoad %23 %animationMapTexture
%246 = OpSampledImage %66 %245 %244
%247 = OpFAdd %float %239 %float_0_5
%248 = OpFDiv %float %247 %241
@@ -467,8 +472,8 @@
%298 = OpLoad %v2float %tileUV
%299 = OpLoad %v2float %frameSize
%300 = OpLoad %v2float %offset_1
- %302 = OpLoad %15 %spriteSheetSampler
- %303 = OpLoad %12 %spriteSheetTexture
+ %302 = OpLoad %26 %spriteSheetSampler
+ %303 = OpLoad %23 %spriteSheetTexture
%304 = OpSampledImage %66 %303 %302
%305 = OpFMul %v2float %298 %299
%306 = OpFAdd %v2float %305 %300
@@ -479,8 +484,8 @@
%307 = OpLoad %v2float %tileUV
%308 = OpLoad %v2float %frameSize
%309 = OpLoad %v2float %offset_1
- %311 = OpLoad %15 %spriteSheetSampler
- %312 = OpLoad %12 %spriteSheetTexture
+ %311 = OpLoad %26 %spriteSheetSampler
+ %312 = OpLoad %23 %spriteSheetTexture
%313 = OpSampledImage %66 %312 %311
%314 = OpFMul %v2float %307 %308
%315 = OpFAdd %v2float %314 %309
@@ -543,30 +548,35 @@
OpStore %glFragColor %362
OpReturn
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %363
-%tint_symbol_6 = OpFunctionParameter %main_out
- %367 = OpLabel
- %368 = OpCompositeExtract %v4float %tint_symbol_6 0
- OpStore %tint_symbol_7 %368
- OpReturn
+ %main_inner = OpFunction %main_out None %363
+ %tUV_param = OpFunctionParameter %v2float
+%tileID_1_param = OpFunctionParameter %v2float
+%levelUnits_param = OpFunctionParameter %v2float
+%stageUnits_1_param = OpFunctionParameter %v2float
+%vPosition_param = OpFunctionParameter %v3float
+ %vUV_param = OpFunctionParameter %v2float
+ %372 = OpLabel
+ OpStore %tUV %tUV_param
+ OpStore %tileID_1 %tileID_1_param
+ OpStore %levelUnits %levelUnits_param
+ OpStore %stageUnits_1 %stageUnits_1_param
+ OpStore %vPosition %vPosition_param
+ OpStore %vUV %vUV_param
+ %373 = OpFunctionCall %void %main_1
+ %374 = OpLoad %v4float %glFragColor
+ %375 = OpCompositeConstruct %main_out %374
+ OpReturnValue %375
OpFunctionEnd
%main = OpFunction %void None %106
- %370 = OpLabel
- %371 = OpLoad %v2float %tint_symbol
- OpStore %tUV %371
- %372 = OpLoad %v2float %tint_symbol_1
- OpStore %tileID_1 %372
- %373 = OpLoad %v2float %tint_symbol_2
- OpStore %levelUnits %373
- %374 = OpLoad %v2float %tint_symbol_3
- OpStore %stageUnits_1 %374
- %375 = OpLoad %v3float %tint_symbol_4
- OpStore %vPosition %375
- %376 = OpLoad %v2float %tint_symbol_5
- OpStore %vUV %376
- %377 = OpFunctionCall %void %main_1
- %379 = OpLoad %v4float %glFragColor
- %380 = OpCompositeConstruct %main_out %379
- %378 = OpFunctionCall %void %tint_symbol_8 %380
+ %377 = OpLabel
+ %379 = OpLoad %v2float %tUV_param_1
+ %380 = OpLoad %v2float %tileID_1_param_1
+ %381 = OpLoad %v2float %levelUnits_param_1
+ %382 = OpLoad %v2float %stageUnits_1_param_1
+ %383 = OpLoad %v3float %vPosition_param_1
+ %384 = OpLoad %v2float %vUV_param_1
+ %378 = OpFunctionCall %main_out %main_inner %379 %380 %381 %382 %383 %384
+ %385 = OpCompositeExtract %v4float %378 0
+ OpStore %glFragColor_1_1 %385
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/949.wgsl.expected.spvasm b/test/bug/tint/949.wgsl.expected.spvasm
index 1d55ece..e2fce0a 100644
--- a/test/bug/tint/949.wgsl.expected.spvasm
+++ b/test/bug/tint/949.wgsl.expected.spvasm
@@ -1,13 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 671
+; Bound: 675
; Schema: 0
OpCapability Shader
%88 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_6
+ OpEntryPoint Fragment %main "main" %vMainuv_param_1 %v_output1_param_1 %gl_FrontFacing_param_1 %v_uv_param_1 %v_output2_param_1 %glFragColor_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %vMainuv_param_1 "vMainuv_param_1"
+ OpName %v_output1_param_1 "v_output1_param_1"
+ OpName %gl_FrontFacing_param_1 "gl_FrontFacing_param_1"
+ OpName %v_uv_param_1 "v_uv_param_1"
+ OpName %v_output2_param_1 "v_output2_param_1"
+ OpName %glFragColor_1_1 "glFragColor_1_1"
OpName %u_Float "u_Float"
OpName %u_Color "u_Color"
OpName %TextureSamplerTexture "TextureSamplerTexture"
@@ -42,12 +48,6 @@
OpName %glFragColor "glFragColor"
OpName %bumpSamplerSampler "bumpSamplerSampler"
OpName %bumpSamplerTexture "bumpSamplerTexture"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_6 "tint_symbol_6"
OpName %cotangent_frame_vf3_vf3_vf2_vf2_ "cotangent_frame_vf3_vf3_vf2_vf2_"
OpName %normal_1 "normal_1"
OpName %p "p"
@@ -150,9 +150,19 @@
OpName %output3 "output3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "glFragColor_1"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_5 "tint_symbol_5"
+ OpName %main_inner "main_inner"
+ OpName %vMainuv_param "vMainuv_param"
+ OpName %v_output1_param "v_output1_param"
+ OpName %gl_FrontFacing_param "gl_FrontFacing_param"
+ OpName %v_uv_param "v_uv_param"
+ OpName %v_output2_param "v_output2_param"
OpName %main "main"
+ OpDecorate %vMainuv_param_1 Location 1
+ OpDecorate %v_output1_param_1 Location 0
+ OpDecorate %gl_FrontFacing_param_1 BuiltIn FrontFacing
+ OpDecorate %v_uv_param_1 Location 3
+ OpDecorate %v_output2_param_1 Location 2
+ OpDecorate %glFragColor_1_1 Location 0
OpDecorate %TextureSamplerTexture DescriptorSet 2
OpDecorate %TextureSamplerTexture Binding 1
OpDecorate %TextureSamplerSampler DescriptorSet 2
@@ -193,66 +203,60 @@
OpDecorate %bumpSamplerSampler Binding 4
OpDecorate %bumpSamplerTexture DescriptorSet 2
OpDecorate %bumpSamplerTexture Binding 5
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FrontFacing
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_4 Location 2
- OpDecorate %tint_symbol_6 Location 0
OpMemberDecorate %lightingInfo 0 Offset 0
OpMemberDecorate %lightingInfo 1 Offset 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v2float = OpTypeVector %float 2
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+%vMainuv_param_1 = OpVariable %_ptr_Input_v2float Input
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%v_output1_param_1 = OpVariable %_ptr_Input_v4float Input
+ %bool = OpTypeBool
+%_ptr_Input_bool = OpTypePointer Input %bool
+%gl_FrontFacing_param_1 = OpVariable %_ptr_Input_bool Input
+%v_uv_param_1 = OpVariable %_ptr_Input_v2float Input
+%v_output2_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %15 = OpConstantNull %v4float
+%glFragColor_1_1 = OpVariable %_ptr_Output_v4float Output %15
%_ptr_Private_float = OpTypePointer Private %float
- %4 = OpConstantNull %float
- %u_Float = OpVariable %_ptr_Private_float Private %4
+ %18 = OpConstantNull %float
+ %u_Float = OpVariable %_ptr_Private_float Private %18
%v3float = OpTypeVector %float 3
%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %u_Color = OpVariable %_ptr_Private_v3float Private %8
- %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
-%TextureSamplerTexture = OpVariable %_ptr_UniformConstant_11 UniformConstant
- %14 = OpTypeSampler
-%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
-%TextureSamplerSampler = OpVariable %_ptr_UniformConstant_14 UniformConstant
- %v2float = OpTypeVector %float 2
+ %22 = OpConstantNull %v3float
+ %u_Color = OpVariable %_ptr_Private_v3float Private %22
+ %25 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_25 = OpTypePointer UniformConstant %25
+%TextureSamplerTexture = OpVariable %_ptr_UniformConstant_25 UniformConstant
+ %28 = OpTypeSampler
+%_ptr_UniformConstant_28 = OpTypePointer UniformConstant %28
+%TextureSamplerSampler = OpVariable %_ptr_UniformConstant_28 UniformConstant
%_ptr_Private_v2float = OpTypePointer Private %v2float
- %18 = OpConstantNull %v2float
- %vMainuv = OpVariable %_ptr_Private_v2float Private %18
- %v4float = OpTypeVector %float 4
+ %31 = OpConstantNull %v2float
+ %vMainuv = OpVariable %_ptr_Private_v2float Private %31
%mat4v4float = OpTypeMatrix %v4float 4
%uint = OpTypeInt 32 0
%LeftOver = OpTypeStruct %mat4v4float %mat4v4float %float %uint %v3float %float %float %uint %v2float
%_ptr_Uniform_LeftOver = OpTypePointer Uniform %LeftOver
%x_269 = OpVariable %_ptr_Uniform_LeftOver Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %27 = OpConstantNull %v4float
- %v_output1 = OpVariable %_ptr_Private_v4float Private %27
- %bool = OpTypeBool
+ %v_output1 = OpVariable %_ptr_Private_v4float Private %15
%_ptr_Private_bool = OpTypePointer Private %bool
- %31 = OpConstantNull %bool
-%gl_FrontFacing = OpVariable %_ptr_Private_bool Private %31
- %v_uv = OpVariable %_ptr_Private_v2float Private %18
- %v_output2 = OpVariable %_ptr_Private_v4float Private %27
-%TextureSampler1Texture = OpVariable %_ptr_UniformConstant_11 UniformConstant
-%TextureSampler1Sampler = OpVariable %_ptr_UniformConstant_14 UniformConstant
+ %41 = OpConstantNull %bool
+%gl_FrontFacing = OpVariable %_ptr_Private_bool Private %41
+ %v_uv = OpVariable %_ptr_Private_v2float Private %31
+ %v_output2 = OpVariable %_ptr_Private_v4float Private %15
+%TextureSampler1Texture = OpVariable %_ptr_UniformConstant_25 UniformConstant
+%TextureSampler1Sampler = OpVariable %_ptr_UniformConstant_28 UniformConstant
%Light0 = OpTypeStruct %v4float %v4float %v4float %v3float %uint %v4float %v2float
%_ptr_Uniform_Light0 = OpTypePointer Uniform %Light0
%light0 = OpVariable %_ptr_Uniform_Light0 Uniform
-%glFragColor = OpVariable %_ptr_Private_v4float Private %27
-%bumpSamplerSampler = OpVariable %_ptr_UniformConstant_14 UniformConstant
-%bumpSamplerTexture = OpVariable %_ptr_UniformConstant_11 UniformConstant
-%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Input_bool = OpTypePointer Input %bool
-%tint_symbol_2 = OpVariable %_ptr_Input_bool Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_6 = OpVariable %_ptr_Output_v4float Output %27
+%glFragColor = OpVariable %_ptr_Private_v4float Private %15
+%bumpSamplerSampler = OpVariable %_ptr_UniformConstant_28 UniformConstant
+%bumpSamplerTexture = OpVariable %_ptr_UniformConstant_25 UniformConstant
%mat3v3float = OpTypeMatrix %v3float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -285,7 +289,7 @@
%342 = OpConstantNull %int
%float_100 = OpConstant %float 100
%371 = OpConstantComposite %v3float %float_0_5 %float_0_5 %float_0_5
- %376 = OpTypeSampledImage %11
+ %376 = OpTypeSampledImage %25
%uint_6 = OpConstant %uint 6
%_ptr_Uniform_float = OpTypePointer Uniform %float
%uint_4 = OpConstant %uint 4
@@ -302,22 +306,22 @@
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %654 = OpTypeFunction %void %main_out
+ %654 = OpTypeFunction %main_out %v2float %v4float %bool %v2float %v4float
%cotangent_frame_vf3_vf3_vf2_vf2_ = OpFunction %mat3v3float None %52
%normal_1 = OpFunctionParameter %_ptr_Function_v3float
%p = OpFunctionParameter %_ptr_Function_v3float
%uv = OpFunctionParameter %_ptr_Function_v2float
%tangentSpaceParams = OpFunctionParameter %_ptr_Function_v2float
%61 = OpLabel
- %dp1 = OpVariable %_ptr_Function_v3float Function %8
- %dp2 = OpVariable %_ptr_Function_v3float Function %8
- %duv1 = OpVariable %_ptr_Function_v2float Function %18
- %duv2 = OpVariable %_ptr_Function_v2float Function %18
- %dp2perp = OpVariable %_ptr_Function_v3float Function %8
- %dp1perp = OpVariable %_ptr_Function_v3float Function %8
- %tangent = OpVariable %_ptr_Function_v3float Function %8
- %bitangent = OpVariable %_ptr_Function_v3float Function %8
- %invmax = OpVariable %_ptr_Function_float Function %4
+ %dp1 = OpVariable %_ptr_Function_v3float Function %22
+ %dp2 = OpVariable %_ptr_Function_v3float Function %22
+ %duv1 = OpVariable %_ptr_Function_v2float Function %31
+ %duv2 = OpVariable %_ptr_Function_v2float Function %31
+ %dp2perp = OpVariable %_ptr_Function_v3float Function %22
+ %dp1perp = OpVariable %_ptr_Function_v3float Function %22
+ %tangent = OpVariable %_ptr_Function_v3float Function %22
+ %bitangent = OpVariable %_ptr_Function_v3float Function %22
+ %invmax = OpVariable %_ptr_Function_float Function %18
%73 = OpLoad %v3float %p
%74 = OpDPdx %v3float %73
OpStore %dp1 %74
@@ -402,9 +406,9 @@
%transposeMat3_mf33_ = OpFunction %mat3v3float None %152
%inMatrix = OpFunctionParameter %_ptr_Function_mat3v3float
%156 = OpLabel
- %i0 = OpVariable %_ptr_Function_v3float Function %8
- %i1 = OpVariable %_ptr_Function_v3float Function %8
- %i2 = OpVariable %_ptr_Function_v3float Function %8
+ %i0 = OpVariable %_ptr_Function_v3float Function %22
+ %i1 = OpVariable %_ptr_Function_v3float Function %22
+ %i2 = OpVariable %_ptr_Function_v3float Function %22
%outMatrix = OpVariable %_ptr_Function_mat3v3float Function %161
%165 = OpAccessChain %_ptr_Function_v3float %inMatrix %int_0
%166 = OpLoad %v3float %165
@@ -470,8 +474,8 @@
%scale_1 = OpFunctionParameter %_ptr_Function_float
%227 = OpLabel
%param = OpVariable %_ptr_Function_mat3v3float Function %161
- %param_1 = OpVariable %_ptr_Function_v3float Function %8
- %param_2 = OpVariable %_ptr_Function_float Function %4
+ %param_1 = OpVariable %_ptr_Function_v3float Function %22
+ %param_2 = OpVariable %_ptr_Function_float Function %18
%232 = OpLoad %v3float %textureSample
%234 = OpLoad %mat3v3float %cotangentFrame_1
OpStore %param %234
@@ -492,10 +496,10 @@
%groundColor = OpFunctionParameter %_ptr_Function_v3float
%glossiness = OpFunctionParameter %_ptr_Function_float
%257 = OpLabel
- %ndl = OpVariable %_ptr_Function_float Function %4
+ %ndl = OpVariable %_ptr_Function_float Function %18
%result = OpVariable %_ptr_Function_lightingInfo Function %261
- %angleW = OpVariable %_ptr_Function_v3float Function %8
- %specComp = OpVariable %_ptr_Function_float Function %4
+ %angleW = OpVariable %_ptr_Function_v3float Function %22
+ %specComp = OpVariable %_ptr_Function_float Function %18
%265 = OpLoad %v3float %vNormal
%267 = OpLoad %v4float %lightData
%269 = OpCompositeExtract %float %267 0
@@ -542,64 +546,64 @@
OpFunctionEnd
%main_1 = OpFunction %void None %311
%314 = OpLabel
-%tempTextureRead = OpVariable %_ptr_Function_v4float Function %27
- %rgb = OpVariable %_ptr_Function_v3float Function %8
- %output5 = OpVariable %_ptr_Function_v3float Function %8
- %output4 = OpVariable %_ptr_Function_v4float Function %27
- %uvOffset = OpVariable %_ptr_Function_v2float Function %18
-%normalScale = OpVariable %_ptr_Function_float Function %4
- %TBNUV = OpVariable %_ptr_Function_v2float Function %18
- %x_299 = OpVariable %_ptr_Function_v2float Function %18
+%tempTextureRead = OpVariable %_ptr_Function_v4float Function %15
+ %rgb = OpVariable %_ptr_Function_v3float Function %22
+ %output5 = OpVariable %_ptr_Function_v3float Function %22
+ %output4 = OpVariable %_ptr_Function_v4float Function %15
+ %uvOffset = OpVariable %_ptr_Function_v2float Function %31
+%normalScale = OpVariable %_ptr_Function_float Function %18
+ %TBNUV = OpVariable %_ptr_Function_v2float Function %31
+ %x_299 = OpVariable %_ptr_Function_v2float Function %31
%TBN = OpVariable %_ptr_Function_mat3v3float Function %161
- %param_3 = OpVariable %_ptr_Function_v3float Function %8
- %param_4 = OpVariable %_ptr_Function_v3float Function %8
- %param_5 = OpVariable %_ptr_Function_v2float Function %18
- %param_6 = OpVariable %_ptr_Function_v2float Function %18
+ %param_3 = OpVariable %_ptr_Function_v3float Function %22
+ %param_4 = OpVariable %_ptr_Function_v3float Function %22
+ %param_5 = OpVariable %_ptr_Function_v2float Function %31
+ %param_6 = OpVariable %_ptr_Function_v2float Function %31
%invTBN = OpVariable %_ptr_Function_mat3v3float Function %161
%param_7 = OpVariable %_ptr_Function_mat3v3float Function %161
-%parallaxLimit = OpVariable %_ptr_Function_float Function %4
- %vOffsetDir = OpVariable %_ptr_Function_v2float Function %18
- %vMaxOffset = OpVariable %_ptr_Function_v2float Function %18
- %numSamples = OpVariable %_ptr_Function_float Function %4
- %stepSize = OpVariable %_ptr_Function_float Function %4
-%currRayHeight = OpVariable %_ptr_Function_float Function %4
-%vCurrOffset = OpVariable %_ptr_Function_v2float Function %18
-%vLastOffset = OpVariable %_ptr_Function_v2float Function %18
-%lastSampledHeight = OpVariable %_ptr_Function_float Function %4
-%currSampledHeight = OpVariable %_ptr_Function_float Function %4
+%parallaxLimit = OpVariable %_ptr_Function_float Function %18
+ %vOffsetDir = OpVariable %_ptr_Function_v2float Function %31
+ %vMaxOffset = OpVariable %_ptr_Function_v2float Function %31
+ %numSamples = OpVariable %_ptr_Function_float Function %18
+ %stepSize = OpVariable %_ptr_Function_float Function %18
+%currRayHeight = OpVariable %_ptr_Function_float Function %18
+%vCurrOffset = OpVariable %_ptr_Function_v2float Function %31
+%vLastOffset = OpVariable %_ptr_Function_v2float Function %31
+%lastSampledHeight = OpVariable %_ptr_Function_float Function %18
+%currSampledHeight = OpVariable %_ptr_Function_float Function %18
%i = OpVariable %_ptr_Function_int Function %342
- %delta1 = OpVariable %_ptr_Function_float Function %4
- %delta2 = OpVariable %_ptr_Function_float Function %4
- %ratio = OpVariable %_ptr_Function_float Function %4
-%parallaxOcclusion_0 = OpVariable %_ptr_Function_v2float Function %18
+ %delta1 = OpVariable %_ptr_Function_float Function %18
+ %delta2 = OpVariable %_ptr_Function_float Function %18
+ %ratio = OpVariable %_ptr_Function_float Function %18
+%parallaxOcclusion_0 = OpVariable %_ptr_Function_v2float Function %31
%param_8 = OpVariable %_ptr_Function_mat3v3float Function %161
- %param_9 = OpVariable %_ptr_Function_v3float Function %8
- %param_10 = OpVariable %_ptr_Function_float Function %4
- %output6 = OpVariable %_ptr_Function_v2float Function %18
-%tempTextureRead1 = OpVariable %_ptr_Function_v4float Function %27
- %rgb1 = OpVariable %_ptr_Function_v3float Function %8
-%viewDirectionW_1 = OpVariable %_ptr_Function_v3float Function %8
- %shadow = OpVariable %_ptr_Function_float Function %4
-%glossiness_1 = OpVariable %_ptr_Function_float Function %4
-%diffuseBase = OpVariable %_ptr_Function_v3float Function %8
-%specularBase = OpVariable %_ptr_Function_v3float Function %8
- %normalW = OpVariable %_ptr_Function_v3float Function %8
+ %param_9 = OpVariable %_ptr_Function_v3float Function %22
+ %param_10 = OpVariable %_ptr_Function_float Function %18
+ %output6 = OpVariable %_ptr_Function_v2float Function %31
+%tempTextureRead1 = OpVariable %_ptr_Function_v4float Function %15
+ %rgb1 = OpVariable %_ptr_Function_v3float Function %22
+%viewDirectionW_1 = OpVariable %_ptr_Function_v3float Function %22
+ %shadow = OpVariable %_ptr_Function_float Function %18
+%glossiness_1 = OpVariable %_ptr_Function_float Function %18
+%diffuseBase = OpVariable %_ptr_Function_v3float Function %22
+%specularBase = OpVariable %_ptr_Function_v3float Function %22
+ %normalW = OpVariable %_ptr_Function_v3float Function %22
%info = OpVariable %_ptr_Function_lightingInfo Function %261
- %param_11 = OpVariable %_ptr_Function_v3float Function %8
- %param_12 = OpVariable %_ptr_Function_v3float Function %8
- %param_13 = OpVariable %_ptr_Function_v4float Function %27
- %param_14 = OpVariable %_ptr_Function_v3float Function %8
- %param_15 = OpVariable %_ptr_Function_v3float Function %8
- %param_16 = OpVariable %_ptr_Function_v3float Function %8
- %param_17 = OpVariable %_ptr_Function_float Function %4
-%diffuseOutput = OpVariable %_ptr_Function_v3float Function %8
-%specularOutput = OpVariable %_ptr_Function_v3float Function %8
- %output3 = OpVariable %_ptr_Function_v3float Function %8
+ %param_11 = OpVariable %_ptr_Function_v3float Function %22
+ %param_12 = OpVariable %_ptr_Function_v3float Function %22
+ %param_13 = OpVariable %_ptr_Function_v4float Function %15
+ %param_14 = OpVariable %_ptr_Function_v3float Function %22
+ %param_15 = OpVariable %_ptr_Function_v3float Function %22
+ %param_16 = OpVariable %_ptr_Function_v3float Function %22
+ %param_17 = OpVariable %_ptr_Function_float Function %18
+%diffuseOutput = OpVariable %_ptr_Function_v3float Function %22
+%specularOutput = OpVariable %_ptr_Function_v3float Function %22
+ %output3 = OpVariable %_ptr_Function_v3float Function %22
OpStore %u_Float %float_100
OpStore %u_Color %371
%372 = OpLoad %v2float %vMainuv
- %374 = OpLoad %14 %TextureSamplerSampler
- %375 = OpLoad %11 %TextureSamplerTexture
+ %374 = OpLoad %28 %TextureSamplerSampler
+ %375 = OpLoad %25 %TextureSamplerTexture
%377 = OpSampledImage %376 %375 %374
%373 = OpImageSampleImplicitLod %v4float %377 %372
OpStore %tempTextureRead %373
@@ -741,8 +745,8 @@
%492 = OpLabel
%495 = OpLoad %v2float %v_uv
%496 = OpLoad %v2float %vCurrOffset
- %498 = OpLoad %14 %TextureSamplerSampler
- %499 = OpLoad %11 %TextureSamplerTexture
+ %498 = OpLoad %28 %TextureSamplerSampler
+ %499 = OpLoad %25 %TextureSamplerTexture
%500 = OpSampledImage %376 %499 %498
%501 = OpFAdd %v2float %495 %496
%497 = OpImageSampleImplicitLod %v4float %500 %501
@@ -810,8 +814,8 @@
OpStore %uvOffset %543
%544 = OpLoad %v2float %v_uv
%545 = OpLoad %v2float %uvOffset
- %547 = OpLoad %14 %TextureSamplerSampler
- %548 = OpLoad %11 %TextureSamplerTexture
+ %547 = OpLoad %28 %TextureSamplerSampler
+ %548 = OpLoad %25 %TextureSamplerTexture
%549 = OpSampledImage %376 %548 %547
%550 = OpFAdd %v2float %544 %545
%546 = OpImageSampleImplicitLod %v4float %549 %550
@@ -839,8 +843,8 @@
%571 = OpFAdd %v2float %569 %570
OpStore %output6 %571
%572 = OpLoad %v2float %output6
- %574 = OpLoad %14 %TextureSampler1Sampler
- %575 = OpLoad %11 %TextureSampler1Texture
+ %574 = OpLoad %28 %TextureSampler1Sampler
+ %575 = OpLoad %25 %TextureSampler1Texture
%576 = OpSampledImage %376 %575 %574
%573 = OpImageSampleImplicitLod %v4float %576 %572
OpStore %tempTextureRead1 %573
@@ -935,28 +939,32 @@
OpStore %glFragColor %653
OpReturn
OpFunctionEnd
-%tint_symbol_7 = OpFunction %void None %654
-%tint_symbol_5 = OpFunctionParameter %main_out
- %658 = OpLabel
- %659 = OpCompositeExtract %v4float %tint_symbol_5 0
- OpStore %tint_symbol_6 %659
- OpReturn
+ %main_inner = OpFunction %main_out None %654
+%vMainuv_param = OpFunctionParameter %v2float
+%v_output1_param = OpFunctionParameter %v4float
+%gl_FrontFacing_param = OpFunctionParameter %bool
+ %v_uv_param = OpFunctionParameter %v2float
+%v_output2_param = OpFunctionParameter %v4float
+ %662 = OpLabel
+ OpStore %vMainuv %vMainuv_param
+ OpStore %v_output1 %v_output1_param
+ OpStore %gl_FrontFacing %gl_FrontFacing_param
+ OpStore %v_uv %v_uv_param
+ OpStore %v_output2 %v_output2_param
+ %663 = OpFunctionCall %void %main_1
+ %664 = OpLoad %v4float %glFragColor
+ %665 = OpCompositeConstruct %main_out %664
+ OpReturnValue %665
OpFunctionEnd
%main = OpFunction %void None %311
- %661 = OpLabel
- %662 = OpLoad %v2float %tint_symbol
- OpStore %vMainuv %662
- %663 = OpLoad %v4float %tint_symbol_1
- OpStore %v_output1 %663
- %664 = OpLoad %bool %tint_symbol_2
- OpStore %gl_FrontFacing %664
- %665 = OpLoad %v2float %tint_symbol_3
- OpStore %v_uv %665
- %666 = OpLoad %v4float %tint_symbol_4
- OpStore %v_output2 %666
- %667 = OpFunctionCall %void %main_1
- %669 = OpLoad %v4float %glFragColor
- %670 = OpCompositeConstruct %main_out %669
- %668 = OpFunctionCall %void %tint_symbol_7 %670
+ %667 = OpLabel
+ %669 = OpLoad %v2float %vMainuv_param_1
+ %670 = OpLoad %v4float %v_output1_param_1
+ %671 = OpLoad %bool %gl_FrontFacing_param_1
+ %672 = OpLoad %v2float %v_uv_param_1
+ %673 = OpLoad %v4float %v_output2_param_1
+ %668 = OpFunctionCall %main_out %main_inner %669 %670 %671 %672 %673
+ %674 = OpCompositeExtract %v4float %668 0
+ OpStore %glFragColor_1_1 %674
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/951.spvasm.expected.spvasm b/test/bug/tint/951.spvasm.expected.spvasm
index 608d251..dfbd8de 100644
--- a/test/bug/tint/951.spvasm.expected.spvasm
+++ b/test/bug/tint/951.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 97
; Schema: 0
OpCapability Shader
%46 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID_param_1
OpExecutionMode %main LocalSize 128 1 1
+ OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
OpName %ssbOut "ssbOut"
OpMemberName %ssbOut 0 "result"
OpName %x_16 "x_16"
@@ -22,7 +23,6 @@
OpMemberName %Uniforms 3 "outShapeStrides"
OpMemberName %Uniforms 4 "size"
OpName %x_24 "x_24"
- OpName %tint_symbol "tint_symbol"
OpName %getAAtOutCoords_ "getAAtOutCoords_"
OpName %unaryOperation_f1_ "unaryOperation_f1_"
OpName %a "a"
@@ -35,7 +35,10 @@
OpName %param "param"
OpName %param_1 "param_1"
OpName %param_2 "param_2"
+ OpName %main_inner "main_inner"
+ OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
OpDecorate %ssbOut Block
OpMemberDecorate %ssbOut 0 Offset 0
OpDecorate %_runtimearr_float ArrayStride 4
@@ -55,7 +58,10 @@
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
+ %uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%float = OpTypeFloat 32
%_runtimearr_float = OpTypeRuntimeArray %float
%ssbOut = OpTypeStruct %_runtimearr_float
@@ -64,17 +70,13 @@
%ssbA = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_ssbA = OpTypePointer StorageBuffer %ssbA
%x_20 = OpVariable %_ptr_StorageBuffer_ssbA StorageBuffer
- %uint = OpTypeInt 32 0
- %v3uint = OpTypeVector %uint 3
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %13 = OpConstantNull %v3uint
-%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %13
+ %15 = OpConstantNull %v3uint
+%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %15
%int = OpTypeInt 32 1
%Uniforms = OpTypeStruct %float %int %int %int %int
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%x_24 = OpVariable %_ptr_Uniform_Uniforms Uniform
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%20 = OpTypeFunction %float
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
@@ -92,6 +94,7 @@
%65 = OpConstantNull %float
%uint_4 = OpConstant %uint 4
%_ptr_Uniform_int = OpTypePointer Uniform %int
+ %88 = OpTypeFunction %void %v3uint
%getAAtOutCoords_ = OpFunction %float None %20
%22 = OpLabel
%25 = OpAccessChain %_ptr_Private_uint %gl_GlobalInvocationID %uint_0
@@ -155,10 +158,16 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %88
+%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
+ %91 = OpLabel
+ OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
+ %92 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %59
- %89 = OpLabel
- %90 = OpLoad %v3uint %tint_symbol
- OpStore %gl_GlobalInvocationID %90
- %91 = OpFunctionCall %void %main_1
+ %94 = OpLabel
+ %96 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
+ %95 = OpFunctionCall %void %main_inner %96
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/977.spvasm.expected.spvasm b/test/bug/tint/977.spvasm.expected.spvasm
index 25f6c65..4640725 100644
--- a/test/bug/tint/977.spvasm.expected.spvasm
+++ b/test/bug/tint/977.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 103
; Schema: 0
OpCapability Shader
%43 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
OpName %ResultMatrix "ResultMatrix"
OpMemberName %ResultMatrix 0 "numbers"
@@ -23,7 +24,6 @@
OpMemberName %Uniforms 1 "sizeA"
OpMemberName %Uniforms 2 "sizeB"
OpName %x_46 "x_46"
- OpName %tint_symbol "tint_symbol"
OpName %binaryOperation_f1_f1_ "binaryOperation_f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -33,7 +33,10 @@
OpName %a_1 "a_1"
OpName %param "param"
OpName %param_1 "param_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
OpDecorate %ResultMatrix Block
OpMemberDecorate %ResultMatrix 0 Offset 0
OpDecorate %_runtimearr_float ArrayStride 4
@@ -56,12 +59,13 @@
OpDecorate %x_46 NonWritable
OpDecorate %x_46 DescriptorSet 0
OpDecorate %x_46 Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %7
%float = OpTypeFloat 32
%_runtimearr_float = OpTypeRuntimeArray %float
%ResultMatrix = OpTypeStruct %_runtimearr_float
@@ -77,8 +81,6 @@
%Uniforms = OpTypeStruct %float %int %int
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%x_46 = OpVariable %_ptr_Uniform_Uniforms Uniform
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%_ptr_Function_float = OpTypePointer Function %float
%23 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%30 = OpConstantNull %float
@@ -96,6 +98,7 @@
%float_n4 = OpConstant %float -4
%float_n3 = OpConstant %float -3
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
+ %94 = OpTypeFunction %void %v3uint
%binaryOperation_f1_f1_ = OpFunction %float None %23
%a = OpFunctionParameter %_ptr_Function_float
%b = OpFunctionParameter %_ptr_Function_float
@@ -158,10 +161,16 @@
OpStore %93 %89
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %94
+%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
+ %97 = OpLabel
+ OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
+ %98 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %70
- %95 = OpLabel
- %96 = OpLoad %v3uint %tint_symbol
- OpStore %gl_GlobalInvocationID %96
- %97 = OpFunctionCall %void %main_1
+ %100 = OpLabel
+ %102 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
+ %101 = OpFunctionCall %void %main_inner %102
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/978.wgsl.expected.spvasm b/test/bug/tint/978.wgsl.expected.spvasm
index d9eb5b2..e1da002 100644
--- a/test/bug/tint/978.wgsl.expected.spvasm
+++ b/test/bug/tint/978.wgsl.expected.spvasm
@@ -5,81 +5,81 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %vUv_1 %color_1
OpExecutionMode %main OriginUpperLeft
+ OpName %vUv_1 "vUv_1"
+ OpName %color_1 "color_1"
OpName %depthMap "depthMap"
OpName %texSampler "texSampler"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %FragmentOutput "FragmentOutput"
OpMemberName %FragmentOutput 0 "color"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %main "main"
OpName %FragmentInput "FragmentInput"
OpMemberName %FragmentInput 0 "vUv"
+ OpName %main_inner "main_inner"
+ OpName %fIn "fIn"
OpName %fOut "fOut"
+ OpName %main "main"
+ OpDecorate %vUv_1 Location 2
+ OpDecorate %color_1 Location 0
OpDecorate %depthMap Binding 5
OpDecorate %depthMap DescriptorSet 1
OpDecorate %texSampler Binding 3
OpDecorate %texSampler DescriptorSet 1
- OpDecorate %tint_symbol Location 2
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %FragmentOutput 0 Offset 0
OpMemberDecorate %FragmentInput 0 Offset 0
%float = OpTypeFloat 32
- %3 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_3 = OpTypePointer UniformConstant %3
- %depthMap = OpVariable %_ptr_UniformConstant_3 UniformConstant
- %7 = OpTypeSampler
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %texSampler = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v2float = OpTypeVector %float 2
%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
+ %vUv_1 = OpVariable %_ptr_Input_v2float Input
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %14
- %void = OpTypeVoid
+ %8 = OpConstantNull %v4float
+ %color_1 = OpVariable %_ptr_Output_v4float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %depthMap = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %texSampler = OpVariable %_ptr_UniformConstant_14 UniformConstant
%FragmentOutput = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %FragmentOutput
- %22 = OpTypeFunction %void
%FragmentInput = OpTypeStruct %v2float
- %32 = OpTypeSampledImage %3
+ %15 = OpTypeFunction %FragmentOutput %FragmentInput
+ %25 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%_ptr_Function_FragmentOutput = OpTypePointer Function %FragmentOutput
- %39 = OpConstantNull %FragmentOutput
+ %32 = OpConstantNull %FragmentOutput
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
%float_1 = OpConstant %float 1
-%tint_symbol_4 = OpFunction %void None %15
-%tint_symbol_2 = OpFunctionParameter %FragmentOutput
+ %void = OpTypeVoid
+ %43 = OpTypeFunction %void
+ %main_inner = OpFunction %FragmentOutput None %15
+ %fIn = OpFunctionParameter %FragmentInput
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_2 0
- OpStore %tint_symbol_3 %21
- OpReturn
+ %fOut = OpVariable %_ptr_Function_FragmentOutput Function %32
+ %23 = OpLoad %14 %texSampler
+ %24 = OpLoad %11 %depthMap
+ %26 = OpSampledImage %25 %24 %23
+ %27 = OpCompositeExtract %v2float %fIn 0
+ %22 = OpImageSampleImplicitLod %v4float %26 %27
+ %21 = OpCompositeExtract %float %22 0
+ %29 = OpCompositeConstruct %v3float %21 %21 %21
+ %36 = OpAccessChain %_ptr_Function_v4float %fOut %uint_0
+ %37 = OpCompositeExtract %float %29 0
+ %38 = OpCompositeExtract %float %29 1
+ %39 = OpCompositeExtract %float %29 2
+ %41 = OpCompositeConstruct %v4float %37 %38 %39 %float_1
+ OpStore %36 %41
+ %42 = OpLoad %FragmentOutput %fOut
+ OpReturnValue %42
OpFunctionEnd
- %main = OpFunction %void None %22
- %24 = OpLabel
- %fOut = OpVariable %_ptr_Function_FragmentOutput Function %39
- %26 = OpLoad %v2float %tint_symbol
- %27 = OpCompositeConstruct %FragmentInput %26
- %30 = OpLoad %7 %texSampler
- %31 = OpLoad %3 %depthMap
- %33 = OpSampledImage %32 %31 %30
- %34 = OpCompositeExtract %v2float %27 0
- %29 = OpImageSampleImplicitLod %v4float %33 %34
- %28 = OpCompositeExtract %float %29 0
- %36 = OpCompositeConstruct %v3float %28 %28 %28
- %43 = OpAccessChain %_ptr_Function_v4float %fOut %uint_0
- %44 = OpCompositeExtract %float %36 0
- %45 = OpCompositeExtract %float %36 1
- %46 = OpCompositeExtract %float %36 2
- %48 = OpCompositeConstruct %v4float %44 %45 %46 %float_1
- OpStore %43 %48
- %50 = OpLoad %FragmentOutput %fOut
- %49 = OpFunctionCall %void %tint_symbol_4 %50
+ %main = OpFunction %void None %43
+ %46 = OpLabel
+ %48 = OpLoad %v2float %vUv_1
+ %49 = OpCompositeConstruct %FragmentInput %48
+ %47 = OpFunctionCall %FragmentOutput %main_inner %49
+ %50 = OpCompositeExtract %v4float %47 0
+ OpStore %color_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/980.wgsl.expected.spvasm b/test/bug/tint/980.wgsl.expected.spvasm
index 2323ab3..ee66623 100644
--- a/test/bug/tint/980.wgsl.expected.spvasm
+++ b/test/bug/tint/980.wgsl.expected.spvasm
@@ -1,37 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 47
; Schema: 0
OpCapability Shader
%23 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %idx_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %idx_1 "idx_1"
OpName %S "S"
OpMemberName %S 0 "v"
OpMemberName %S 1 "i"
OpName %io "io"
- OpName %tint_symbol "tint_symbol"
OpName %Bad "Bad"
OpName %index "index"
OpName %rd "rd"
OpName %normal "normal"
+ OpName %main_inner "main_inner"
+ OpName %idx "idx"
OpName %main "main"
+ OpDecorate %idx_1 BuiltIn LocalInvocationIndex
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 12
OpDecorate %io Binding 0
OpDecorate %io DescriptorSet 0
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+ %idx_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
- %uint = OpTypeInt 32 0
%S = OpTypeStruct %v3float %uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%io = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%9 = OpTypeFunction %v3float %uint %v3float
%float_0 = OpConstant %float 0
%15 = OpConstantComposite %v3float %float_0 %float_0 %float_0
@@ -39,11 +41,12 @@
%18 = OpConstantNull %v3float
%_ptr_Function_float = OpTypePointer Function %float
%void = OpTypeVoid
- %27 = OpTypeFunction %void
+ %27 = OpTypeFunction %void %uint
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float
%uint_1 = OpConstant %uint 1
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
+ %42 = OpTypeFunction %void
%Bad = OpFunction %v3float None %9
%index = OpFunctionParameter %uint
%rd = OpFunctionParameter %v3float
@@ -59,14 +62,21 @@
%25 = OpExtInst %v3float %23 Normalize %26
OpReturnValue %25
OpFunctionEnd
- %main = OpFunction %void None %27
- %30 = OpLabel
- %33 = OpAccessChain %_ptr_StorageBuffer_v3float %io %uint_0
- %37 = OpAccessChain %_ptr_StorageBuffer_uint %io %uint_1
- %38 = OpLoad %uint %37
- %39 = OpAccessChain %_ptr_StorageBuffer_v3float %io %uint_0
- %40 = OpLoad %v3float %39
- %34 = OpFunctionCall %v3float %Bad %38 %40
- OpStore %33 %34
+ %main_inner = OpFunction %void None %27
+ %idx = OpFunctionParameter %uint
+ %31 = OpLabel
+ %34 = OpAccessChain %_ptr_StorageBuffer_v3float %io %uint_0
+ %38 = OpAccessChain %_ptr_StorageBuffer_uint %io %uint_1
+ %39 = OpLoad %uint %38
+ %40 = OpAccessChain %_ptr_StorageBuffer_v3float %io %uint_0
+ %41 = OpLoad %v3float %40
+ %35 = OpFunctionCall %v3float %Bad %39 %41
+ OpStore %34 %35
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %42
+ %44 = OpLabel
+ %46 = OpLoad %uint %idx_1
+ %45 = OpFunctionCall %void %main_inner %46
OpReturn
OpFunctionEnd
diff --git a/test/bug/tint/992.wgsl.expected.spvasm b/test/bug/tint/992.wgsl.expected.spvasm
index ea7331b..e077344 100644
--- a/test/bug/tint/992.wgsl.expected.spvasm
+++ b/test/bug/tint/992.wgsl.expected.spvasm
@@ -1,53 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_1
+ OpEntryPoint Fragment %frag_main "frag_main" %value
OpExecutionMode %frag_main OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
- OpName %frag_main "frag_main"
+ OpName %value "value"
+ OpName %frag_main_inner "frag_main_inner"
OpName %b "b"
OpName %v "v"
- OpDecorate %tint_symbol_1 Location 0
+ OpName %frag_main "frag_main"
+ OpDecorate %value Location 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
- %void = OpTypeVoid
- %6 = OpTypeFunction %void %v4float
- %11 = OpTypeFunction %void
+ %value = OpVariable %_ptr_Output_v4float Output %5
+ %6 = OpTypeFunction %v4float
%float_0 = OpConstant %float 0
%_ptr_Function_float = OpTypePointer Function %float
- %17 = OpConstantNull %float
+ %12 = OpConstantNull %float
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %23 = OpConstantNull %v3float
+ %18 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
-%tint_symbol_2 = OpFunction %void None %6
-%tint_symbol = OpFunctionParameter %v4float
- %10 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
- OpFunctionEnd
- %frag_main = OpFunction %void None %11
- %13 = OpLabel
- %b = OpVariable %_ptr_Function_float Function %17
- %v = OpVariable %_ptr_Function_v3float Function %23
+ %void = OpTypeVoid
+ %25 = OpTypeFunction %void
+%frag_main_inner = OpFunction %v4float None %6
+ %8 = OpLabel
+ %b = OpVariable %_ptr_Function_float Function %12
+ %v = OpVariable %_ptr_Function_v3float Function %18
OpStore %b %float_0
- %19 = OpLoad %float %b
- %20 = OpCompositeConstruct %v3float %19 %19 %19
- OpStore %v %20
- %25 = OpLoad %v3float %v
- %26 = OpCompositeExtract %float %25 0
- %27 = OpCompositeExtract %float %25 1
- %28 = OpCompositeExtract %float %25 2
- %30 = OpCompositeConstruct %v4float %26 %27 %28 %float_1
- %24 = OpFunctionCall %void %tint_symbol_2 %30
+ %14 = OpLoad %float %b
+ %15 = OpCompositeConstruct %v3float %14 %14 %14
+ OpStore %v %15
+ %19 = OpLoad %v3float %v
+ %20 = OpCompositeExtract %float %19 0
+ %21 = OpCompositeExtract %float %19 1
+ %22 = OpCompositeExtract %float %19 2
+ %24 = OpCompositeConstruct %v4float %20 %21 %22 %float_1
+ OpReturnValue %24
+ OpFunctionEnd
+ %frag_main = OpFunction %void None %25
+ %28 = OpLabel
+ %29 = OpFunctionCall %v4float %frag_main_inner
+ OpStore %value %29
OpReturn
OpFunctionEnd
diff --git a/test/expressions/literals/-inf.spvasm.expected.spvasm b/test/expressions/literals/-inf.spvasm.expected.spvasm
index db2fddd..105db0e 100644
--- a/test/expressions/literals/-inf.spvasm.expected.spvasm
+++ b/test/expressions/literals/-inf.spvasm.expected.spvasm
@@ -1,52 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %out_var_SV_TARGET_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %out_var_SV_TARGET_1_1 "out_var_SV_TARGET_1_1"
OpName %out_var_SV_TARGET "out_var_SV_TARGET"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "out_var_SV_TARGET_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %out_var_SV_TARGET_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%out_var_SV_TARGET_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float_n0x1p_128 = OpConstant %float -0x1p+128
%13 = OpConstantComposite %v4float %float_n0x1p_128 %float_n0x1p_128 %float_n0x1p_128 %float_n0x1p_128
%main_out = OpTypeStruct %v4float
- %14 = OpTypeFunction %void %main_out
+ %14 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpStore %out_var_SV_TARGET %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %14
-%tint_symbol = OpFunctionParameter %main_out
- %18 = OpLabel
- %19 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %19
- OpReturn
+ %main_inner = OpFunction %main_out None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %main_1
+ %19 = OpLoad %v4float %out_var_SV_TARGET
+ %20 = OpCompositeConstruct %main_out %19
+ OpReturnValue %20
OpFunctionEnd
%main = OpFunction %void None %8
- %21 = OpLabel
- %22 = OpFunctionCall %void %main_1
- %24 = OpLoad %v4float %out_var_SV_TARGET
- %25 = OpCompositeConstruct %main_out %24
- %23 = OpFunctionCall %void %tint_symbol_2 %25
+ %22 = OpLabel
+ %23 = OpFunctionCall %main_out %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %out_var_SV_TARGET_1_1 %24
OpReturn
OpFunctionEnd
diff --git a/test/expressions/literals/inf.spvasm.expected.spvasm b/test/expressions/literals/inf.spvasm.expected.spvasm
index eb416fd..27caae2 100644
--- a/test/expressions/literals/inf.spvasm.expected.spvasm
+++ b/test/expressions/literals/inf.spvasm.expected.spvasm
@@ -1,52 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %out_var_SV_TARGET_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %out_var_SV_TARGET_1_1 "out_var_SV_TARGET_1_1"
OpName %out_var_SV_TARGET "out_var_SV_TARGET"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "out_var_SV_TARGET_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %out_var_SV_TARGET_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%out_var_SV_TARGET_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float_0x1p_128 = OpConstant %float 0x1p+128
%13 = OpConstantComposite %v4float %float_0x1p_128 %float_0x1p_128 %float_0x1p_128 %float_0x1p_128
%main_out = OpTypeStruct %v4float
- %14 = OpTypeFunction %void %main_out
+ %14 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpStore %out_var_SV_TARGET %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %14
-%tint_symbol = OpFunctionParameter %main_out
- %18 = OpLabel
- %19 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %19
- OpReturn
+ %main_inner = OpFunction %main_out None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %main_1
+ %19 = OpLoad %v4float %out_var_SV_TARGET
+ %20 = OpCompositeConstruct %main_out %19
+ OpReturnValue %20
OpFunctionEnd
%main = OpFunction %void None %8
- %21 = OpLabel
- %22 = OpFunctionCall %void %main_1
- %24 = OpLoad %v4float %out_var_SV_TARGET
- %25 = OpCompositeConstruct %main_out %24
- %23 = OpFunctionCall %void %tint_symbol_2 %25
+ %22 = OpLabel
+ %23 = OpFunctionCall %main_out %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %out_var_SV_TARGET_1_1 %24
OpReturn
OpFunctionEnd
diff --git a/test/expressions/literals/nan.spvasm.expected.spvasm b/test/expressions/literals/nan.spvasm.expected.spvasm
index b4b90b7..c9e283d 100644
--- a/test/expressions/literals/nan.spvasm.expected.spvasm
+++ b/test/expressions/literals/nan.spvasm.expected.spvasm
@@ -1,52 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %out_var_SV_TARGET_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %out_var_SV_TARGET_1_1 "out_var_SV_TARGET_1_1"
OpName %out_var_SV_TARGET "out_var_SV_TARGET"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "out_var_SV_TARGET_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %out_var_SV_TARGET_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%out_var_SV_TARGET_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%out_var_SV_TARGET = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float_0x1_1p_128 = OpConstant %float 0x1.1p+128
%13 = OpConstantComposite %v4float %float_0x1_1p_128 %float_0x1_1p_128 %float_0x1_1p_128 %float_0x1_1p_128
%main_out = OpTypeStruct %v4float
- %14 = OpTypeFunction %void %main_out
+ %14 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpStore %out_var_SV_TARGET %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %14
-%tint_symbol = OpFunctionParameter %main_out
- %18 = OpLabel
- %19 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %19
- OpReturn
+ %main_inner = OpFunction %main_out None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %main_1
+ %19 = OpLoad %v4float %out_var_SV_TARGET
+ %20 = OpCompositeConstruct %main_out %19
+ OpReturnValue %20
OpFunctionEnd
%main = OpFunction %void None %8
- %21 = OpLabel
- %22 = OpFunctionCall %void %main_1
- %24 = OpLoad %v4float %out_var_SV_TARGET
- %25 = OpCompositeConstruct %main_out %24
- %23 = OpFunctionCall %void %tint_symbol_2 %25
+ %22 = OpLabel
+ %23 = OpFunctionCall %main_out %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %out_var_SV_TARGET_1_1 %24
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/002533.wgsl.expected.spvasm b/test/intrinsics/gen/abs/002533.wgsl.expected.spvasm
index 1c8872f..7a11367 100644
--- a/test/intrinsics/gen/abs/002533.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/002533.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_002533 "abs_002533"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_002533 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 FAbs %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 FAbs %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %abs_002533
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %abs_002533
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %abs_002533
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_002533
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/005174.wgsl.expected.spvasm b/test/intrinsics/gen/abs/005174.wgsl.expected.spvasm
index cf479cf..a5282ba 100644
--- a/test/intrinsics/gen/abs/005174.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/005174.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_005174 "abs_005174"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_005174 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %abs_005174
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %abs_005174
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %abs_005174
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %abs_005174
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %abs_005174
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %abs_005174
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/1ce782.wgsl.expected.spvasm b/test/intrinsics/gen/abs/1ce782.wgsl.expected.spvasm
index 80b9133..793b4cc 100644
--- a/test/intrinsics/gen/abs/1ce782.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/1ce782.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_1ce782 "abs_1ce782"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_1ce782 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_1ce782
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_1ce782
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_1ce782
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_1ce782
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_1ce782
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_1ce782
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/1e9d53.wgsl.expected.spvasm b/test/intrinsics/gen/abs/1e9d53.wgsl.expected.spvasm
index 64cd558..b6cba31 100644
--- a/test/intrinsics/gen/abs/1e9d53.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/1e9d53.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_1e9d53 "abs_1e9d53"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_1e9d53 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %abs_1e9d53
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %abs_1e9d53
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %abs_1e9d53
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %abs_1e9d53
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %abs_1e9d53
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %abs_1e9d53
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/467cd1.wgsl.expected.spvasm b/test/intrinsics/gen/abs/467cd1.wgsl.expected.spvasm
index 9ad9cb3..d11d39e 100644
--- a/test/intrinsics/gen/abs/467cd1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/467cd1.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_467cd1 "abs_467cd1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%19 = OpConstantNull %uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_467cd1 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_467cd1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_467cd1
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_467cd1
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_467cd1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_467cd1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_467cd1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/4ad288.wgsl.expected.spvasm b/test/intrinsics/gen/abs/4ad288.wgsl.expected.spvasm
index a037803..1512a8c 100644
--- a/test/intrinsics/gen/abs/4ad288.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/4ad288.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_4ad288 "abs_4ad288"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%19 = OpConstantNull %int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_4ad288 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_4ad288
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_4ad288
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_4ad288
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_4ad288
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_4ad288
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_4ad288
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/5ad50a.wgsl.expected.spvasm b/test/intrinsics/gen/abs/5ad50a.wgsl.expected.spvasm
index f5a5d0c..7928d05 100644
--- a/test/intrinsics/gen/abs/5ad50a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/5ad50a.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_5ad50a "abs_5ad50a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_5ad50a = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_5ad50a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_5ad50a
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_5ad50a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_5ad50a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_5ad50a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_5ad50a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/7326de.wgsl.expected.spvasm b/test/intrinsics/gen/abs/7326de.wgsl.expected.spvasm
index 4ea8984..066ce7b 100644
--- a/test/intrinsics/gen/abs/7326de.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/7326de.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_7326de "abs_7326de"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_7326de = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_7326de
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_7326de
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_7326de
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_7326de
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_7326de
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_7326de
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/7f28e6.wgsl.expected.spvasm b/test/intrinsics/gen/abs/7f28e6.wgsl.expected.spvasm
index fc456ae..c840c80 100644
--- a/test/intrinsics/gen/abs/7f28e6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/7f28e6.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_7f28e6 "abs_7f28e6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_7f28e6 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_7f28e6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_7f28e6
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_7f28e6
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_7f28e6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_7f28e6
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_7f28e6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/7faa9e.wgsl.expected.spvasm b/test/intrinsics/gen/abs/7faa9e.wgsl.expected.spvasm
index 22d8436..61f2054 100644
--- a/test/intrinsics/gen/abs/7faa9e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/7faa9e.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_7faa9e "abs_7faa9e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_7faa9e = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_7faa9e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_7faa9e
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_7faa9e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_7faa9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_7faa9e
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_7faa9e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/9c80a6.wgsl.expected.spvasm b/test/intrinsics/gen/abs/9c80a6.wgsl.expected.spvasm
index b94f60d..b880d60 100644
--- a/test/intrinsics/gen/abs/9c80a6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/9c80a6.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_9c80a6 "abs_9c80a6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%abs_9c80a6 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %abs_9c80a6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %abs_9c80a6
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_9c80a6
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_9c80a6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %abs_9c80a6
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %abs_9c80a6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/abs/b96037.wgsl.expected.spvasm b/test/intrinsics/gen/abs/b96037.wgsl.expected.spvasm
index 694ea15..8118fd5 100644
--- a/test/intrinsics/gen/abs/b96037.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/abs/b96037.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %abs_b96037 "abs_b96037"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%abs_b96037 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 FAbs %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %abs_b96037
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %abs_b96037
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %abs_b96037
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %abs_b96037
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/acos/489247.wgsl.expected.spvasm b/test/intrinsics/gen/acos/489247.wgsl.expected.spvasm
index e4b8879..5a49920 100644
--- a/test/intrinsics/gen/acos/489247.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/acos/489247.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %acos_489247 "acos_489247"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%acos_489247 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Acos %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %acos_489247
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %acos_489247
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %acos_489247
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %acos_489247
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/acos/8e2acf.wgsl.expected.spvasm b/test/intrinsics/gen/acos/8e2acf.wgsl.expected.spvasm
index da5d306..53fd784 100644
--- a/test/intrinsics/gen/acos/8e2acf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/acos/8e2acf.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %acos_8e2acf "acos_8e2acf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%acos_8e2acf = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Acos %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Acos %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %acos_8e2acf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %acos_8e2acf
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %acos_8e2acf
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %acos_8e2acf
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/acos/a610c4.wgsl.expected.spvasm b/test/intrinsics/gen/acos/a610c4.wgsl.expected.spvasm
index df7fe1e..eaf58ce 100644
--- a/test/intrinsics/gen/acos/a610c4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/acos/a610c4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %acos_a610c4 "acos_a610c4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%acos_a610c4 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %acos_a610c4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %acos_a610c4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %acos_a610c4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %acos_a610c4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %acos_a610c4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %acos_a610c4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/acos/dfc915.wgsl.expected.spvasm b/test/intrinsics/gen/acos/dfc915.wgsl.expected.spvasm
index 117ffe9..346031d 100644
--- a/test/intrinsics/gen/acos/dfc915.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/acos/dfc915.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %acos_dfc915 "acos_dfc915"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%acos_dfc915 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %acos_dfc915
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %acos_dfc915
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %acos_dfc915
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %acos_dfc915
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %acos_dfc915
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %acos_dfc915
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/all/986c7b.wgsl.expected.spvasm b/test/intrinsics/gen/all/986c7b.wgsl.expected.spvasm
index c2fce04..03f7f57 100644
--- a/test/intrinsics/gen/all/986c7b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/all/986c7b.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %all_986c7b "all_986c7b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%all_986c7b = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %all_986c7b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %all_986c7b
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %all_986c7b
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %all_986c7b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %all_986c7b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %all_986c7b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/all/bd2dba.wgsl.expected.spvasm b/test/intrinsics/gen/all/bd2dba.wgsl.expected.spvasm
index b9224d4..14e2aee 100644
--- a/test/intrinsics/gen/all/bd2dba.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/all/bd2dba.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %all_bd2dba "all_bd2dba"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v3bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%all_bd2dba = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %all_bd2dba
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %all_bd2dba
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %all_bd2dba
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %all_bd2dba
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %all_bd2dba
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %all_bd2dba
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/all/f46790.wgsl.expected.spvasm b/test/intrinsics/gen/all/f46790.wgsl.expected.spvasm
index 0fe4165..915f2f5 100644
--- a/test/intrinsics/gen/all/f46790.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/all/f46790.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %all_f46790 "all_f46790"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v2bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%all_f46790 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %all_f46790
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %all_f46790
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %all_f46790
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %all_f46790
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %all_f46790
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %all_f46790
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/any/083428.wgsl.expected.spvasm b/test/intrinsics/gen/any/083428.wgsl.expected.spvasm
index 29ba54d..52d4977 100644
--- a/test/intrinsics/gen/any/083428.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/any/083428.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %any_083428 "any_083428"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%any_083428 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %any_083428
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %any_083428
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %any_083428
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %any_083428
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %any_083428
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %any_083428
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/any/0e3e58.wgsl.expected.spvasm b/test/intrinsics/gen/any/0e3e58.wgsl.expected.spvasm
index 3e772c9..868dec0 100644
--- a/test/intrinsics/gen/any/0e3e58.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/any/0e3e58.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %any_0e3e58 "any_0e3e58"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v2bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%any_0e3e58 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %any_0e3e58
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %any_0e3e58
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %any_0e3e58
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %any_0e3e58
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %any_0e3e58
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %any_0e3e58
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/any/e755c1.wgsl.expected.spvasm b/test/intrinsics/gen/any/e755c1.wgsl.expected.spvasm
index 29c726f..7e196b0 100644
--- a/test/intrinsics/gen/any/e755c1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/any/e755c1.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %any_e755c1 "any_e755c1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %v3bool
%_ptr_Function_bool = OpTypePointer Function %bool
%19 = OpConstantNull %bool
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%any_e755c1 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %any_e755c1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %any_e755c1
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %any_e755c1
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %any_e755c1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %any_e755c1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %any_e755c1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.spvasm
index 7d23781..40b7f6e 100644
--- a/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.spvasm
@@ -1,54 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RO "SB_RO"
OpMemberName %SB_RO 0 "arg_0"
OpName %sb_ro "sb_ro"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_1588cd "arrayLength_1588cd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RO Block
OpMemberDecorate %SB_RO 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %sb_ro NonWritable
OpDecorate %sb_ro DescriptorSet 0
OpDecorate %sb_ro Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%SB_RO = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_SB_RO = OpTypePointer StorageBuffer %SB_RO
%sb_ro = OpVariable %_ptr_StorageBuffer_SB_RO StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%22 = OpConstantNull %uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_1588cd = OpFunction %void None %14
%17 = OpLabel
@@ -57,26 +56,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %arrayLength_1588cd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %arrayLength_1588cd
- %31 = OpFunctionCall %void %tint_symbol_2 %13
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %33 = OpLabel
- %34 = OpFunctionCall %void %arrayLength_1588cd
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %arrayLength_1588cd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpFunctionCall %void %arrayLength_1588cd
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %arrayLength_1588cd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.spvasm
index 21cb6bc..482bb98 100644
--- a/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.spvasm
@@ -1,53 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RW "SB_RW"
OpMemberName %SB_RW 0 "arg_0"
OpName %sb_rw "sb_rw"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_61b1c7 "arrayLength_61b1c7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RW Block
OpMemberDecorate %SB_RW 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %sb_rw DescriptorSet 0
OpDecorate %sb_rw Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%SB_RW = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_SB_RW = OpTypePointer StorageBuffer %SB_RW
%sb_rw = OpVariable %_ptr_StorageBuffer_SB_RW StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%22 = OpConstantNull %uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_61b1c7 = OpFunction %void None %14
%17 = OpLabel
@@ -56,26 +55,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %arrayLength_61b1c7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %arrayLength_61b1c7
- %31 = OpFunctionCall %void %tint_symbol_2 %13
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %33 = OpLabel
- %34 = OpFunctionCall %void %arrayLength_61b1c7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %arrayLength_61b1c7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpFunctionCall %void %arrayLength_61b1c7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %arrayLength_61b1c7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.spvasm
index c946ecd..0af5f92 100644
--- a/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.spvasm
@@ -1,53 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RO "SB_RO"
OpMemberName %SB_RO 0 "arg_0"
OpName %sb_ro "sb_ro"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_a0f5ca "arrayLength_a0f5ca"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RO Block
OpMemberDecorate %SB_RO 0 Offset 0
OpDecorate %_runtimearr_float ArrayStride 4
OpDecorate %sb_ro NonWritable
OpDecorate %sb_ro DescriptorSet 0
OpDecorate %sb_ro Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%_runtimearr_float = OpTypeRuntimeArray %float
%SB_RO = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_SB_RO = OpTypePointer StorageBuffer %SB_RO
%sb_ro = OpVariable %_ptr_StorageBuffer_SB_RO StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%21 = OpConstantNull %uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_a0f5ca = OpFunction %void None %13
%16 = OpLabel
@@ -56,26 +55,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %arrayLength_a0f5ca
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %arrayLength_a0f5ca
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %arrayLength_a0f5ca
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %arrayLength_a0f5ca
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %arrayLength_a0f5ca
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %arrayLength_a0f5ca
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.spvasm
index 8e1edb6..4644796 100644
--- a/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.spvasm
@@ -1,52 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RW "SB_RW"
OpMemberName %SB_RW 0 "arg_0"
OpName %sb_rw "sb_rw"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_cdd123 "arrayLength_cdd123"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RW Block
OpMemberDecorate %SB_RW 0 Offset 0
OpDecorate %_runtimearr_float ArrayStride 4
OpDecorate %sb_rw DescriptorSet 0
OpDecorate %sb_rw Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%_runtimearr_float = OpTypeRuntimeArray %float
%SB_RW = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_SB_RW = OpTypePointer StorageBuffer %SB_RW
%sb_rw = OpVariable %_ptr_StorageBuffer_SB_RW StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%21 = OpConstantNull %uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_cdd123 = OpFunction %void None %13
%16 = OpLabel
@@ -55,26 +54,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %arrayLength_cdd123
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %arrayLength_cdd123
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %arrayLength_cdd123
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %arrayLength_cdd123
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %arrayLength_cdd123
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %arrayLength_cdd123
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.spvasm
index 776749e..db230e9 100644
--- a/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.spvasm
@@ -1,53 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RO "SB_RO"
OpMemberName %SB_RO 0 "arg_0"
OpName %sb_ro "sb_ro"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_cfca0a "arrayLength_cfca0a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RO Block
OpMemberDecorate %SB_RO 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
OpDecorate %sb_ro NonWritable
OpDecorate %sb_ro DescriptorSet 0
OpDecorate %sb_ro Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%uint = OpTypeInt 32 0
%_runtimearr_uint = OpTypeRuntimeArray %uint
%SB_RO = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_SB_RO = OpTypePointer StorageBuffer %SB_RO
%sb_ro = OpVariable %_ptr_StorageBuffer_SB_RO StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
%21 = OpConstantNull %uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_cfca0a = OpFunction %void None %14
%17 = OpLabel
@@ -56,26 +55,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %arrayLength_cfca0a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %arrayLength_cfca0a
- %30 = OpFunctionCall %void %tint_symbol_2 %13
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %32 = OpLabel
- %33 = OpFunctionCall %void %arrayLength_cfca0a
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %arrayLength_cfca0a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpFunctionCall %void %arrayLength_cfca0a
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %arrayLength_cfca0a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.spvasm b/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.spvasm
index 7184336..b165c3f 100644
--- a/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.spvasm
@@ -1,52 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %SB_RW "SB_RW"
OpMemberName %SB_RW 0 "arg_0"
OpName %sb_rw "sb_rw"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %arrayLength_eb510f "arrayLength_eb510f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %SB_RW Block
OpMemberDecorate %SB_RW 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
OpDecorate %sb_rw DescriptorSet 0
OpDecorate %sb_rw Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%uint = OpTypeInt 32 0
%_runtimearr_uint = OpTypeRuntimeArray %uint
%SB_RW = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_SB_RW = OpTypePointer StorageBuffer %SB_RW
%sb_rw = OpVariable %_ptr_StorageBuffer_SB_RW StorageBuffer
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
%21 = OpConstantNull %uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%arrayLength_eb510f = OpFunction %void None %14
%17 = OpLabel
@@ -55,26 +54,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %arrayLength_eb510f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %arrayLength_eb510f
- %30 = OpFunctionCall %void %tint_symbol_2 %13
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %32 = OpLabel
- %33 = OpFunctionCall %void %arrayLength_eb510f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %arrayLength_eb510f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpFunctionCall %void %arrayLength_eb510f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %arrayLength_eb510f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/asin/064953.wgsl.expected.spvasm b/test/intrinsics/gen/asin/064953.wgsl.expected.spvasm
index 4f4bd4c..dec5ed9 100644
--- a/test/intrinsics/gen/asin/064953.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/asin/064953.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %asin_064953 "asin_064953"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%asin_064953 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Asin %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Asin %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %asin_064953
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %asin_064953
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %asin_064953
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %asin_064953
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %asin_064953
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %asin_064953
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/asin/7b6a44.wgsl.expected.spvasm b/test/intrinsics/gen/asin/7b6a44.wgsl.expected.spvasm
index bf48d2d..c52137e 100644
--- a/test/intrinsics/gen/asin/7b6a44.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/asin/7b6a44.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %asin_7b6a44 "asin_7b6a44"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%asin_7b6a44 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %asin_7b6a44
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %asin_7b6a44
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %asin_7b6a44
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %asin_7b6a44
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %asin_7b6a44
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %asin_7b6a44
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/asin/8cd9c9.wgsl.expected.spvasm b/test/intrinsics/gen/asin/8cd9c9.wgsl.expected.spvasm
index 2b16759..ca0dad6 100644
--- a/test/intrinsics/gen/asin/8cd9c9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/asin/8cd9c9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %asin_8cd9c9 "asin_8cd9c9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%asin_8cd9c9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %asin_8cd9c9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %asin_8cd9c9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %asin_8cd9c9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %asin_8cd9c9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %asin_8cd9c9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %asin_8cd9c9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/asin/c0c272.wgsl.expected.spvasm b/test/intrinsics/gen/asin/c0c272.wgsl.expected.spvasm
index 6b5ec45..47f627e 100644
--- a/test/intrinsics/gen/asin/c0c272.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/asin/c0c272.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %asin_c0c272 "asin_c0c272"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%asin_c0c272 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Asin %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %asin_c0c272
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %asin_c0c272
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %asin_c0c272
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %asin_c0c272
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %asin_c0c272
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %asin_c0c272
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan/02979a.wgsl.expected.spvasm b/test/intrinsics/gen/atan/02979a.wgsl.expected.spvasm
index 190f8b8..301e926 100644
--- a/test/intrinsics/gen/atan/02979a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan/02979a.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan_02979a "atan_02979a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%atan_02979a = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Atan %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %atan_02979a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %atan_02979a
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %atan_02979a
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %atan_02979a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %atan_02979a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %atan_02979a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan/331e6d.wgsl.expected.spvasm b/test/intrinsics/gen/atan/331e6d.wgsl.expected.spvasm
index 09d84b5..1cf1035 100644
--- a/test/intrinsics/gen/atan/331e6d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan/331e6d.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan_331e6d "atan_331e6d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan_331e6d = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %atan_331e6d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %atan_331e6d
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %atan_331e6d
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %atan_331e6d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %atan_331e6d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %atan_331e6d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan/a8b696.wgsl.expected.spvasm b/test/intrinsics/gen/atan/a8b696.wgsl.expected.spvasm
index 745878f..b60e136 100644
--- a/test/intrinsics/gen/atan/a8b696.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan/a8b696.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan_a8b696 "atan_a8b696"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan_a8b696 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Atan %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Atan %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %atan_a8b696
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %atan_a8b696
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %atan_a8b696
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %atan_a8b696
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %atan_a8b696
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %atan_a8b696
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan/ad96e4.wgsl.expected.spvasm b/test/intrinsics/gen/atan/ad96e4.wgsl.expected.spvasm
index 6148168..b8a5656 100644
--- a/test/intrinsics/gen/atan/ad96e4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan/ad96e4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan_ad96e4 "atan_ad96e4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan_ad96e4 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %atan_ad96e4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %atan_ad96e4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %atan_ad96e4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %atan_ad96e4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %atan_ad96e4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %atan_ad96e4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan2/57fb13.wgsl.expected.spvasm b/test/intrinsics/gen/atan2/57fb13.wgsl.expected.spvasm
index a43a400..5fea69d 100644
--- a/test/intrinsics/gen/atan2/57fb13.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan2/57fb13.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan2_57fb13 "atan2_57fb13"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan2_57fb13 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %atan2_57fb13
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %atan2_57fb13
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %atan2_57fb13
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %atan2_57fb13
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %atan2_57fb13
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %atan2_57fb13
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan2/96057c.wgsl.expected.spvasm b/test/intrinsics/gen/atan2/96057c.wgsl.expected.spvasm
index 6f09ee6..777b131 100644
--- a/test/intrinsics/gen/atan2/96057c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan2/96057c.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan2_96057c "atan2_96057c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%atan2_96057c = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Atan2 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %atan2_96057c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %atan2_96057c
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %atan2_96057c
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %atan2_96057c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %atan2_96057c
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %atan2_96057c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan2/a70d0d.wgsl.expected.spvasm b/test/intrinsics/gen/atan2/a70d0d.wgsl.expected.spvasm
index 1ddf165..7b9579a 100644
--- a/test/intrinsics/gen/atan2/a70d0d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan2/a70d0d.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan2_a70d0d "atan2_a70d0d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan2_a70d0d = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %atan2_a70d0d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %atan2_a70d0d
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %atan2_a70d0d
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %atan2_a70d0d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %atan2_a70d0d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %atan2_a70d0d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atan2/ae713e.wgsl.expected.spvasm b/test/intrinsics/gen/atan2/ae713e.wgsl.expected.spvasm
index 8ecfa94..60b09d4 100644
--- a/test/intrinsics/gen/atan2/ae713e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atan2/ae713e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %atan2_ae713e "atan2_ae713e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%atan2_ae713e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Atan2 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Atan2 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %atan2_ae713e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %atan2_ae713e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %atan2_ae713e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %atan2_ae713e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %atan2_ae713e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %atan2_ae713e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicAdd/794055.wgsl.expected.spvasm b/test/intrinsics/gen/atomicAdd/794055.wgsl.expected.spvasm
index a4e90d3..d8903dc 100644
--- a/test/intrinsics/gen/atomicAdd/794055.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicAdd/794055.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicAdd_794055 "atomicAdd_794055"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicAdd_794055 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicAdd_794055
+ %27 = OpFunctionCall %void %atomicAdd_794055
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicAdd/d5db1d.wgsl.expected.spvasm b/test/intrinsics/gen/atomicAdd/d5db1d.wgsl.expected.spvasm
index b7ad731..110fb42 100644
--- a/test/intrinsics/gen/atomicAdd/d5db1d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicAdd/d5db1d.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicAdd_d5db1d "atomicAdd_d5db1d"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicAdd_d5db1d = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicAdd_d5db1d
+ %26 = OpFunctionCall %void %atomicAdd_d5db1d
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicAnd/34edd3.wgsl.expected.spvasm b/test/intrinsics/gen/atomicAnd/34edd3.wgsl.expected.spvasm
index 13c210e..3d205d2 100644
--- a/test/intrinsics/gen/atomicAnd/34edd3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicAnd/34edd3.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicAnd_34edd3 "atomicAnd_34edd3"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicAnd_34edd3 = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicAnd_34edd3
+ %26 = OpFunctionCall %void %atomicAnd_34edd3
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicAnd/45a819.wgsl.expected.spvasm b/test/intrinsics/gen/atomicAnd/45a819.wgsl.expected.spvasm
index e9169c1..696d2a3 100644
--- a/test/intrinsics/gen/atomicAnd/45a819.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicAnd/45a819.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicAnd_45a819 "atomicAnd_45a819"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicAnd_45a819 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicAnd_45a819
+ %27 = OpFunctionCall %void %atomicAnd_45a819
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicCompareExchangeWeak/89ea3b.wgsl.expected.spvasm b/test/intrinsics/gen/atomicCompareExchangeWeak/89ea3b.wgsl.expected.spvasm
index d69a5fa..40f727b 100644
--- a/test/intrinsics/gen/atomicCompareExchangeWeak/89ea3b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicCompareExchangeWeak/89ea3b.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicCompareExchangeWeak_89ea3b "atomicCompareExchangeWeak_89ea3b"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -29,7 +31,8 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %29 = OpConstantNull %int
+ %25 = OpTypeFunction %void %uint
+ %31 = OpConstantNull %int
%uint_264 = OpConstant %uint 264
%atomicCompareExchangeWeak_89ea3b = OpFunction %void None %7
%10 = OpLabel
@@ -41,10 +44,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %26 = OpLabel
- OpAtomicStore %arg_0 %uint_2 %uint_0 %29
+%compute_main_inner = OpFunction %void None %25
+%local_invocation_index = OpFunctionParameter %uint
+ %28 = OpLabel
+ OpAtomicStore %arg_0 %uint_2 %uint_0 %31
OpControlBarrier %uint_2 %uint_2 %uint_264
- %32 = OpFunctionCall %void %atomicCompareExchangeWeak_89ea3b
+ %34 = OpFunctionCall %void %atomicCompareExchangeWeak_89ea3b
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %36 = OpLabel
+ %38 = OpLoad %uint %local_invocation_index_1
+ %37 = OpFunctionCall %void %compute_main_inner %38
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicCompareExchangeWeak/b2ab2c.wgsl.expected.spvasm b/test/intrinsics/gen/atomicCompareExchangeWeak/b2ab2c.wgsl.expected.spvasm
index 9590588..6098500 100644
--- a/test/intrinsics/gen/atomicCompareExchangeWeak/b2ab2c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicCompareExchangeWeak/b2ab2c.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicCompareExchangeWeak_b2ab2c "atomicCompareExchangeWeak_b2ab2c"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%v2uint = OpTypeVector %uint 2
@@ -27,7 +29,8 @@
%bool = OpTypeBool
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
%22 = OpConstantNull %v2uint
- %27 = OpConstantNull %uint
+ %23 = OpTypeFunction %void %uint
+ %29 = OpConstantNull %uint
%uint_264 = OpConstant %uint 264
%atomicCompareExchangeWeak_b2ab2c = OpFunction %void None %6
%9 = OpLabel
@@ -39,10 +42,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %24 = OpLabel
- OpAtomicStore %arg_0 %uint_2 %uint_0 %27
+%compute_main_inner = OpFunction %void None %23
+%local_invocation_index = OpFunctionParameter %uint
+ %26 = OpLabel
+ OpAtomicStore %arg_0 %uint_2 %uint_0 %29
OpControlBarrier %uint_2 %uint_2 %uint_264
- %30 = OpFunctionCall %void %atomicCompareExchangeWeak_b2ab2c
+ %32 = OpFunctionCall %void %atomicCompareExchangeWeak_b2ab2c
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %34 = OpLabel
+ %36 = OpLoad %uint %local_invocation_index_1
+ %35 = OpFunctionCall %void %compute_main_inner %36
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicExchange/0a5dca.wgsl.expected.spvasm b/test/intrinsics/gen/atomicExchange/0a5dca.wgsl.expected.spvasm
index b0b0282..23dbf02 100644
--- a/test/intrinsics/gen/atomicExchange/0a5dca.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicExchange/0a5dca.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicExchange_0a5dca "atomicExchange_0a5dca"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicExchange_0a5dca = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicExchange_0a5dca
+ %26 = OpFunctionCall %void %atomicExchange_0a5dca
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicExchange/e114ba.wgsl.expected.spvasm b/test/intrinsics/gen/atomicExchange/e114ba.wgsl.expected.spvasm
index b8ed5ea..b541d6b 100644
--- a/test/intrinsics/gen/atomicExchange/e114ba.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicExchange/e114ba.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicExchange_e114ba "atomicExchange_e114ba"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicExchange_e114ba = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicExchange_e114ba
+ %27 = OpFunctionCall %void %atomicExchange_e114ba
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicLoad/361bf1.wgsl.expected.spvasm b/test/intrinsics/gen/atomicLoad/361bf1.wgsl.expected.spvasm
index 0d7eaad..20eeca7 100644
--- a/test/intrinsics/gen/atomicLoad/361bf1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicLoad/361bf1.wgsl.expected.spvasm
@@ -1,29 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicLoad_361bf1 "atomicLoad_361bf1"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
%uint_0 = OpConstant %uint 0
%_ptr_Function_uint = OpTypePointer Function %uint
%16 = OpConstantNull %uint
+ %17 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicLoad_361bf1 = OpFunction %void None %6
%9 = OpLabel
@@ -32,10 +35,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %18 = OpLabel
+%compute_main_inner = OpFunction %void None %17
+%local_invocation_index = OpFunctionParameter %uint
+ %20 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %16
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %atomicLoad_361bf1
+ %25 = OpFunctionCall %void %atomicLoad_361bf1
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicLoad/afcc03.wgsl.expected.spvasm b/test/intrinsics/gen/atomicLoad/afcc03.wgsl.expected.spvasm
index 76c86e9..b996359 100644
--- a/test/intrinsics/gen/atomicLoad/afcc03.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicLoad/afcc03.wgsl.expected.spvasm
@@ -1,30 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicLoad_afcc03 "atomicLoad_afcc03"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
%uint_0 = OpConstant %uint 0
%_ptr_Function_int = OpTypePointer Function %int
%17 = OpConstantNull %int
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicLoad_afcc03 = OpFunction %void None %7
%10 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicLoad_afcc03
+ %26 = OpFunctionCall %void %atomicLoad_afcc03
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicMax/a89cc3.wgsl.expected.spvasm b/test/intrinsics/gen/atomicMax/a89cc3.wgsl.expected.spvasm
index 94b3012..62355e0 100644
--- a/test/intrinsics/gen/atomicMax/a89cc3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicMax/a89cc3.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicMax_a89cc3 "atomicMax_a89cc3"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicMax_a89cc3 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicMax_a89cc3
+ %27 = OpFunctionCall %void %atomicMax_a89cc3
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicMax/beccfc.wgsl.expected.spvasm b/test/intrinsics/gen/atomicMax/beccfc.wgsl.expected.spvasm
index a6c8ad2..2636c66 100644
--- a/test/intrinsics/gen/atomicMax/beccfc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicMax/beccfc.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicMax_beccfc "atomicMax_beccfc"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicMax_beccfc = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicMax_beccfc
+ %26 = OpFunctionCall %void %atomicMax_beccfc
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicMin/278235.wgsl.expected.spvasm b/test/intrinsics/gen/atomicMin/278235.wgsl.expected.spvasm
index 282bc1c..dfe5a35 100644
--- a/test/intrinsics/gen/atomicMin/278235.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicMin/278235.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicMin_278235 "atomicMin_278235"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicMin_278235 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicMin_278235
+ %27 = OpFunctionCall %void %atomicMin_278235
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicMin/69d383.wgsl.expected.spvasm b/test/intrinsics/gen/atomicMin/69d383.wgsl.expected.spvasm
index 4fdde84..de92bee 100644
--- a/test/intrinsics/gen/atomicMin/69d383.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicMin/69d383.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicMin_69d383 "atomicMin_69d383"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicMin_69d383 = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicMin_69d383
+ %26 = OpFunctionCall %void %atomicMin_69d383
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicOr/5e3d61.wgsl.expected.spvasm b/test/intrinsics/gen/atomicOr/5e3d61.wgsl.expected.spvasm
index 13690cc..1b9dc27 100644
--- a/test/intrinsics/gen/atomicOr/5e3d61.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicOr/5e3d61.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicOr_5e3d61 "atomicOr_5e3d61"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicOr_5e3d61 = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicOr_5e3d61
+ %26 = OpFunctionCall %void %atomicOr_5e3d61
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicOr/d09248.wgsl.expected.spvasm b/test/intrinsics/gen/atomicOr/d09248.wgsl.expected.spvasm
index b49156a..cd14aa9 100644
--- a/test/intrinsics/gen/atomicOr/d09248.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicOr/d09248.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicOr_d09248 "atomicOr_d09248"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicOr_d09248 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicOr_d09248
+ %27 = OpFunctionCall %void %atomicOr_d09248
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicStore/726882.wgsl.expected.spvasm b/test/intrinsics/gen/atomicStore/726882.wgsl.expected.spvasm
index 5b2109e..59738ef 100644
--- a/test/intrinsics/gen/atomicStore/726882.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicStore/726882.wgsl.expected.spvasm
@@ -1,38 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 23
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicStore_726882 "atomicStore_726882"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
%uint_0 = OpConstant %uint 0
%uint_1 = OpConstant %uint 1
- %19 = OpConstantNull %uint
+ %15 = OpTypeFunction %void %uint
+ %21 = OpConstantNull %uint
%uint_264 = OpConstant %uint 264
%atomicStore_726882 = OpFunction %void None %6
%9 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %uint_1
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %16 = OpLabel
- OpAtomicStore %arg_0 %uint_2 %uint_0 %19
+%compute_main_inner = OpFunction %void None %15
+%local_invocation_index = OpFunctionParameter %uint
+ %18 = OpLabel
+ OpAtomicStore %arg_0 %uint_2 %uint_0 %21
OpControlBarrier %uint_2 %uint_2 %uint_264
- %22 = OpFunctionCall %void %atomicStore_726882
+ %24 = OpFunctionCall %void %atomicStore_726882
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %26 = OpLabel
+ %28 = OpLoad %uint %local_invocation_index_1
+ %27 = OpFunctionCall %void %compute_main_inner %28
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicStore/8bea94.wgsl.expected.spvasm b/test/intrinsics/gen/atomicStore/8bea94.wgsl.expected.spvasm
index 332b503..a08c2e8 100644
--- a/test/intrinsics/gen/atomicStore/8bea94.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicStore/8bea94.wgsl.expected.spvasm
@@ -1,39 +1,49 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicStore_8bea94 "atomicStore_8bea94"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
%uint_0 = OpConstant %uint 0
%int_1 = OpConstant %int 1
- %20 = OpConstantNull %int
+ %16 = OpTypeFunction %void %uint
+ %22 = OpConstantNull %int
%uint_264 = OpConstant %uint 264
%atomicStore_8bea94 = OpFunction %void None %7
%10 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %int_1
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %17 = OpLabel
- OpAtomicStore %arg_0 %uint_2 %uint_0 %20
+%compute_main_inner = OpFunction %void None %16
+%local_invocation_index = OpFunctionParameter %uint
+ %19 = OpLabel
+ OpAtomicStore %arg_0 %uint_2 %uint_0 %22
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %atomicStore_8bea94
+ %25 = OpFunctionCall %void %atomicStore_8bea94
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicXor/75dc95.wgsl.expected.spvasm b/test/intrinsics/gen/atomicXor/75dc95.wgsl.expected.spvasm
index 3522e50..4e729e2 100644
--- a/test/intrinsics/gen/atomicXor/75dc95.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicXor/75dc95.wgsl.expected.spvasm
@@ -1,24 +1,26 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicXor_75dc95 "atomicXor_75dc95"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_0 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -26,6 +28,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicXor_75dc95 = OpFunction %void None %7
%10 = OpLabel
@@ -34,10 +37,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %18
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %atomicXor_75dc95
+ %27 = OpFunctionCall %void %atomicXor_75dc95
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/atomicXor/c8e6be.wgsl.expected.spvasm b/test/intrinsics/gen/atomicXor/c8e6be.wgsl.expected.spvasm
index 007f02b..a683557 100644
--- a/test/intrinsics/gen/atomicXor/c8e6be.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/atomicXor/c8e6be.wgsl.expected.spvasm
@@ -1,23 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_0 "arg_0"
- OpName %tint_symbol "tint_symbol"
OpName %atomicXor_c8e6be "atomicXor_c8e6be"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
%arg_0 = OpVariable %_ptr_Workgroup_uint Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%6 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -25,6 +27,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%17 = OpConstantNull %uint
+ %18 = OpTypeFunction %void %uint
%uint_264 = OpConstant %uint 264
%atomicXor_c8e6be = OpFunction %void None %6
%9 = OpLabel
@@ -33,10 +36,17 @@
OpStore %res %10
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %6
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpAtomicStore %arg_0 %uint_2 %uint_0 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %24 = OpFunctionCall %void %atomicXor_c8e6be
+ %26 = OpFunctionCall %void %atomicXor_c8e6be
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %6
+ %28 = OpLabel
+ %30 = OpLoad %uint %local_invocation_index_1
+ %29 = OpFunctionCall %void %compute_main_inner %30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ceil/34064b.wgsl.expected.spvasm b/test/intrinsics/gen/ceil/34064b.wgsl.expected.spvasm
index ddfaf87..792920f 100644
--- a/test/intrinsics/gen/ceil/34064b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ceil/34064b.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ceil_34064b "ceil_34064b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ceil_34064b = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %ceil_34064b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %ceil_34064b
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ceil_34064b
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ceil_34064b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %ceil_34064b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %ceil_34064b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ceil/678655.wgsl.expected.spvasm b/test/intrinsics/gen/ceil/678655.wgsl.expected.spvasm
index 81b81aa..bb45e0b 100644
--- a/test/intrinsics/gen/ceil/678655.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ceil/678655.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ceil_678655 "ceil_678655"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%ceil_678655 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Ceil %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ceil_678655
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %ceil_678655
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %ceil_678655
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %ceil_678655
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %ceil_678655
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %ceil_678655
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ceil/96f597.wgsl.expected.spvasm b/test/intrinsics/gen/ceil/96f597.wgsl.expected.spvasm
index cb88aba..0552e49 100644
--- a/test/intrinsics/gen/ceil/96f597.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ceil/96f597.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ceil_96f597 "ceil_96f597"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ceil_96f597 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %ceil_96f597
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %ceil_96f597
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ceil_96f597
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ceil_96f597
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %ceil_96f597
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %ceil_96f597
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ceil/b74c16.wgsl.expected.spvasm b/test/intrinsics/gen/ceil/b74c16.wgsl.expected.spvasm
index 8014539..74407d3 100644
--- a/test/intrinsics/gen/ceil/b74c16.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ceil/b74c16.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ceil_b74c16 "ceil_b74c16"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ceil_b74c16 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Ceil %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Ceil %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %ceil_b74c16
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %ceil_b74c16
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %ceil_b74c16
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %ceil_b74c16
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %ceil_b74c16
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %ceil_b74c16
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/0acf8f.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/0acf8f.wgsl.expected.spvasm
index 67d351d..45dd69b 100644
--- a/test/intrinsics/gen/clamp/0acf8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/0acf8f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_0acf8f "clamp_0acf8f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_0acf8f = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %clamp_0acf8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %clamp_0acf8f
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %clamp_0acf8f
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %clamp_0acf8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %clamp_0acf8f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %clamp_0acf8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/1a32e3.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/1a32e3.wgsl.expected.spvasm
index 975e522..cf5e3d9 100644
--- a/test/intrinsics/gen/clamp/1a32e3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/1a32e3.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_1a32e3 "clamp_1a32e3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_1a32e3 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_1a32e3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_1a32e3
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_1a32e3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_1a32e3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_1a32e3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_1a32e3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/2bd567.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/2bd567.wgsl.expected.spvasm
index 011022b..df43e84 100644
--- a/test/intrinsics/gen/clamp/2bd567.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/2bd567.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_2bd567 "clamp_2bd567"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%clamp_2bd567 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 NClamp %float_1 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %clamp_2bd567
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %clamp_2bd567
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %clamp_2bd567
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %clamp_2bd567
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_2bd567
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_2bd567
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/2bde41.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/2bde41.wgsl.expected.spvasm
index a6e8276..ec4cbb1 100644
--- a/test/intrinsics/gen/clamp/2bde41.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/2bde41.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_2bde41 "clamp_2bde41"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_2bde41 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 NClamp %8 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 NClamp %5 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %clamp_2bde41
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %clamp_2bde41
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %clamp_2bde41
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %clamp_2bde41
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_2bde41
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_2bde41
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/548fc7.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/548fc7.wgsl.expected.spvasm
index dbcf07d..de8d572 100644
--- a/test/intrinsics/gen/clamp/548fc7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/548fc7.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_548fc7 "clamp_548fc7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_548fc7 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_548fc7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_548fc7
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_548fc7
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_548fc7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_548fc7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_548fc7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/5f0819.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/5f0819.wgsl.expected.spvasm
index 06500aa..93b61e9 100644
--- a/test/intrinsics/gen/clamp/5f0819.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/5f0819.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_5f0819 "clamp_5f0819"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_5f0819 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_5f0819
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_5f0819
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_5f0819
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_5f0819
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_5f0819
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_5f0819
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/6c1749.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/6c1749.wgsl.expected.spvasm
index eac8825..01c1fd6 100644
--- a/test/intrinsics/gen/clamp/6c1749.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/6c1749.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_6c1749 "clamp_6c1749"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_6c1749 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_6c1749
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_6c1749
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_6c1749
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_6c1749
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_6c1749
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_6c1749
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/7706d7.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/7706d7.wgsl.expected.spvasm
index df66b69..8c388c4 100644
--- a/test/intrinsics/gen/clamp/7706d7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/7706d7.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_7706d7 "clamp_7706d7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_7706d7 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_7706d7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_7706d7
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_7706d7
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_7706d7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_7706d7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_7706d7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/867397.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/867397.wgsl.expected.spvasm
index d0a9730..0c0e7c3 100644
--- a/test/intrinsics/gen/clamp/867397.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/867397.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_867397 "clamp_867397"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_867397 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %clamp_867397
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %clamp_867397
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %clamp_867397
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %clamp_867397
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %clamp_867397
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %clamp_867397
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/a2de25.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/a2de25.wgsl.expected.spvasm
index 5c38de7..3fc18ab 100644
--- a/test/intrinsics/gen/clamp/a2de25.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/a2de25.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_a2de25 "clamp_a2de25"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%19 = OpConstantNull %uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_a2de25 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_a2de25
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_a2de25
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_a2de25
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_a2de25
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_a2de25
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_a2de25
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/b07c65.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/b07c65.wgsl.expected.spvasm
index ee90583..bdd8cb8 100644
--- a/test/intrinsics/gen/clamp/b07c65.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/b07c65.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_b07c65 "clamp_b07c65"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%19 = OpConstantNull %int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_b07c65 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_b07c65
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_b07c65
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_b07c65
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_b07c65
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_b07c65
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_b07c65
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/clamp/bd43ce.wgsl.expected.spvasm b/test/intrinsics/gen/clamp/bd43ce.wgsl.expected.spvasm
index 97c3f81..9b84322 100644
--- a/test/intrinsics/gen/clamp/bd43ce.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/clamp/bd43ce.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %clamp_bd43ce "clamp_bd43ce"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%clamp_bd43ce = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %clamp_bd43ce
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %clamp_bd43ce
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %clamp_bd43ce
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %clamp_bd43ce
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %clamp_bd43ce
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %clamp_bd43ce
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cos/16dc15.wgsl.expected.spvasm b/test/intrinsics/gen/cos/16dc15.wgsl.expected.spvasm
index 82fe4b0..713e8ee 100644
--- a/test/intrinsics/gen/cos/16dc15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cos/16dc15.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cos_16dc15 "cos_16dc15"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cos_16dc15 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %cos_16dc15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %cos_16dc15
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %cos_16dc15
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %cos_16dc15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %cos_16dc15
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %cos_16dc15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cos/29d66d.wgsl.expected.spvasm b/test/intrinsics/gen/cos/29d66d.wgsl.expected.spvasm
index 1db9643..e6389c6 100644
--- a/test/intrinsics/gen/cos/29d66d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cos/29d66d.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cos_29d66d "cos_29d66d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cos_29d66d = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Cos %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Cos %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %cos_29d66d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %cos_29d66d
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %cos_29d66d
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %cos_29d66d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %cos_29d66d
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %cos_29d66d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cos/c3b486.wgsl.expected.spvasm b/test/intrinsics/gen/cos/c3b486.wgsl.expected.spvasm
index 32f5010..9de36a8 100644
--- a/test/intrinsics/gen/cos/c3b486.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cos/c3b486.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cos_c3b486 "cos_c3b486"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cos_c3b486 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %cos_c3b486
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %cos_c3b486
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %cos_c3b486
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %cos_c3b486
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %cos_c3b486
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %cos_c3b486
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cos/c5c28e.wgsl.expected.spvasm b/test/intrinsics/gen/cos/c5c28e.wgsl.expected.spvasm
index 00a2e61..7964abf 100644
--- a/test/intrinsics/gen/cos/c5c28e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cos/c5c28e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cos_c5c28e "cos_c5c28e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%cos_c5c28e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Cos %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %cos_c5c28e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %cos_c5c28e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %cos_c5c28e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %cos_c5c28e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %cos_c5c28e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %cos_c5c28e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cosh/377652.wgsl.expected.spvasm b/test/intrinsics/gen/cosh/377652.wgsl.expected.spvasm
index 3a3dcec..6e940e5 100644
--- a/test/intrinsics/gen/cosh/377652.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cosh/377652.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cosh_377652 "cosh_377652"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cosh_377652 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %cosh_377652
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %cosh_377652
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %cosh_377652
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %cosh_377652
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %cosh_377652
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %cosh_377652
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cosh/c13756.wgsl.expected.spvasm b/test/intrinsics/gen/cosh/c13756.wgsl.expected.spvasm
index e684a82..2a7229c 100644
--- a/test/intrinsics/gen/cosh/c13756.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cosh/c13756.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cosh_c13756 "cosh_c13756"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cosh_c13756 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %cosh_c13756
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %cosh_c13756
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %cosh_c13756
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %cosh_c13756
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %cosh_c13756
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %cosh_c13756
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cosh/da92dd.wgsl.expected.spvasm b/test/intrinsics/gen/cosh/da92dd.wgsl.expected.spvasm
index d5a08ab..23f91ec 100644
--- a/test/intrinsics/gen/cosh/da92dd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cosh/da92dd.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cosh_da92dd "cosh_da92dd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%cosh_da92dd = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Cosh %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %cosh_da92dd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %cosh_da92dd
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %cosh_da92dd
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %cosh_da92dd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %cosh_da92dd
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %cosh_da92dd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cosh/e0c1de.wgsl.expected.spvasm b/test/intrinsics/gen/cosh/e0c1de.wgsl.expected.spvasm
index 7c4a94e..b26a1ca 100644
--- a/test/intrinsics/gen/cosh/e0c1de.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cosh/e0c1de.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cosh_e0c1de "cosh_e0c1de"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cosh_e0c1de = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Cosh %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Cosh %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %cosh_e0c1de
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %cosh_e0c1de
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %cosh_e0c1de
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %cosh_e0c1de
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %cosh_e0c1de
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %cosh_e0c1de
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/0d0e46.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/0d0e46.wgsl.expected.spvasm
index f55307b..12785a8 100644
--- a/test/intrinsics/gen/countOneBits/0d0e46.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/0d0e46.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_0d0e46 "countOneBits_0d0e46"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%16 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_0d0e46 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_0d0e46
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_0d0e46
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_0d0e46
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_0d0e46
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_0d0e46
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_0d0e46
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/0f7980.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/0f7980.wgsl.expected.spvasm
index 753cbc8..77811f8 100644
--- a/test/intrinsics/gen/countOneBits/0f7980.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/0f7980.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_0f7980 "countOneBits_0f7980"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%16 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_0f7980 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_0f7980
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_0f7980
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_0f7980
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_0f7980
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_0f7980
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_0f7980
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/65d2ae.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/65d2ae.wgsl.expected.spvasm
index 165393b..8ee1c7a 100644
--- a/test/intrinsics/gen/countOneBits/65d2ae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/65d2ae.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_65d2ae "countOneBits_65d2ae"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%16 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_65d2ae = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_65d2ae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_65d2ae
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_65d2ae
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_65d2ae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_65d2ae
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_65d2ae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/690cfc.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/690cfc.wgsl.expected.spvasm
index c11d998..258fc66 100644
--- a/test/intrinsics/gen/countOneBits/690cfc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/690cfc.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_690cfc "countOneBits_690cfc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%16 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_690cfc = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_690cfc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_690cfc
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_690cfc
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_690cfc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_690cfc
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_690cfc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/94fd81.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/94fd81.wgsl.expected.spvasm
index c5dd42e..2ac577e 100644
--- a/test/intrinsics/gen/countOneBits/94fd81.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/94fd81.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_94fd81 "countOneBits_94fd81"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%16 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_94fd81 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_94fd81
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_94fd81
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_94fd81
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_94fd81
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_94fd81
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_94fd81
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/ae44f9.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/ae44f9.wgsl.expected.spvasm
index 20b438f..7d098ff 100644
--- a/test/intrinsics/gen/countOneBits/ae44f9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/ae44f9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_ae44f9 "countOneBits_ae44f9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%18 = OpConstantNull %uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_ae44f9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_ae44f9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_ae44f9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_ae44f9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_ae44f9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_ae44f9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_ae44f9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/af90e2.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/af90e2.wgsl.expected.spvasm
index 8e7d788..88f5992 100644
--- a/test/intrinsics/gen/countOneBits/af90e2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/af90e2.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_af90e2 "countOneBits_af90e2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%16 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_af90e2 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_af90e2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_af90e2
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_af90e2
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_af90e2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_af90e2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_af90e2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/countOneBits/fd88b2.wgsl.expected.spvasm b/test/intrinsics/gen/countOneBits/fd88b2.wgsl.expected.spvasm
index 0030952..67c346a 100644
--- a/test/intrinsics/gen/countOneBits/fd88b2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/countOneBits/fd88b2.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %countOneBits_fd88b2 "countOneBits_fd88b2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%countOneBits_fd88b2 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %countOneBits_fd88b2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %countOneBits_fd88b2
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %countOneBits_fd88b2
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %countOneBits_fd88b2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %countOneBits_fd88b2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %countOneBits_fd88b2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/cross/041cb0.wgsl.expected.spvasm b/test/intrinsics/gen/cross/041cb0.wgsl.expected.spvasm
index 148a980..bad958c 100644
--- a/test/intrinsics/gen/cross/041cb0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/cross/041cb0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %cross_041cb0 "cross_041cb0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%cross_041cb0 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %cross_041cb0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %cross_041cb0
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %cross_041cb0
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %cross_041cb0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %cross_041cb0
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %cross_041cb0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/determinant/2b62ba.wgsl.expected.spvasm b/test/intrinsics/gen/determinant/2b62ba.wgsl.expected.spvasm
index 1b4b47f..142bf18 100644
--- a/test/intrinsics/gen/determinant/2b62ba.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/determinant/2b62ba.wgsl.expected.spvasm
@@ -1,70 +1,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %determinant_2b62ba "determinant_2b62ba"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%mat3v3float = OpTypeMatrix %v3float 3
%17 = OpConstantNull %mat3v3float
%_ptr_Function_float = OpTypePointer Function %float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%determinant_2b62ba = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Determinant %17
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %determinant_2b62ba
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %determinant_2b62ba
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %determinant_2b62ba
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %determinant_2b62ba
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %determinant_2b62ba
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %determinant_2b62ba
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/determinant/a0a87c.wgsl.expected.spvasm b/test/intrinsics/gen/determinant/a0a87c.wgsl.expected.spvasm
index 60df644..8662898 100644
--- a/test/intrinsics/gen/determinant/a0a87c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/determinant/a0a87c.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %determinant_a0a87c "determinant_a0a87c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
%16 = OpConstantNull %mat4v4float
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%determinant_a0a87c = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Determinant %16
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %determinant_a0a87c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %determinant_a0a87c
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %determinant_a0a87c
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %determinant_a0a87c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %determinant_a0a87c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %determinant_a0a87c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/determinant/e19305.wgsl.expected.spvasm b/test/intrinsics/gen/determinant/e19305.wgsl.expected.spvasm
index 2ce7c32..5efdade 100644
--- a/test/intrinsics/gen/determinant/e19305.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/determinant/e19305.wgsl.expected.spvasm
@@ -1,70 +1,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %determinant_e19305 "determinant_e19305"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
%17 = OpConstantNull %mat2v2float
%_ptr_Function_float = OpTypePointer Function %float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%determinant_e19305 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Determinant %17
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %determinant_e19305
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %determinant_e19305
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %determinant_e19305
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %determinant_e19305
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %determinant_e19305
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %determinant_e19305
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/distance/0657d4.wgsl.expected.spvasm b/test/intrinsics/gen/distance/0657d4.wgsl.expected.spvasm
index 7ed1ee6..433da6a 100644
--- a/test/intrinsics/gen/distance/0657d4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/distance/0657d4.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %distance_0657d4 "distance_0657d4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%distance_0657d4 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Distance %16 %16
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %distance_0657d4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %distance_0657d4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %distance_0657d4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %distance_0657d4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %distance_0657d4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %distance_0657d4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/distance/9646ea.wgsl.expected.spvasm b/test/intrinsics/gen/distance/9646ea.wgsl.expected.spvasm
index b8c7fa7..18840fe 100644
--- a/test/intrinsics/gen/distance/9646ea.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/distance/9646ea.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %distance_9646ea "distance_9646ea"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%distance_9646ea = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %13 = OpExtInst %float %14 Distance %8 %8
+ %res = OpVariable %_ptr_Function_float Function %8
+ %13 = OpExtInst %float %14 Distance %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %distance_9646ea
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %distance_9646ea
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %distance_9646ea
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %distance_9646ea
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %distance_9646ea
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %distance_9646ea
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/distance/aa4055.wgsl.expected.spvasm b/test/intrinsics/gen/distance/aa4055.wgsl.expected.spvasm
index 48e1a45..c5976c6 100644
--- a/test/intrinsics/gen/distance/aa4055.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/distance/aa4055.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %distance_aa4055 "distance_aa4055"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%distance_aa4055 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Distance %16 %16
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %distance_aa4055
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %distance_aa4055
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %distance_aa4055
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %distance_aa4055
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %distance_aa4055
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %distance_aa4055
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/distance/cfed73.wgsl.expected.spvasm b/test/intrinsics/gen/distance/cfed73.wgsl.expected.spvasm
index 8a87dee..a0ad9f2 100644
--- a/test/intrinsics/gen/distance/cfed73.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/distance/cfed73.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %distance_cfed73 "distance_cfed73"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%distance_cfed73 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Distance %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %distance_cfed73
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %distance_cfed73
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %distance_cfed73
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %distance_cfed73
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %distance_cfed73
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %distance_cfed73
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/dot/0c577b.wgsl.expected.spvasm b/test/intrinsics/gen/dot/0c577b.wgsl.expected.spvasm
index a56518c..9723182 100644
--- a/test/intrinsics/gen/dot/0c577b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/dot/0c577b.wgsl.expected.spvasm
@@ -1,66 +1,64 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %dot_0c577b "dot_0c577b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
- %16 = OpTypeFunction %void %v4float
+ %16 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%dot_0c577b = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %13 = OpDot %float %8 %8
+ %res = OpVariable %_ptr_Function_float Function %8
+ %13 = OpDot %float %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %16
-%tint_symbol = OpFunctionParameter %v4float
- %19 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %16
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %dot_0c577b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%21 = OpLabel
- OpStore %tint_pointsize %float_1
- %23 = OpFunctionCall %void %dot_0c577b
- %24 = OpFunctionCall %void %tint_symbol_2 %8
+ %22 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %22
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %26 = OpLabel
- %27 = OpFunctionCall %void %dot_0c577b
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %dot_0c577b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %dot_0c577b
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %dot_0c577b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/dot/883f0e.wgsl.expected.spvasm b/test/intrinsics/gen/dot/883f0e.wgsl.expected.spvasm
index f6a6f4f..921e891 100644
--- a/test/intrinsics/gen/dot/883f0e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/dot/883f0e.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %dot_883f0e "dot_883f0e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%15 = OpConstantNull %v2float
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%dot_883f0e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpDot %float %15 %15
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %dot_883f0e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %dot_883f0e
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %dot_883f0e
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %dot_883f0e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %dot_883f0e
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %dot_883f0e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/dot/ba4246.wgsl.expected.spvasm b/test/intrinsics/gen/dot/ba4246.wgsl.expected.spvasm
index d522c0b..326501a 100644
--- a/test/intrinsics/gen/dot/ba4246.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/dot/ba4246.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %dot_ba4246 "dot_ba4246"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%15 = OpConstantNull %v3float
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%dot_ba4246 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpDot %float %15 %15
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %dot_ba4246
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %dot_ba4246
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %dot_ba4246
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %dot_ba4246
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %dot_ba4246
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %dot_ba4246
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp/0f70eb.wgsl.expected.spvasm b/test/intrinsics/gen/exp/0f70eb.wgsl.expected.spvasm
index e82f059..0c24991 100644
--- a/test/intrinsics/gen/exp/0f70eb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp/0f70eb.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp_0f70eb "exp_0f70eb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp_0f70eb = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Exp %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Exp %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %exp_0f70eb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %exp_0f70eb
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %exp_0f70eb
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %exp_0f70eb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %exp_0f70eb
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %exp_0f70eb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp/1951e7.wgsl.expected.spvasm b/test/intrinsics/gen/exp/1951e7.wgsl.expected.spvasm
index 5439298..013e9bb 100644
--- a/test/intrinsics/gen/exp/1951e7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp/1951e7.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp_1951e7 "exp_1951e7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp_1951e7 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %exp_1951e7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %exp_1951e7
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %exp_1951e7
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %exp_1951e7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %exp_1951e7
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %exp_1951e7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp/771fd2.wgsl.expected.spvasm b/test/intrinsics/gen/exp/771fd2.wgsl.expected.spvasm
index 5100cd0..1d731bd 100644
--- a/test/intrinsics/gen/exp/771fd2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp/771fd2.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp_771fd2 "exp_771fd2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%exp_771fd2 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Exp %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %exp_771fd2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %exp_771fd2
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %exp_771fd2
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %exp_771fd2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %exp_771fd2
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %exp_771fd2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp/d98450.wgsl.expected.spvasm b/test/intrinsics/gen/exp/d98450.wgsl.expected.spvasm
index 448017c..27dc1ac 100644
--- a/test/intrinsics/gen/exp/d98450.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp/d98450.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp_d98450 "exp_d98450"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp_d98450 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %exp_d98450
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %exp_d98450
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %exp_d98450
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %exp_d98450
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %exp_d98450
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %exp_d98450
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp2/1f8680.wgsl.expected.spvasm b/test/intrinsics/gen/exp2/1f8680.wgsl.expected.spvasm
index 6e672de..9d62f48 100644
--- a/test/intrinsics/gen/exp2/1f8680.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp2/1f8680.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp2_1f8680 "exp2_1f8680"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp2_1f8680 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %exp2_1f8680
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %exp2_1f8680
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %exp2_1f8680
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %exp2_1f8680
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %exp2_1f8680
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %exp2_1f8680
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp2/a9d0a7.wgsl.expected.spvasm b/test/intrinsics/gen/exp2/a9d0a7.wgsl.expected.spvasm
index 1193c23..f3ac039 100644
--- a/test/intrinsics/gen/exp2/a9d0a7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp2/a9d0a7.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp2_a9d0a7 "exp2_a9d0a7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp2_a9d0a7 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Exp2 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Exp2 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %exp2_a9d0a7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %exp2_a9d0a7
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %exp2_a9d0a7
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %exp2_a9d0a7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %exp2_a9d0a7
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %exp2_a9d0a7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp2/d6777c.wgsl.expected.spvasm b/test/intrinsics/gen/exp2/d6777c.wgsl.expected.spvasm
index 571bff0..e852866 100644
--- a/test/intrinsics/gen/exp2/d6777c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp2/d6777c.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp2_d6777c "exp2_d6777c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%exp2_d6777c = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %exp2_d6777c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %exp2_d6777c
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %exp2_d6777c
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %exp2_d6777c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %exp2_d6777c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %exp2_d6777c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/exp2/dea523.wgsl.expected.spvasm b/test/intrinsics/gen/exp2/dea523.wgsl.expected.spvasm
index dbeb361..ce3d3a9 100644
--- a/test/intrinsics/gen/exp2/dea523.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/exp2/dea523.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %exp2_dea523 "exp2_dea523"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%exp2_dea523 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Exp2 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %exp2_dea523
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %exp2_dea523
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %exp2_dea523
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %exp2_dea523
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %exp2_dea523
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %exp2_dea523
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/faceForward/5afbd5.wgsl.expected.spvasm b/test/intrinsics/gen/faceForward/5afbd5.wgsl.expected.spvasm
index 6fc0f18..e9db2a5 100644
--- a/test/intrinsics/gen/faceForward/5afbd5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/faceForward/5afbd5.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %faceForward_5afbd5 "faceForward_5afbd5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%faceForward_5afbd5 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %faceForward_5afbd5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %faceForward_5afbd5
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %faceForward_5afbd5
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %faceForward_5afbd5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %faceForward_5afbd5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %faceForward_5afbd5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/faceForward/b316e5.wgsl.expected.spvasm b/test/intrinsics/gen/faceForward/b316e5.wgsl.expected.spvasm
index 07f0358..9481d78 100644
--- a/test/intrinsics/gen/faceForward/b316e5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/faceForward/b316e5.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %faceForward_b316e5 "faceForward_b316e5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%faceForward_b316e5 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 FaceForward %8 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 FaceForward %5 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %faceForward_b316e5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %faceForward_b316e5
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %faceForward_b316e5
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %faceForward_b316e5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %faceForward_b316e5
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %faceForward_b316e5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/faceForward/e6908b.wgsl.expected.spvasm b/test/intrinsics/gen/faceForward/e6908b.wgsl.expected.spvasm
index 8e98dee..6d23993 100644
--- a/test/intrinsics/gen/faceForward/e6908b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/faceForward/e6908b.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %faceForward_e6908b "faceForward_e6908b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%faceForward_e6908b = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %faceForward_e6908b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %faceForward_e6908b
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %faceForward_e6908b
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %faceForward_e6908b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %faceForward_e6908b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %faceForward_e6908b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/floor/3bccc4.wgsl.expected.spvasm b/test/intrinsics/gen/floor/3bccc4.wgsl.expected.spvasm
index 634a08a..acc6532 100644
--- a/test/intrinsics/gen/floor/3bccc4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/floor/3bccc4.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %floor_3bccc4 "floor_3bccc4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%floor_3bccc4 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Floor %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Floor %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %floor_3bccc4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %floor_3bccc4
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %floor_3bccc4
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %floor_3bccc4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %floor_3bccc4
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %floor_3bccc4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/floor/5fc9ac.wgsl.expected.spvasm b/test/intrinsics/gen/floor/5fc9ac.wgsl.expected.spvasm
index 9d25150..49b872c 100644
--- a/test/intrinsics/gen/floor/5fc9ac.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/floor/5fc9ac.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %floor_5fc9ac "floor_5fc9ac"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%floor_5fc9ac = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %floor_5fc9ac
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %floor_5fc9ac
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %floor_5fc9ac
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %floor_5fc9ac
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %floor_5fc9ac
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %floor_5fc9ac
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/floor/60d7ea.wgsl.expected.spvasm b/test/intrinsics/gen/floor/60d7ea.wgsl.expected.spvasm
index 77ecc59..c0fa003 100644
--- a/test/intrinsics/gen/floor/60d7ea.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/floor/60d7ea.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %floor_60d7ea "floor_60d7ea"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%floor_60d7ea = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %floor_60d7ea
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %floor_60d7ea
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %floor_60d7ea
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %floor_60d7ea
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %floor_60d7ea
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %floor_60d7ea
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/floor/66f154.wgsl.expected.spvasm b/test/intrinsics/gen/floor/66f154.wgsl.expected.spvasm
index 76ab1fd..ca6e9fa 100644
--- a/test/intrinsics/gen/floor/66f154.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/floor/66f154.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %floor_66f154 "floor_66f154"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%floor_66f154 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Floor %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %floor_66f154
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %floor_66f154
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %floor_66f154
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %floor_66f154
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %floor_66f154
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %floor_66f154
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fma/26a7a9.wgsl.expected.spvasm b/test/intrinsics/gen/fma/26a7a9.wgsl.expected.spvasm
index 888ebb3..5df98bd 100644
--- a/test/intrinsics/gen/fma/26a7a9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fma/26a7a9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fma_26a7a9 "fma_26a7a9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fma_26a7a9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %fma_26a7a9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %fma_26a7a9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %fma_26a7a9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %fma_26a7a9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %fma_26a7a9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %fma_26a7a9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fma/6a3283.wgsl.expected.spvasm b/test/intrinsics/gen/fma/6a3283.wgsl.expected.spvasm
index 5fd44fa..cf26685 100644
--- a/test/intrinsics/gen/fma/6a3283.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fma/6a3283.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fma_6a3283 "fma_6a3283"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fma_6a3283 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Fma %8 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Fma %5 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %fma_6a3283
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %fma_6a3283
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %fma_6a3283
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %fma_6a3283
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %fma_6a3283
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %fma_6a3283
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fma/c10ba3.wgsl.expected.spvasm b/test/intrinsics/gen/fma/c10ba3.wgsl.expected.spvasm
index 96b804d..bc9816f 100644
--- a/test/intrinsics/gen/fma/c10ba3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fma/c10ba3.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fma_c10ba3 "fma_c10ba3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%fma_c10ba3 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Fma %float_1 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %fma_c10ba3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %fma_c10ba3
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %fma_c10ba3
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %fma_c10ba3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %fma_c10ba3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %fma_c10ba3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fma/e17c5c.wgsl.expected.spvasm b/test/intrinsics/gen/fma/e17c5c.wgsl.expected.spvasm
index 88e17ec..de2025e 100644
--- a/test/intrinsics/gen/fma/e17c5c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fma/e17c5c.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fma_e17c5c "fma_e17c5c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fma_e17c5c = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %fma_e17c5c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %fma_e17c5c
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %fma_e17c5c
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %fma_e17c5c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %fma_e17c5c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %fma_e17c5c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fract/8bc1e9.wgsl.expected.spvasm b/test/intrinsics/gen/fract/8bc1e9.wgsl.expected.spvasm
index 49901a7..e6d0418 100644
--- a/test/intrinsics/gen/fract/8bc1e9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fract/8bc1e9.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fract_8bc1e9 "fract_8bc1e9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fract_8bc1e9 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Fract %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Fract %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %fract_8bc1e9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %fract_8bc1e9
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %fract_8bc1e9
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %fract_8bc1e9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %fract_8bc1e9
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %fract_8bc1e9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fract/943cb1.wgsl.expected.spvasm b/test/intrinsics/gen/fract/943cb1.wgsl.expected.spvasm
index 105eb76..afe8e98 100644
--- a/test/intrinsics/gen/fract/943cb1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fract/943cb1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fract_943cb1 "fract_943cb1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fract_943cb1 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %fract_943cb1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %fract_943cb1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %fract_943cb1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %fract_943cb1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %fract_943cb1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %fract_943cb1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fract/a49758.wgsl.expected.spvasm b/test/intrinsics/gen/fract/a49758.wgsl.expected.spvasm
index 48289e6..284b664 100644
--- a/test/intrinsics/gen/fract/a49758.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fract/a49758.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fract_a49758 "fract_a49758"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%fract_a49758 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %fract_a49758
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %fract_a49758
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %fract_a49758
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %fract_a49758
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %fract_a49758
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %fract_a49758
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/fract/fa5c71.wgsl.expected.spvasm b/test/intrinsics/gen/fract/fa5c71.wgsl.expected.spvasm
index 09d3f99..6e73bc5 100644
--- a/test/intrinsics/gen/fract/fa5c71.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/fract/fa5c71.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %fract_fa5c71 "fract_fa5c71"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%fract_fa5c71 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Fract %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %fract_fa5c71
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %fract_fa5c71
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %fract_fa5c71
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %fract_fa5c71
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %fract_fa5c71
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %fract_fa5c71
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm
index d1e2268..9c3235d 100644
--- a/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/013caa.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%19 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_013caa "frexp_013caa"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%_ptr_Function_v4int = OpTypePointer Function %v4int
%17 = OpConstantNull %v4int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_013caa = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_v4int Function %17
- %res = OpVariable %_ptr_Function_v4float Function %8
- %18 = OpExtInst %v4float %19 Frexp %8 %arg_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_013caa
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_013caa
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_013caa
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_013caa
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_013caa
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_013caa
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm
index ac9be08..167f6f0 100644
--- a/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/0da285.wgsl.expected.spvasm
@@ -5,32 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 32
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %frexp_0da285 "frexp_0da285"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%arg_1 = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%float = OpTypeFloat 32
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpConstantNull %float
- %21 = OpConstantNull %int
+ %19 = OpTypeFunction %void %uint
+ %23 = OpConstantNull %int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%frexp_0da285 = OpFunction %void None %7
@@ -40,10 +43,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %20 = OpLabel
- OpStore %arg_1 %21
+%compute_main_inner = OpFunction %void None %19
+%local_invocation_index = OpFunctionParameter %uint
+ %22 = OpLabel
+ OpStore %arg_1 %23
OpControlBarrier %uint_2 %uint_2 %uint_264
- %25 = OpFunctionCall %void %frexp_0da285
+ %27 = OpFunctionCall %void %frexp_0da285
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %29 = OpLabel
+ %31 = OpLoad %uint %local_invocation_index_1
+ %30 = OpFunctionCall %void %compute_main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/12f1da.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/12f1da.wgsl.expected.spvasm
index 1887cc1..031a085 100644
--- a/test/intrinsics/gen/frexp/12f1da.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/12f1da.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_12f1da "frexp_12f1da"
OpName %_frexp_result "_frexp_result"
OpMemberName %_frexp_result 0 "sig"
OpMemberName %_frexp_result 1 "exp"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_frexp_result 0 Offset 0
OpMemberDecorate %_frexp_result 1 Offset 4
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,7 +41,7 @@
%float_1 = OpConstant %float 1
%_ptr_Function__frexp_result = OpTypePointer Function %_frexp_result
%20 = OpConstantNull %_frexp_result
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%frexp_12f1da = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function__frexp_result Function %20
@@ -50,26 +49,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %frexp_12f1da
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %frexp_12f1da
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %frexp_12f1da
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %frexp_12f1da
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_12f1da
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_12f1da
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm
index 702a52c..b0a95f7 100644
--- a/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/15edf3.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_15edf3 "frexp_15edf3"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v2float = OpTypeVector %float 2
%21 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_15edf3 = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_15edf3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_15edf3
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_15edf3
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_15edf3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_15edf3
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_15edf3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm
index ed54aad..1cc26d0 100644
--- a/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/19ab15.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%19 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_19ab15 "frexp_19ab15"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%_ptr_Function_v4int = OpTypePointer Function %v4int
%17 = OpConstantNull %v4int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_19ab15 = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_v4int Function %17
- %res = OpVariable %_ptr_Function_v4float Function %8
- %18 = OpExtInst %v4float %19 Frexp %8 %arg_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_19ab15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_19ab15
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_19ab15
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_19ab15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_19ab15
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_19ab15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm
index 6646081..5dff382 100644
--- a/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/2052e9.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%19 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_2052e9 "frexp_2052e9"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%_ptr_Function_v4int = OpTypePointer Function %v4int
%17 = OpConstantNull %v4int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_2052e9 = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_v4int Function %17
- %res = OpVariable %_ptr_Function_v4float Function %8
- %18 = OpExtInst %v4float %19 Frexp %8 %arg_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_2052e9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_2052e9
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_2052e9
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_2052e9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_2052e9
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_2052e9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm
index 2bbf0cb..6a51558 100644
--- a/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/40fc9b.wgsl.expected.spvasm
@@ -5,33 +5,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %frexp_40fc9b "frexp_40fc9b"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Workgroup_v3int = OpTypePointer Workgroup %v3int
%arg_1 = OpVariable %_ptr_Workgroup_v3int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %22 = OpConstantNull %v3int
+ %20 = OpTypeFunction %void %uint
+ %24 = OpConstantNull %v3int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%frexp_40fc9b = OpFunction %void None %8
@@ -41,10 +44,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %21 = OpLabel
- OpStore %arg_1 %22
+%compute_main_inner = OpFunction %void None %20
+%local_invocation_index = OpFunctionParameter %uint
+ %23 = OpLabel
+ OpStore %arg_1 %24
OpControlBarrier %uint_2 %uint_2 %uint_264
- %26 = OpFunctionCall %void %frexp_40fc9b
+ %28 = OpFunctionCall %void %frexp_40fc9b
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %30 = OpLabel
+ %32 = OpLoad %uint %local_invocation_index_1
+ %31 = OpFunctionCall %void %compute_main_inner %32
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm
index b9cce46..5445498 100644
--- a/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/41e931.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_41e931 "frexp_41e931"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,35 +41,34 @@
%16 = OpConstantNull %int
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%frexp_41e931 = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_int Function %16
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%17 = OpExtInst %float %18 Frexp %float_1 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_41e931
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %frexp_41e931
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %frexp_41e931
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %frexp_41e931
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_41e931
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_41e931
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm
index 703c948..82a4aaa 100644
--- a/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/481e59.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_481e59 "frexp_481e59"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,35 +41,34 @@
%16 = OpConstantNull %int
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%frexp_481e59 = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_int Function %16
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%17 = OpExtInst %float %18 Frexp %float_1 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_481e59
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %frexp_481e59
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %frexp_481e59
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %frexp_481e59
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_481e59
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_481e59
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm
index 46ccae0..042b1b9 100644
--- a/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/5a141e.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_5a141e "frexp_5a141e"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v3float = OpTypeVector %float 3
%21 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_5a141e = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_5a141e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_5a141e
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_5a141e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_5a141e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_5a141e
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_5a141e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm
index cbeae7b..7b9ca4e 100644
--- a/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/6d0058.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_6d0058 "frexp_6d0058"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v3float = OpTypeVector %float 3
%21 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_6d0058 = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_6d0058
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_6d0058
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_6d0058
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_6d0058
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_6d0058
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_6d0058
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm
index 869f633..de63a5e 100644
--- a/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/6efa09.wgsl.expected.spvasm
@@ -5,47 +5,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %frexp_6efa09 "frexp_6efa09"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Private_v3int = OpTypePointer Private %v3int
- %9 = OpConstantNull %v3int
- %arg_1 = OpVariable %_ptr_Private_v3int Private %9
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+ %13 = OpConstantNull %v3int
+ %arg_1 = OpVariable %_ptr_Private_v3int Private %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%21 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_6efa09 = OpFunction %void None %14
%17 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_6efa09
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_6efa09
- %33 = OpFunctionCall %void %tint_symbol_2 %13
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_6efa09
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_6efa09
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_6efa09
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_6efa09
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a0eb3b.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a0eb3b.wgsl.expected.spvasm
index 3049fc1..d617a78 100644
--- a/test/intrinsics/gen/frexp/a0eb3b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/a0eb3b.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_a0eb3b "frexp_a0eb3b"
OpName %_frexp_result_vec3 "_frexp_result_vec3"
OpMemberName %_frexp_result_vec3 0 "sig"
OpMemberName %_frexp_result_vec3 1 "exp"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_frexp_result_vec3 0 Offset 0
OpMemberDecorate %_frexp_result_vec3 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -44,7 +43,7 @@
%19 = OpConstantNull %v3float
%_ptr_Function__frexp_result_vec3 = OpTypePointer Function %_frexp_result_vec3
%22 = OpConstantNull %_frexp_result_vec3
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_a0eb3b = OpFunction %void None %9
%12 = OpLabel
@@ -53,26 +52,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_a0eb3b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_a0eb3b
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_a0eb3b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_a0eb3b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_a0eb3b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_a0eb3b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm
index 955c165..20c998b 100644
--- a/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/a2a617.wgsl.expected.spvasm
@@ -5,72 +5,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %frexp_a2a617 "frexp_a2a617"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %arg_1 = OpVariable %_ptr_Private_int Private %8
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %12 = OpConstantNull %int
+ %arg_1 = OpVariable %_ptr_Private_int Private %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%frexp_a2a617 = OpFunction %void None %13
%16 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%17 = OpExtInst %float %18 Frexp %float_1 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_a2a617
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %frexp_a2a617
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %frexp_a2a617
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %frexp_a2a617
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_a2a617
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_a2a617
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm
index bdad1aa..7e33735 100644
--- a/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/a3f940.wgsl.expected.spvasm
@@ -5,33 +5,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %frexp_a3f940 "frexp_a3f940"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Workgroup_v2int = OpTypePointer Workgroup %v2int
%arg_1 = OpVariable %_ptr_Workgroup_v2int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float = OpTypeFloat 32
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %22 = OpConstantNull %v2int
+ %20 = OpTypeFunction %void %uint
+ %24 = OpConstantNull %v2int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%frexp_a3f940 = OpFunction %void None %8
@@ -41,10 +44,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %21 = OpLabel
- OpStore %arg_1 %22
+%compute_main_inner = OpFunction %void None %20
+%local_invocation_index = OpFunctionParameter %uint
+ %23 = OpLabel
+ OpStore %arg_1 %24
OpControlBarrier %uint_2 %uint_2 %uint_264
- %26 = OpFunctionCall %void %frexp_a3f940
+ %28 = OpFunctionCall %void %frexp_a3f940
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %30 = OpLabel
+ %32 = OpLoad %uint %local_invocation_index_1
+ %31 = OpFunctionCall %void %compute_main_inner %32
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm
index 49ad292..fc55f6a 100644
--- a/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/a951b5.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_a951b5 "frexp_a951b5"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v2float = OpTypeVector %float 2
%21 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_a951b5 = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_a951b5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_a951b5
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_a951b5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_a951b5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_a951b5
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_a951b5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm
index f3c321a..a4cf67d 100644
--- a/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/b45525.wgsl.expected.spvasm
@@ -5,73 +5,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%19 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %frexp_b45525 "frexp_b45525"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%_ptr_Private_v4int = OpTypePointer Private %v4int
- %9 = OpConstantNull %v4int
- %arg_1 = OpVariable %_ptr_Private_v4int Private %9
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+ %13 = OpConstantNull %v4int
+ %arg_1 = OpVariable %_ptr_Private_v4int Private %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_b45525 = OpFunction %void None %14
%17 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %13
- %18 = OpExtInst %v4float %19 Frexp %13 %arg_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %18 = OpExtInst %v4float %19 Frexp %5 %arg_1
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_b45525
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_b45525
- %31 = OpFunctionCall %void %tint_symbol_2 %13
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_b45525
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_b45525
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_b45525
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_b45525
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm
index 6d5e4d6..5bf5e77 100644
--- a/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/b87f4e.wgsl.expected.spvasm
@@ -5,33 +5,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %frexp_b87f4e "frexp_b87f4e"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%_ptr_Workgroup_v4int = OpTypePointer Workgroup %v4int
%arg_1 = OpVariable %_ptr_Workgroup_v4int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%16 = OpConstantNull %v4float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpConstantNull %v4int
+ %20 = OpTypeFunction %void %uint
+ %24 = OpConstantNull %v4int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%frexp_b87f4e = OpFunction %void None %8
@@ -41,10 +44,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %21 = OpLabel
- OpStore %arg_1 %22
+%compute_main_inner = OpFunction %void None %20
+%local_invocation_index = OpFunctionParameter %uint
+ %23 = OpLabel
+ OpStore %arg_1 %24
OpControlBarrier %uint_2 %uint_2 %uint_264
- %26 = OpFunctionCall %void %frexp_b87f4e
+ %28 = OpFunctionCall %void %frexp_b87f4e
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %30 = OpLabel
+ %32 = OpLoad %uint %local_invocation_index_1
+ %31 = OpFunctionCall %void %compute_main_inner %32
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm
index 0687916..28e43bb 100644
--- a/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/b9e4de.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_b9e4de "frexp_b9e4de"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v3float = OpTypeVector %float 3
%21 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_b9e4de = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_b9e4de
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_b9e4de
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_b9e4de
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_b9e4de
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_b9e4de
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_b9e4de
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm
index ac5c4a0..808e4d1 100644
--- a/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/c084e3.wgsl.expected.spvasm
@@ -5,47 +5,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %frexp_c084e3 "frexp_c084e3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Private_v2int = OpTypePointer Private %v2int
- %9 = OpConstantNull %v2int
- %arg_1 = OpVariable %_ptr_Private_v2int Private %9
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+ %13 = OpConstantNull %v2int
+ %arg_1 = OpVariable %_ptr_Private_v2int Private %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%21 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_c084e3 = OpFunction %void None %14
%17 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_c084e3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %14
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_c084e3
- %33 = OpFunctionCall %void %tint_symbol_2 %13
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_c084e3
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_c084e3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %14
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_c084e3
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_c084e3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm
index 2b15722..cdd710d 100644
--- a/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/d06c2c.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
%20 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_d06c2c "frexp_d06c2c"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,7 +43,7 @@
%v2float = OpTypeVector %float 2
%21 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_d06c2c = OpFunction %void None %9
%12 = OpLabel
@@ -54,26 +53,25 @@
OpStore %res %18
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %frexp_d06c2c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %frexp_d06c2c
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_d06c2c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_d06c2c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %frexp_d06c2c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %frexp_d06c2c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/d80367.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/d80367.wgsl.expected.spvasm
index 03f674e..60bdf42 100644
--- a/test/intrinsics/gen/frexp/d80367.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/d80367.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%17 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_d80367 "frexp_d80367"
OpName %_frexp_result_vec4 "_frexp_result_vec4"
OpMemberName %_frexp_result_vec4 0 "sig"
OpMemberName %_frexp_result_vec4 1 "exp"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_frexp_result_vec4 0 Offset 0
OpMemberDecorate %_frexp_result_vec4 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,35 +41,34 @@
%_frexp_result_vec4 = OpTypeStruct %v4float %v4int
%_ptr_Function__frexp_result_vec4 = OpTypePointer Function %_frexp_result_vec4
%20 = OpConstantNull %_frexp_result_vec4
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_d80367 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function__frexp_result_vec4 Function %20
- %13 = OpExtInst %_frexp_result_vec4 %17 FrexpStruct %8
+ %13 = OpExtInst %_frexp_result_vec4 %17 FrexpStruct %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %frexp_d80367
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %frexp_d80367
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %frexp_d80367
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %frexp_d80367
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %frexp_d80367
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %frexp_d80367
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/db0637.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/db0637.wgsl.expected.spvasm
index df21833..29f2d0f 100644
--- a/test/intrinsics/gen/frexp/db0637.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/db0637.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_db0637 "frexp_db0637"
OpName %_frexp_result_vec2 "_frexp_result_vec2"
OpMemberName %_frexp_result_vec2 0 "sig"
OpMemberName %_frexp_result_vec2 1 "exp"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_frexp_result_vec2 0 Offset 0
OpMemberDecorate %_frexp_result_vec2 1 Offset 8
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -44,7 +43,7 @@
%19 = OpConstantNull %v2float
%_ptr_Function__frexp_result_vec2 = OpTypePointer Function %_frexp_result_vec2
%22 = OpConstantNull %_frexp_result_vec2
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%frexp_db0637 = OpFunction %void None %9
%12 = OpLabel
@@ -53,26 +52,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_db0637
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %frexp_db0637
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %frexp_db0637
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %frexp_db0637
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %frexp_db0637
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %frexp_db0637
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm
index 1504a09..2b5912d 100644
--- a/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/frexp/e061dd.wgsl.expected.spvasm
@@ -5,36 +5,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %frexp_e061dd "frexp_e061dd"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,35 +41,34 @@
%16 = OpConstantNull %int
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%frexp_e061dd = OpFunction %void None %9
%12 = OpLabel
%arg_1 = OpVariable %_ptr_Function_int Function %16
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%17 = OpExtInst %float %18 Frexp %float_1 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %frexp_e061dd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %frexp_e061dd
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %frexp_e061dd
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %frexp_e061dd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %frexp_e061dd
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %frexp_e061dd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/2a6ac2.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/2a6ac2.wgsl.expected.spvasm
index 4a95840..72ffad9 100644
--- a/test/intrinsics/gen/ignore/2a6ac2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/2a6ac2.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_2a6ac2 "ignore_2a6ac2"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_2a6ac2 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_2a6ac2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_2a6ac2
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_2a6ac2
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_2a6ac2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_2a6ac2
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_2a6ac2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/5016e5.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/5016e5.wgsl.expected.spvasm
index 0680324..2261539 100644
--- a/test/intrinsics/gen/ignore/5016e5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/5016e5.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_5016e5 "ignore_5016e5"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeSampler
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeSampler
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_5016e5 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_5016e5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_5016e5
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_5016e5
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_5016e5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_5016e5
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_5016e5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/509355.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/509355.wgsl.expected.spvasm
index a860843..9b62c2f 100644
--- a/test/intrinsics/gen/ignore/509355.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/509355.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_509355 "ignore_509355"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_509355 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_509355
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_509355
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_509355
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_509355
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_509355
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_509355
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/51aeb7.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/51aeb7.wgsl.expected.spvasm
index 5ffaca4..02a2131 100644
--- a/test/intrinsics/gen/ignore/51aeb7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/51aeb7.wgsl.expected.spvasm
@@ -1,63 +1,61 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ignore_51aeb7 "ignore_51aeb7"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %16 = OpTypeFunction %void %v4float
+ %16 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_51aeb7 = OpFunction %void None %9
%12 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %16
-%tint_symbol = OpFunctionParameter %v4float
- %19 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %16
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %ignore_51aeb7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%21 = OpLabel
- OpStore %tint_pointsize %float_1
- %23 = OpFunctionCall %void %ignore_51aeb7
- %24 = OpFunctionCall %void %tint_symbol_2 %8
+ %22 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %22
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %26 = OpLabel
- %27 = OpFunctionCall %void %ignore_51aeb7
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %ignore_51aeb7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ignore_51aeb7
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ignore_51aeb7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/5c9edf.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/5c9edf.wgsl.expected.spvasm
index eb22bf0..5472bfb 100644
--- a/test/intrinsics/gen/ignore/5c9edf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/5c9edf.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_5c9edf "ignore_5c9edf"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_5c9edf = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_5c9edf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_5c9edf
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_5c9edf
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_5c9edf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_5c9edf
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_5c9edf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/6698df.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/6698df.wgsl.expected.spvasm
index 939b535..6946564 100644
--- a/test/intrinsics/gen/ignore/6698df.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/6698df.wgsl.expected.spvasm
@@ -1,63 +1,61 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ignore_6698df "ignore_6698df"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
- %16 = OpTypeFunction %void %v4float
+ %16 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_6698df = OpFunction %void None %9
%12 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %16
-%tint_symbol = OpFunctionParameter %v4float
- %19 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %16
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %ignore_6698df
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%21 = OpLabel
- OpStore %tint_pointsize %float_1
- %23 = OpFunctionCall %void %ignore_6698df
- %24 = OpFunctionCall %void %tint_symbol_2 %8
+ %22 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %22
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %26 = OpLabel
- %27 = OpFunctionCall %void %ignore_6698df
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %ignore_6698df
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ignore_6698df
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ignore_6698df
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/ad88be.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/ad88be.wgsl.expected.spvasm
index b07a0f4..5f0e9b8 100644
--- a/test/intrinsics/gen/ignore/ad88be.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/ad88be.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_ad88be "ignore_ad88be"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_ad88be = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_ad88be
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_ad88be
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_ad88be
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_ad88be
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_ad88be
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_ad88be
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/b469af.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/b469af.wgsl.expected.spvasm
index a30d025..6d20fc2 100644
--- a/test/intrinsics/gen/ignore/b469af.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/b469af.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_b469af "ignore_b469af"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeSampler
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeSampler
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_b469af = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_b469af
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_b469af
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_b469af
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_b469af
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_b469af
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_b469af
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/c8a0ee.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/c8a0ee.wgsl.expected.spvasm
index 7930368..e864cdb 100644
--- a/test/intrinsics/gen/ignore/c8a0ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/c8a0ee.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_c8a0ee "ignore_c8a0ee"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_c8a0ee = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_c8a0ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_c8a0ee
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_c8a0ee
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_c8a0ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_c8a0ee
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_c8a0ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/d91a2f.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/d91a2f.wgsl.expected.spvasm
index 32c2d06..2d67297 100644
--- a/test/intrinsics/gen/ignore/d91a2f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/d91a2f.wgsl.expected.spvasm
@@ -1,61 +1,59 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 29
+; Bound: 28
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ignore_d91a2f "ignore_d91a2f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
- %15 = OpTypeFunction %void %v4float
+ %15 = OpTypeFunction %v4float
%ignore_d91a2f = OpFunction %void None %9
%12 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %v4float
- %18 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %15
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %ignore_d91a2f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%20 = OpLabel
- OpStore %tint_pointsize %float_1
- %21 = OpFunctionCall %void %ignore_d91a2f
- %22 = OpFunctionCall %void %tint_symbol_2 %8
+ %21 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %21
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %24 = OpLabel
- %25 = OpFunctionCall %void %ignore_d91a2f
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %ignore_d91a2f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %ignore_d91a2f
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %ignore_d91a2f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/e0187b.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/e0187b.wgsl.expected.spvasm
index 018feeb..7d0b8e6 100644
--- a/test/intrinsics/gen/ignore/e0187b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/e0187b.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %ignore_e0187b "ignore_e0187b"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_e0187b = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
+ %17 = OpLoad %11 %arg_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %ignore_e0187b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %ignore_e0187b
- %26 = OpFunctionCall %void %tint_symbol_2 %11
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %28 = OpLabel
- %29 = OpFunctionCall %void %ignore_e0187b
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %ignore_e0187b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %ignore_e0187b
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %ignore_e0187b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ignore/f414a6.wgsl.expected.spvasm b/test/intrinsics/gen/ignore/f414a6.wgsl.expected.spvasm
index 1d69349..cd952a8 100644
--- a/test/intrinsics/gen/ignore/f414a6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ignore/f414a6.wgsl.expected.spvasm
@@ -1,63 +1,61 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 31
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ignore_f414a6 "ignore_f414a6"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%15 = OpConstantNull %bool
- %16 = OpTypeFunction %void %v4float
+ %16 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ignore_f414a6 = OpFunction %void None %9
%12 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %16
-%tint_symbol = OpFunctionParameter %v4float
- %19 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %16
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %ignore_f414a6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%21 = OpLabel
- OpStore %tint_pointsize %float_1
- %23 = OpFunctionCall %void %ignore_f414a6
- %24 = OpFunctionCall %void %tint_symbol_2 %8
+ %22 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %22
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %26 = OpLabel
- %27 = OpFunctionCall %void %ignore_f414a6
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %ignore_f414a6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ignore_f414a6
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ignore_f414a6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/inverseSqrt/84407e.wgsl.expected.spvasm b/test/intrinsics/gen/inverseSqrt/84407e.wgsl.expected.spvasm
index 33a4c98..2027c7e 100644
--- a/test/intrinsics/gen/inverseSqrt/84407e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/inverseSqrt/84407e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %inverseSqrt_84407e "inverseSqrt_84407e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%inverseSqrt_84407e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 InverseSqrt %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %inverseSqrt_84407e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %inverseSqrt_84407e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %inverseSqrt_84407e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %inverseSqrt_84407e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %inverseSqrt_84407e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %inverseSqrt_84407e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/inverseSqrt/8f2bd2.wgsl.expected.spvasm b/test/intrinsics/gen/inverseSqrt/8f2bd2.wgsl.expected.spvasm
index 2ec31e8..d8b7416 100644
--- a/test/intrinsics/gen/inverseSqrt/8f2bd2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/inverseSqrt/8f2bd2.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %inverseSqrt_8f2bd2 "inverseSqrt_8f2bd2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%inverseSqrt_8f2bd2 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %inverseSqrt_8f2bd2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %inverseSqrt_8f2bd2
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %inverseSqrt_8f2bd2
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %inverseSqrt_8f2bd2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %inverseSqrt_8f2bd2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %inverseSqrt_8f2bd2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/inverseSqrt/b197b1.wgsl.expected.spvasm b/test/intrinsics/gen/inverseSqrt/b197b1.wgsl.expected.spvasm
index beb3454..c70dc36 100644
--- a/test/intrinsics/gen/inverseSqrt/b197b1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/inverseSqrt/b197b1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %inverseSqrt_b197b1 "inverseSqrt_b197b1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%inverseSqrt_b197b1 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %inverseSqrt_b197b1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %inverseSqrt_b197b1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %inverseSqrt_b197b1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %inverseSqrt_b197b1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %inverseSqrt_b197b1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %inverseSqrt_b197b1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/inverseSqrt/c22347.wgsl.expected.spvasm b/test/intrinsics/gen/inverseSqrt/c22347.wgsl.expected.spvasm
index 8bcc297..9dcf623 100644
--- a/test/intrinsics/gen/inverseSqrt/c22347.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/inverseSqrt/c22347.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %inverseSqrt_c22347 "inverseSqrt_c22347"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%inverseSqrt_c22347 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 InverseSqrt %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 InverseSqrt %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %inverseSqrt_c22347
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %inverseSqrt_c22347
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %inverseSqrt_c22347
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %inverseSqrt_c22347
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %inverseSqrt_c22347
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %inverseSqrt_c22347
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isFinite/34d32b.wgsl.expected.spvasm b/test/intrinsics/gen/isFinite/34d32b.wgsl.expected.spvasm
index 852e906..ba60133 100644
--- a/test/intrinsics/gen/isFinite/34d32b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isFinite/34d32b.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isFinite_34d32b "isFinite_34d32b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%23 = OpConstantNull %v2bool
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isFinite_34d32b = OpFunction %void None %9
%12 = OpLabel
@@ -49,26 +48,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %isFinite_34d32b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %isFinite_34d32b
- %32 = OpFunctionCall %void %tint_symbol_2 %8
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isFinite_34d32b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isFinite_34d32b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %37 = OpLabel
- %38 = OpFunctionCall %void %isFinite_34d32b
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %isFinite_34d32b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isFinite/426f9f.wgsl.expected.spvasm b/test/intrinsics/gen/isFinite/426f9f.wgsl.expected.spvasm
index 4b54ee8..6c06d83 100644
--- a/test/intrinsics/gen/isFinite/426f9f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isFinite/426f9f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isFinite_426f9f "isFinite_426f9f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%_ptr_Function_bool = OpTypePointer Function %bool
%21 = OpConstantNull %bool
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%isFinite_426f9f = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %21
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %isFinite_426f9f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %isFinite_426f9f
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isFinite_426f9f
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isFinite_426f9f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isFinite_426f9f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isFinite_426f9f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isFinite/8a23ad.wgsl.expected.spvasm b/test/intrinsics/gen/isFinite/8a23ad.wgsl.expected.spvasm
index 1bfb11b..bc09cee 100644
--- a/test/intrinsics/gen/isFinite/8a23ad.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isFinite/8a23ad.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isFinite_8a23ad "isFinite_8a23ad"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v3float
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%23 = OpConstantNull %v3bool
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isFinite_8a23ad = OpFunction %void None %9
%12 = OpLabel
@@ -49,26 +48,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %isFinite_8a23ad
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %isFinite_8a23ad
- %32 = OpFunctionCall %void %tint_symbol_2 %8
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isFinite_8a23ad
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isFinite_8a23ad
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %37 = OpLabel
- %38 = OpFunctionCall %void %isFinite_8a23ad
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %isFinite_8a23ad
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isFinite/f31987.wgsl.expected.spvasm b/test/intrinsics/gen/isFinite/f31987.wgsl.expected.spvasm
index 5e80787..3d8b0d3 100644
--- a/test/intrinsics/gen/isFinite/f31987.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isFinite/f31987.wgsl.expected.spvasm
@@ -1,72 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isFinite_f31987 "isFinite_f31987"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%21 = OpConstantNull %v4bool
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isFinite_f31987 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4bool Function %21
- %16 = OpIsInf %v4bool %8
- %17 = OpIsNan %v4bool %8
+ %16 = OpIsInf %v4bool %5
+ %17 = OpIsNan %v4bool %5
%18 = OpLogicalOr %v4bool %16 %17
%13 = OpLogicalNot %v4bool %18
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %isFinite_f31987
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %isFinite_f31987
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %isFinite_f31987
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %isFinite_f31987
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %isFinite_f31987
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %isFinite_f31987
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isInf/666f2a.wgsl.expected.spvasm b/test/intrinsics/gen/isInf/666f2a.wgsl.expected.spvasm
index 34a0c56..6fd40e1 100644
--- a/test/intrinsics/gen/isInf/666f2a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isInf/666f2a.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isInf_666f2a "isInf_666f2a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v3float
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%20 = OpConstantNull %v3bool
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isInf_666f2a = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %isInf_666f2a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %isInf_666f2a
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isInf_666f2a
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isInf_666f2a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isInf_666f2a
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isInf_666f2a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isInf/7bd98f.wgsl.expected.spvasm b/test/intrinsics/gen/isInf/7bd98f.wgsl.expected.spvasm
index f538f3a..62070aa 100644
--- a/test/intrinsics/gen/isInf/7bd98f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isInf/7bd98f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isInf_7bd98f "isInf_7bd98f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%_ptr_Function_bool = OpTypePointer Function %bool
%18 = OpConstantNull %bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%isInf_7bd98f = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %18
@@ -43,26 +42,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %isInf_7bd98f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %isInf_7bd98f
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %isInf_7bd98f
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %isInf_7bd98f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isInf_7bd98f
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isInf_7bd98f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isInf/7e81b5.wgsl.expected.spvasm b/test/intrinsics/gen/isInf/7e81b5.wgsl.expected.spvasm
index 7b5ba04..ffc62c2 100644
--- a/test/intrinsics/gen/isInf/7e81b5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isInf/7e81b5.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isInf_7e81b5 "isInf_7e81b5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%18 = OpConstantNull %v4bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isInf_7e81b5 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4bool Function %18
- %13 = OpIsInf %v4bool %8
+ %13 = OpIsInf %v4bool %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %isInf_7e81b5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %isInf_7e81b5
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %isInf_7e81b5
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %isInf_7e81b5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %isInf_7e81b5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %isInf_7e81b5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isInf/a46d6f.wgsl.expected.spvasm b/test/intrinsics/gen/isInf/a46d6f.wgsl.expected.spvasm
index 20f293b..5aa43d3 100644
--- a/test/intrinsics/gen/isInf/a46d6f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isInf/a46d6f.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isInf_a46d6f "isInf_a46d6f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%20 = OpConstantNull %v2bool
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isInf_a46d6f = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %isInf_a46d6f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %isInf_a46d6f
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isInf_a46d6f
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isInf_a46d6f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isInf_a46d6f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isInf_a46d6f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNan/1280ab.wgsl.expected.spvasm b/test/intrinsics/gen/isNan/1280ab.wgsl.expected.spvasm
index e8bec27..268f5de 100644
--- a/test/intrinsics/gen/isNan/1280ab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNan/1280ab.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNan_1280ab "isNan_1280ab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v3float
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%20 = OpConstantNull %v3bool
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNan_1280ab = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %isNan_1280ab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %isNan_1280ab
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isNan_1280ab
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isNan_1280ab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isNan_1280ab
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isNan_1280ab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNan/4d280d.wgsl.expected.spvasm b/test/intrinsics/gen/isNan/4d280d.wgsl.expected.spvasm
index 56ba241..074a58b 100644
--- a/test/intrinsics/gen/isNan/4d280d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNan/4d280d.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNan_4d280d "isNan_4d280d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%18 = OpConstantNull %v4bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNan_4d280d = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4bool Function %18
- %13 = OpIsNan %v4bool %8
+ %13 = OpIsNan %v4bool %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %isNan_4d280d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %isNan_4d280d
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %isNan_4d280d
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %isNan_4d280d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %isNan_4d280d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %isNan_4d280d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNan/67ecd3.wgsl.expected.spvasm b/test/intrinsics/gen/isNan/67ecd3.wgsl.expected.spvasm
index fe0be0d..ae148ec 100644
--- a/test/intrinsics/gen/isNan/67ecd3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNan/67ecd3.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNan_67ecd3 "isNan_67ecd3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%20 = OpConstantNull %v2bool
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNan_67ecd3 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %isNan_67ecd3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %isNan_67ecd3
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isNan_67ecd3
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isNan_67ecd3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %isNan_67ecd3
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isNan_67ecd3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNan/e4978e.wgsl.expected.spvasm b/test/intrinsics/gen/isNan/e4978e.wgsl.expected.spvasm
index 4d21c4d..c3140e2 100644
--- a/test/intrinsics/gen/isNan/e4978e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNan/e4978e.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNan_e4978e "isNan_e4978e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%_ptr_Function_bool = OpTypePointer Function %bool
%18 = OpConstantNull %bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%isNan_e4978e = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %18
@@ -43,26 +42,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %isNan_e4978e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %isNan_e4978e
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %isNan_e4978e
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %isNan_e4978e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %isNan_e4978e
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %isNan_e4978e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNormal/863dcd.wgsl.expected.spvasm b/test/intrinsics/gen/isNormal/863dcd.wgsl.expected.spvasm
index ec938ef..c782b6c 100644
--- a/test/intrinsics/gen/isNormal/863dcd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNormal/863dcd.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNormal_863dcd "isNormal_863dcd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -41,7 +40,7 @@
%v4uint = OpTypeVector %uint 4
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%30 = OpConstantNull %v4bool
- %31 = OpTypeFunction %void %v4float
+ %31 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNormal_863dcd = OpFunction %void None %9
%12 = OpLabel
@@ -49,33 +48,32 @@
%22 = OpCompositeConstruct %v4uint %uint_133693440 %uint_133693440 %uint_133693440 %uint_133693440
%23 = OpCompositeConstruct %v4uint %uint_524288 %uint_524288 %uint_524288 %uint_524288
%24 = OpCompositeConstruct %v4uint %uint_133169152 %uint_133169152 %uint_133169152 %uint_133169152
- %25 = OpBitcast %v4uint %8
+ %25 = OpBitcast %v4uint %5
%26 = OpBitwiseAnd %v4uint %25 %22
%27 = OpExtInst %v4uint %16 UClamp %26 %23 %24
%13 = OpIEqual %v4bool %26 %27
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %31
-%tint_symbol = OpFunctionParameter %v4float
- %34 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %31
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %isNormal_863dcd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%36 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %isNormal_863dcd
- %39 = OpFunctionCall %void %tint_symbol_2 %8
+ %37 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %37
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %41 = OpLabel
- %42 = OpFunctionCall %void %isNormal_863dcd
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %isNormal_863dcd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %44 = OpLabel
- %45 = OpFunctionCall %void %isNormal_863dcd
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %isNormal_863dcd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNormal/b00ab1.wgsl.expected.spvasm b/test/intrinsics/gen/isNormal/b00ab1.wgsl.expected.spvasm
index 0de7bf9..865cf7b 100644
--- a/test/intrinsics/gen/isNormal/b00ab1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNormal/b00ab1.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNormal_b00ab1 "isNormal_b00ab1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -43,7 +42,7 @@
%v2uint = OpTypeVector %uint 2
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%32 = OpConstantNull %v2bool
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNormal_b00ab1 = OpFunction %void None %9
%12 = OpLabel
@@ -58,26 +57,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %isNormal_b00ab1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %40 = OpFunctionCall %void %isNormal_b00ab1
- %41 = OpFunctionCall %void %tint_symbol_2 %8
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %43 = OpLabel
- %44 = OpFunctionCall %void %isNormal_b00ab1
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %isNormal_b00ab1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %46 = OpLabel
- %47 = OpFunctionCall %void %isNormal_b00ab1
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %isNormal_b00ab1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNormal/c286b7.wgsl.expected.spvasm b/test/intrinsics/gen/isNormal/c286b7.wgsl.expected.spvasm
index 657c0d4..158b6bb 100644
--- a/test/intrinsics/gen/isNormal/c286b7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNormal/c286b7.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNormal_c286b7 "isNormal_c286b7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -43,7 +42,7 @@
%v3uint = OpTypeVector %uint 3
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%32 = OpConstantNull %v3bool
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%isNormal_c286b7 = OpFunction %void None %9
%12 = OpLabel
@@ -58,26 +57,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %isNormal_c286b7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %40 = OpFunctionCall %void %isNormal_c286b7
- %41 = OpFunctionCall %void %tint_symbol_2 %8
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %43 = OpLabel
- %44 = OpFunctionCall %void %isNormal_c286b7
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %isNormal_c286b7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %46 = OpLabel
- %47 = OpFunctionCall %void %isNormal_c286b7
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %isNormal_c286b7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/isNormal/c6e880.wgsl.expected.spvasm b/test/intrinsics/gen/isNormal/c6e880.wgsl.expected.spvasm
index 10c9497..a849dfe 100644
--- a/test/intrinsics/gen/isNormal/c6e880.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/isNormal/c6e880.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %isNormal_c6e880 "isNormal_c6e880"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -40,7 +39,7 @@
%uint_133169152 = OpConstant %uint 133169152
%_ptr_Function_bool = OpTypePointer Function %bool
%26 = OpConstantNull %bool
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%isNormal_c6e880 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %26
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %isNormal_c6e880
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %isNormal_c6e880
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %isNormal_c6e880
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %isNormal_c6e880
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %isNormal_c6e880
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %isNormal_c6e880
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ldexp/a31cdc.wgsl.expected.spvasm b/test/intrinsics/gen/ldexp/a31cdc.wgsl.expected.spvasm
index 0e0b939..8c131c6 100644
--- a/test/intrinsics/gen/ldexp/a31cdc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ldexp/a31cdc.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ldexp_a31cdc "ldexp_a31cdc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -38,7 +37,7 @@
%v3int = OpTypeVector %int 3
%19 = OpConstantNull %v3int
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ldexp_a31cdc = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %ldexp_a31cdc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %ldexp_a31cdc
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %ldexp_a31cdc
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %ldexp_a31cdc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %ldexp_a31cdc
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %ldexp_a31cdc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ldexp/abd718.wgsl.expected.spvasm b/test/intrinsics/gen/ldexp/abd718.wgsl.expected.spvasm
index 64f614c..7da0d18 100644
--- a/test/intrinsics/gen/ldexp/abd718.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ldexp/abd718.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ldexp_abd718 "ldexp_abd718"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -38,7 +37,7 @@
%v2int = OpTypeVector %int 2
%19 = OpConstantNull %v2int
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ldexp_abd718 = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %ldexp_abd718
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %ldexp_abd718
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %ldexp_abd718
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %ldexp_abd718
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %ldexp_abd718
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %ldexp_abd718
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ldexp/cc9cde.wgsl.expected.spvasm b/test/intrinsics/gen/ldexp/cc9cde.wgsl.expected.spvasm
index 9fabf44..4f75b89 100644
--- a/test/intrinsics/gen/ldexp/cc9cde.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ldexp/cc9cde.wgsl.expected.spvasm
@@ -1,70 +1,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ldexp_cc9cde "ldexp_cc9cde"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%17 = OpConstantNull %v4int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%ldexp_cc9cde = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Ldexp %8 %17
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Ldexp %5 %17
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %ldexp_cc9cde
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %ldexp_cc9cde
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %ldexp_cc9cde
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %ldexp_cc9cde
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %ldexp_cc9cde
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %ldexp_cc9cde
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/ldexp/db8b49.wgsl.expected.spvasm b/test/intrinsics/gen/ldexp/db8b49.wgsl.expected.spvasm
index 1295722..7e09bc0 100644
--- a/test/intrinsics/gen/ldexp/db8b49.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/ldexp/db8b49.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %ldexp_db8b49 "ldexp_db8b49"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_float = OpTypePointer Function %float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%ldexp_db8b49 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Ldexp %float_1 %int_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %ldexp_db8b49
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %ldexp_db8b49
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %ldexp_db8b49
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %ldexp_db8b49
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %ldexp_db8b49
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %ldexp_db8b49
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/length/056071.wgsl.expected.spvasm b/test/intrinsics/gen/length/056071.wgsl.expected.spvasm
index aa71be3..47e4a5d 100644
--- a/test/intrinsics/gen/length/056071.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/length/056071.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %length_056071 "length_056071"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%length_056071 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Length %16
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %length_056071
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %length_056071
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %length_056071
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %length_056071
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %length_056071
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %length_056071
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/length/602a17.wgsl.expected.spvasm b/test/intrinsics/gen/length/602a17.wgsl.expected.spvasm
index aec0374..f42a9a5 100644
--- a/test/intrinsics/gen/length/602a17.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/length/602a17.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %length_602a17 "length_602a17"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%length_602a17 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Length %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %length_602a17
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %length_602a17
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %length_602a17
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %length_602a17
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %length_602a17
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %length_602a17
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/length/afde8b.wgsl.expected.spvasm b/test/intrinsics/gen/length/afde8b.wgsl.expected.spvasm
index 73d97a8..9dc8665 100644
--- a/test/intrinsics/gen/length/afde8b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/length/afde8b.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %length_afde8b "length_afde8b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%length_afde8b = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Length %16
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %length_afde8b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %length_afde8b
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %length_afde8b
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %length_afde8b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %length_afde8b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %length_afde8b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/length/becebf.wgsl.expected.spvasm b/test/intrinsics/gen/length/becebf.wgsl.expected.spvasm
index 4b20f99..aebf0ae 100644
--- a/test/intrinsics/gen/length/becebf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/length/becebf.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %length_becebf "length_becebf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%length_becebf = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %13 = OpExtInst %float %14 Length %8
+ %res = OpVariable %_ptr_Function_float Function %8
+ %13 = OpExtInst %float %14 Length %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %length_becebf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %length_becebf
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %length_becebf
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %length_becebf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %length_becebf
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %length_becebf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log/3da25a.wgsl.expected.spvasm b/test/intrinsics/gen/log/3da25a.wgsl.expected.spvasm
index de8964a..2546b7f 100644
--- a/test/intrinsics/gen/log/3da25a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log/3da25a.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log_3da25a "log_3da25a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log_3da25a = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Log %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Log %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %log_3da25a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %log_3da25a
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %log_3da25a
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %log_3da25a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %log_3da25a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %log_3da25a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log/7114a6.wgsl.expected.spvasm b/test/intrinsics/gen/log/7114a6.wgsl.expected.spvasm
index 2069403..6d8292f 100644
--- a/test/intrinsics/gen/log/7114a6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log/7114a6.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log_7114a6 "log_7114a6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%log_7114a6 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Log %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %log_7114a6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %log_7114a6
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %log_7114a6
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %log_7114a6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %log_7114a6
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %log_7114a6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log/b2ce28.wgsl.expected.spvasm b/test/intrinsics/gen/log/b2ce28.wgsl.expected.spvasm
index 94e3fda..d64f498 100644
--- a/test/intrinsics/gen/log/b2ce28.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log/b2ce28.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log_b2ce28 "log_b2ce28"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log_b2ce28 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %log_b2ce28
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %log_b2ce28
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %log_b2ce28
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %log_b2ce28
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %log_b2ce28
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %log_b2ce28
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log/f4c570.wgsl.expected.spvasm b/test/intrinsics/gen/log/f4c570.wgsl.expected.spvasm
index 69b5d67..32ce39c 100644
--- a/test/intrinsics/gen/log/f4c570.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log/f4c570.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log_f4c570 "log_f4c570"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log_f4c570 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %log_f4c570
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %log_f4c570
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %log_f4c570
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %log_f4c570
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %log_f4c570
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %log_f4c570
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log2/4036ed.wgsl.expected.spvasm b/test/intrinsics/gen/log2/4036ed.wgsl.expected.spvasm
index 79365bf..197b7a2 100644
--- a/test/intrinsics/gen/log2/4036ed.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log2/4036ed.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log2_4036ed "log2_4036ed"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%log2_4036ed = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Log2 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %log2_4036ed
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %log2_4036ed
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %log2_4036ed
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %log2_4036ed
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %log2_4036ed
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %log2_4036ed
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log2/902988.wgsl.expected.spvasm b/test/intrinsics/gen/log2/902988.wgsl.expected.spvasm
index 094a885..81e9118 100644
--- a/test/intrinsics/gen/log2/902988.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log2/902988.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log2_902988 "log2_902988"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log2_902988 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Log2 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Log2 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %log2_902988
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %log2_902988
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %log2_902988
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %log2_902988
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %log2_902988
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %log2_902988
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log2/adb233.wgsl.expected.spvasm b/test/intrinsics/gen/log2/adb233.wgsl.expected.spvasm
index 166e27f..5218f91 100644
--- a/test/intrinsics/gen/log2/adb233.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log2/adb233.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log2_adb233 "log2_adb233"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log2_adb233 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %log2_adb233
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %log2_adb233
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %log2_adb233
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %log2_adb233
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %log2_adb233
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %log2_adb233
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/log2/aea659.wgsl.expected.spvasm b/test/intrinsics/gen/log2/aea659.wgsl.expected.spvasm
index 7e17b05..708bf37 100644
--- a/test/intrinsics/gen/log2/aea659.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/log2/aea659.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %log2_aea659 "log2_aea659"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%log2_aea659 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %log2_aea659
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %log2_aea659
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %log2_aea659
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %log2_aea659
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %log2_aea659
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %log2_aea659
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/0c0aae.wgsl.expected.spvasm b/test/intrinsics/gen/max/0c0aae.wgsl.expected.spvasm
index cc586bb..5b93d07 100644
--- a/test/intrinsics/gen/max/0c0aae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/0c0aae.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_0c0aae "max_0c0aae"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%19 = OpConstantNull %uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_0c0aae = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_0c0aae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_0c0aae
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_0c0aae
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_0c0aae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_0c0aae
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_0c0aae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/25eafe.wgsl.expected.spvasm b/test/intrinsics/gen/max/25eafe.wgsl.expected.spvasm
index 9c17396..ee169746 100644
--- a/test/intrinsics/gen/max/25eafe.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/25eafe.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_25eafe "max_25eafe"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_25eafe = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_25eafe
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_25eafe
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_25eafe
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_25eafe
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_25eafe
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_25eafe
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/320815.wgsl.expected.spvasm b/test/intrinsics/gen/max/320815.wgsl.expected.spvasm
index 24307bd..649e397 100644
--- a/test/intrinsics/gen/max/320815.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/320815.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_320815 "max_320815"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_320815 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_320815
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_320815
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_320815
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_320815
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_320815
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_320815
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/44a39d.wgsl.expected.spvasm b/test/intrinsics/gen/max/44a39d.wgsl.expected.spvasm
index b2775c6..a115b4a 100644
--- a/test/intrinsics/gen/max/44a39d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/44a39d.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_44a39d "max_44a39d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%max_44a39d = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 NMax %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %max_44a39d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %max_44a39d
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %max_44a39d
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %max_44a39d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_44a39d
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_44a39d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/453e04.wgsl.expected.spvasm b/test/intrinsics/gen/max/453e04.wgsl.expected.spvasm
index 942578b..25e7047 100644
--- a/test/intrinsics/gen/max/453e04.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/453e04.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_453e04 "max_453e04"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_453e04 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_453e04
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_453e04
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_453e04
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_453e04
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_453e04
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_453e04
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/462050.wgsl.expected.spvasm b/test/intrinsics/gen/max/462050.wgsl.expected.spvasm
index 6a3f595..f513309 100644
--- a/test/intrinsics/gen/max/462050.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/462050.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_462050 "max_462050"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_462050 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %max_462050
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %max_462050
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %max_462050
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %max_462050
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %max_462050
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %max_462050
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/4883ac.wgsl.expected.spvasm b/test/intrinsics/gen/max/4883ac.wgsl.expected.spvasm
index 497672a..f3a038b 100644
--- a/test/intrinsics/gen/max/4883ac.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/4883ac.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_4883ac "max_4883ac"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_4883ac = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %max_4883ac
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %max_4883ac
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %max_4883ac
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %max_4883ac
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %max_4883ac
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %max_4883ac
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/85e6bc.wgsl.expected.spvasm b/test/intrinsics/gen/max/85e6bc.wgsl.expected.spvasm
index 2bd843e..4274291 100644
--- a/test/intrinsics/gen/max/85e6bc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/85e6bc.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_85e6bc "max_85e6bc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_85e6bc = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_85e6bc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_85e6bc
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_85e6bc
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_85e6bc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_85e6bc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_85e6bc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/a93419.wgsl.expected.spvasm b/test/intrinsics/gen/max/a93419.wgsl.expected.spvasm
index affcf74..7a4efd7 100644
--- a/test/intrinsics/gen/max/a93419.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/a93419.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_a93419 "max_a93419"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_a93419 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 NMax %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 NMax %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %max_a93419
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %max_a93419
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %max_a93419
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %max_a93419
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_a93419
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_a93419
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/b1b73a.wgsl.expected.spvasm b/test/intrinsics/gen/max/b1b73a.wgsl.expected.spvasm
index 54cf5c4..1daf570 100644
--- a/test/intrinsics/gen/max/b1b73a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/b1b73a.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_b1b73a "max_b1b73a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_b1b73a = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_b1b73a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_b1b73a
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_b1b73a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_b1b73a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_b1b73a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_b1b73a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/ce7c30.wgsl.expected.spvasm b/test/intrinsics/gen/max/ce7c30.wgsl.expected.spvasm
index 068d7d2..94a170d 100644
--- a/test/intrinsics/gen/max/ce7c30.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/ce7c30.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_ce7c30 "max_ce7c30"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%19 = OpConstantNull %int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_ce7c30 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_ce7c30
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_ce7c30
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_ce7c30
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_ce7c30
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_ce7c30
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_ce7c30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/max/e8192f.wgsl.expected.spvasm b/test/intrinsics/gen/max/e8192f.wgsl.expected.spvasm
index d417a92..1c310ad 100644
--- a/test/intrinsics/gen/max/e8192f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/max/e8192f.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %max_e8192f "max_e8192f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%max_e8192f = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %max_e8192f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %max_e8192f
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %max_e8192f
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %max_e8192f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %max_e8192f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %max_e8192f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/03c7e3.wgsl.expected.spvasm b/test/intrinsics/gen/min/03c7e3.wgsl.expected.spvasm
index a303e59..8aad2ec 100644
--- a/test/intrinsics/gen/min/03c7e3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/03c7e3.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_03c7e3 "min_03c7e3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_03c7e3 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_03c7e3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_03c7e3
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_03c7e3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_03c7e3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_03c7e3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_03c7e3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/0dc614.wgsl.expected.spvasm b/test/intrinsics/gen/min/0dc614.wgsl.expected.spvasm
index eebe29b..772b7d0 100644
--- a/test/intrinsics/gen/min/0dc614.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/0dc614.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_0dc614 "min_0dc614"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_0dc614 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_0dc614
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_0dc614
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_0dc614
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_0dc614
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_0dc614
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_0dc614
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/3941e1.wgsl.expected.spvasm b/test/intrinsics/gen/min/3941e1.wgsl.expected.spvasm
index eacea37..03e4ed8 100644
--- a/test/intrinsics/gen/min/3941e1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/3941e1.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_3941e1 "min_3941e1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_3941e1 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_3941e1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_3941e1
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_3941e1
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_3941e1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_3941e1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_3941e1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/46c5d3.wgsl.expected.spvasm b/test/intrinsics/gen/min/46c5d3.wgsl.expected.spvasm
index 7a14bf5..d5fb14a 100644
--- a/test/intrinsics/gen/min/46c5d3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/46c5d3.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_46c5d3 "min_46c5d3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%19 = OpConstantNull %uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_46c5d3 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_46c5d3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_46c5d3
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_46c5d3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_46c5d3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_46c5d3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_46c5d3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/82b28f.wgsl.expected.spvasm b/test/intrinsics/gen/min/82b28f.wgsl.expected.spvasm
index bd2f708..dfee21a 100644
--- a/test/intrinsics/gen/min/82b28f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/82b28f.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_82b28f "min_82b28f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_82b28f = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_82b28f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_82b28f
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_82b28f
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_82b28f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_82b28f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_82b28f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/93cfc4.wgsl.expected.spvasm b/test/intrinsics/gen/min/93cfc4.wgsl.expected.spvasm
index a2b6713..4ec86a3 100644
--- a/test/intrinsics/gen/min/93cfc4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/93cfc4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_93cfc4 "min_93cfc4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_93cfc4 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %min_93cfc4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %min_93cfc4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %min_93cfc4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %min_93cfc4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %min_93cfc4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %min_93cfc4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/a45171.wgsl.expected.spvasm b/test/intrinsics/gen/min/a45171.wgsl.expected.spvasm
index 8f7b2f2..267b83e 100644
--- a/test/intrinsics/gen/min/a45171.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/a45171.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_a45171 "min_a45171"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_a45171 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_a45171
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_a45171
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_a45171
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_a45171
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_a45171
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_a45171
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/aa28ad.wgsl.expected.spvasm b/test/intrinsics/gen/min/aa28ad.wgsl.expected.spvasm
index a45fdff..7c1cb4d 100644
--- a/test/intrinsics/gen/min/aa28ad.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/aa28ad.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_aa28ad "min_aa28ad"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_aa28ad = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %min_aa28ad
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %min_aa28ad
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %min_aa28ad
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %min_aa28ad
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %min_aa28ad
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %min_aa28ad
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/af326d.wgsl.expected.spvasm b/test/intrinsics/gen/min/af326d.wgsl.expected.spvasm
index f56cffe..6168b75 100644
--- a/test/intrinsics/gen/min/af326d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/af326d.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_af326d "min_af326d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%min_af326d = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 NMin %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %min_af326d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %min_af326d
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %min_af326d
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %min_af326d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_af326d
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_af326d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/c70bb7.wgsl.expected.spvasm b/test/intrinsics/gen/min/c70bb7.wgsl.expected.spvasm
index df2e8f1..ed15a51 100644
--- a/test/intrinsics/gen/min/c70bb7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/c70bb7.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_c70bb7 "min_c70bb7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_c70bb7 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_c70bb7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_c70bb7
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_c70bb7
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_c70bb7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_c70bb7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_c70bb7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/c73147.wgsl.expected.spvasm b/test/intrinsics/gen/min/c73147.wgsl.expected.spvasm
index 85c0cb7..1408c34 100644
--- a/test/intrinsics/gen/min/c73147.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/c73147.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_c73147 "min_c73147"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%19 = OpConstantNull %int
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_c73147 = OpFunction %void None %9
%12 = OpLabel
@@ -45,26 +44,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %min_c73147
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %min_c73147
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_c73147
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_c73147
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %min_c73147
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %min_c73147
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/min/c76fa6.wgsl.expected.spvasm b/test/intrinsics/gen/min/c76fa6.wgsl.expected.spvasm
index c537c48..6d8fad9 100644
--- a/test/intrinsics/gen/min/c76fa6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/min/c76fa6.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %min_c76fa6 "min_c76fa6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%min_c76fa6 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 NMin %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 NMin %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %min_c76fa6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %min_c76fa6
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %min_c76fa6
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %min_c76fa6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %min_c76fa6
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %min_c76fa6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/0c8c33.wgsl.expected.spvasm b/test/intrinsics/gen/mix/0c8c33.wgsl.expected.spvasm
index 431e74b..ec2334d 100644
--- a/test/intrinsics/gen/mix/0c8c33.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/0c8c33.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_0c8c33 "mix_0c8c33"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%mix_0c8c33 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %mix_0c8c33
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %mix_0c8c33
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %mix_0c8c33
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %mix_0c8c33
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %mix_0c8c33
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %mix_0c8c33
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/1faeb1.wgsl.expected.spvasm b/test/intrinsics/gen/mix/1faeb1.wgsl.expected.spvasm
index 365f07d..57731fb 100644
--- a/test/intrinsics/gen/mix/1faeb1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/1faeb1.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_1faeb1 "mix_1faeb1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%mix_1faeb1 = OpFunction %void None %9
%12 = OpLabel
- %16 = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %16 = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
%18 = OpCompositeConstruct %v4float %float_1 %float_1 %float_1 %float_1
- %13 = OpExtInst %v4float %14 FMix %8 %8 %18
+ %13 = OpExtInst %v4float %14 FMix %5 %5 %18
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %mix_1faeb1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %mix_1faeb1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %mix_1faeb1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %mix_1faeb1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %mix_1faeb1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %mix_1faeb1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/2fadab.wgsl.expected.spvasm b/test/intrinsics/gen/mix/2fadab.wgsl.expected.spvasm
index 7fa6317..3eb2f5d 100644
--- a/test/intrinsics/gen/mix/2fadab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/2fadab.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_2fadab "mix_2fadab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%mix_2fadab = OpFunction %void None %9
%12 = OpLabel
%18 = OpVariable %_ptr_Function_v2float Function %16
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %mix_2fadab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %mix_2fadab
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %mix_2fadab
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %mix_2fadab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %mix_2fadab
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %mix_2fadab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/315264.wgsl.expected.spvasm b/test/intrinsics/gen/mix/315264.wgsl.expected.spvasm
index bc56ac3..edd5730 100644
--- a/test/intrinsics/gen/mix/315264.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/315264.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_315264 "mix_315264"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%mix_315264 = OpFunction %void None %9
%12 = OpLabel
%18 = OpVariable %_ptr_Function_v3float Function %16
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %mix_315264
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %mix_315264
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %mix_315264
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %mix_315264
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %mix_315264
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %mix_315264
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/4f0b5e.wgsl.expected.spvasm b/test/intrinsics/gen/mix/4f0b5e.wgsl.expected.spvasm
index 60937ee..cac6178 100644
--- a/test/intrinsics/gen/mix/4f0b5e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/4f0b5e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_4f0b5e "mix_4f0b5e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%mix_4f0b5e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 FMix %float_1 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %mix_4f0b5e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %mix_4f0b5e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %mix_4f0b5e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %mix_4f0b5e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %mix_4f0b5e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %mix_4f0b5e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/6f8adc.wgsl.expected.spvasm b/test/intrinsics/gen/mix/6f8adc.wgsl.expected.spvasm
index 7d6f639..86fda17 100644
--- a/test/intrinsics/gen/mix/6f8adc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/6f8adc.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_6f8adc "mix_6f8adc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%mix_6f8adc = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %mix_6f8adc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %mix_6f8adc
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %mix_6f8adc
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %mix_6f8adc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %mix_6f8adc
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %mix_6f8adc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/mix/c37ede.wgsl.expected.spvasm b/test/intrinsics/gen/mix/c37ede.wgsl.expected.spvasm
index 7aa03fc..dfac6fa 100644
--- a/test/intrinsics/gen/mix/c37ede.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/mix/c37ede.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %mix_c37ede "mix_c37ede"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%mix_c37ede = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 FMix %8 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 FMix %5 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %mix_c37ede
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %mix_c37ede
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %mix_c37ede
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %mix_c37ede
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %mix_c37ede
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %mix_c37ede
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm
index 2a9a616..a8c3e95 100644
--- a/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/1d59e5.wgsl.expected.spvasm
@@ -5,30 +5,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %modf_1d59e5 "modf_1d59e5"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Workgroup_v4float = OpTypePointer Workgroup %v4float
%arg_1 = OpVariable %_ptr_Workgroup_v4float Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%14 = OpConstantNull %v4float
%_ptr_Function_v4float = OpTypePointer Function %v4float
+ %18 = OpTypeFunction %void %uint
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%modf_1d59e5 = OpFunction %void None %8
@@ -38,10 +41,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpStore %arg_1 %14
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %modf_1d59e5
+ %25 = OpFunctionCall %void %modf_1d59e5
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/2199f1.wgsl.expected.spvasm b/test/intrinsics/gen/modf/2199f1.wgsl.expected.spvasm
index 998b149..20a3c9f 100644
--- a/test/intrinsics/gen/modf/2199f1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/2199f1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_2199f1 "modf_2199f1"
OpName %_modf_result_vec3 "_modf_result_vec3"
OpMemberName %_modf_result_vec3 0 "fract"
OpMemberName %_modf_result_vec3 1 "whole"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_modf_result_vec3 0 Offset 0
OpMemberDecorate %_modf_result_vec3 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -42,7 +41,7 @@
%17 = OpConstantNull %v3float
%_ptr_Function__modf_result_vec3 = OpTypePointer Function %_modf_result_vec3
%20 = OpConstantNull %_modf_result_vec3
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_2199f1 = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_2199f1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_2199f1
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_2199f1
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_2199f1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_2199f1
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_2199f1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm b/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm
index 83763b8..313d08f 100644
--- a/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/353f7d.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_353f7d "modf_353f7d"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
%float_1 = OpConstant %float 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%modf_353f7d = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_float Function %4
- %res = OpVariable %_ptr_Function_float Function %4
+ %arg_1 = OpVariable %_ptr_Function_float Function %8
+ %res = OpVariable %_ptr_Function_float Function %8
%15 = OpExtInst %float %16 Modf %float_1 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %modf_353f7d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_353f7d
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_353f7d
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_353f7d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_353f7d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_353f7d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm
index 9a2e520..7b67e04 100644
--- a/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/3b79d5.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_3b79d5 "modf_3b79d5"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%16 = OpConstantNull %v3float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_3b79d5 = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_3b79d5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_3b79d5
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_3b79d5
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_3b79d5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_3b79d5
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_3b79d5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm
index 35ccc6a..1fb0904 100644
--- a/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/3d00e2.wgsl.expected.spvasm
@@ -5,70 +5,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %modf_3d00e2 "modf_3d00e2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %arg_1 = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %arg_1 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_3d00e2 = OpFunction %void None %11
%14 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %15 = OpExtInst %v4float %16 Modf %8 %arg_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %15 = OpExtInst %v4float %16 Modf %5 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %modf_3d00e2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %11
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %modf_3d00e2
- %28 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %11
- %30 = OpLabel
- %31 = OpFunctionCall %void %modf_3d00e2
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %modf_3d00e2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %11
- %33 = OpLabel
- %34 = OpFunctionCall %void %modf_3d00e2
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %modf_3d00e2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm b/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm
index e654ee6..8a27a60 100644
--- a/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/4bb324.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_4bb324 "modf_4bb324"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_4bb324 = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
- %15 = OpExtInst %v4float %16 Modf %8 %arg_1
+ %arg_1 = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %15 = OpExtInst %v4float %16 Modf %5 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %modf_4bb324
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_4bb324
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_4bb324
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_4bb324
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_4bb324
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_4bb324
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm
index a5dbaa0..519db9e 100644
--- a/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/4fe3d9.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_4fe3d9 "modf_4fe3d9"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%16 = OpConstantNull %v3float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_4fe3d9 = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_4fe3d9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_4fe3d9
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_4fe3d9
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_4fe3d9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_4fe3d9
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_4fe3d9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm
index 515cd31..c3cba65 100644
--- a/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/51e4c6.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_51e4c6 "modf_51e4c6"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%16 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_51e4c6 = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_51e4c6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_51e4c6
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_51e4c6
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_51e4c6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_51e4c6
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_51e4c6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm b/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm
index 8c70ec3..c7cc15a 100644
--- a/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/546e09.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_546e09 "modf_546e09"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
%float_1 = OpConstant %float 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%modf_546e09 = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_float Function %4
- %res = OpVariable %_ptr_Function_float Function %4
+ %arg_1 = OpVariable %_ptr_Function_float Function %8
+ %res = OpVariable %_ptr_Function_float Function %8
%15 = OpExtInst %float %16 Modf %float_1 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %modf_546e09
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_546e09
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_546e09
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_546e09
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_546e09
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_546e09
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm b/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm
index f9c55e2..6b273c1 100644
--- a/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/5e8476.wgsl.expected.spvasm
@@ -5,70 +5,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %modf_5e8476 "modf_5e8476"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
-%_ptr_Private_float = OpTypePointer Private %float
- %arg_1 = OpVariable %_ptr_Private_float Private %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %10 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %10
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_float = OpTypePointer Private %float
+ %arg_1 = OpVariable %_ptr_Private_float Private %8
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%modf_5e8476 = OpFunction %void None %11
%14 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%15 = OpExtInst %float %16 Modf %float_1 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_5e8476
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %11
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %modf_5e8476
- %28 = OpFunctionCall %void %tint_symbol_2 %10
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %11
- %30 = OpLabel
- %31 = OpFunctionCall %void %modf_5e8476
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %modf_5e8476
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %11
- %33 = OpLabel
- %34 = OpFunctionCall %void %modf_5e8476
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %modf_5e8476
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/684d46.wgsl.expected.spvasm b/test/intrinsics/gen/modf/684d46.wgsl.expected.spvasm
index 9a37b68..b894f74 100644
--- a/test/intrinsics/gen/modf/684d46.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/684d46.wgsl.expected.spvasm
@@ -1,47 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_684d46 "modf_684d46"
OpName %_modf_result "_modf_result"
OpMemberName %_modf_result 0 "fract"
OpMemberName %_modf_result 1 "whole"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_modf_result 0 Offset 0
OpMemberDecorate %_modf_result 1 Offset 4
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_modf_result = OpTypeStruct %float %float
%float_1 = OpConstant %float 1
%_ptr_Function__modf_result = OpTypePointer Function %_modf_result
%19 = OpConstantNull %_modf_result
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%modf_684d46 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function__modf_result Function %19
@@ -49,26 +48,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %modf_684d46
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_684d46
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_684d46
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_684d46
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_684d46
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_684d46
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm b/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm
index 3567057..e96d96a 100644
--- a/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/86441c.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_86441c "modf_86441c"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%16 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_86441c = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_86441c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_86441c
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_86441c
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_86441c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_86441c
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_86441c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm b/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm
index 01fe4be..9e293c5 100644
--- a/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/955651.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_955651 "modf_955651"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%16 = OpConstantNull %v3float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_955651 = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_955651
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_955651
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_955651
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_955651
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_955651
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_955651
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/9b44a9.wgsl.expected.spvasm b/test/intrinsics/gen/modf/9b44a9.wgsl.expected.spvasm
index c15a37c..9ebd596 100644
--- a/test/intrinsics/gen/modf/9b44a9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/9b44a9.wgsl.expected.spvasm
@@ -1,74 +1,72 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_9b44a9 "modf_9b44a9"
OpName %_modf_result_vec4 "_modf_result_vec4"
OpMemberName %_modf_result_vec4 0 "fract"
OpMemberName %_modf_result_vec4 1 "whole"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_modf_result_vec4 0 Offset 0
OpMemberDecorate %_modf_result_vec4 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_modf_result_vec4 = OpTypeStruct %v4float %v4float
%_ptr_Function__modf_result_vec4 = OpTypePointer Function %_modf_result_vec4
%18 = OpConstantNull %_modf_result_vec4
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_9b44a9 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function__modf_result_vec4 Function %18
- %13 = OpExtInst %_modf_result_vec4 %15 ModfStruct %8
+ %13 = OpExtInst %_modf_result_vec4 %15 ModfStruct %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %modf_9b44a9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_9b44a9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_9b44a9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_9b44a9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_9b44a9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_9b44a9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm
index 5ebe38b..51f0b81 100644
--- a/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/9c6a91.wgsl.expected.spvasm
@@ -5,72 +5,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %modf_9c6a91 "modf_9c6a91"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
- %8 = OpConstantNull %v2float
- %arg_1 = OpVariable %_ptr_Private_v2float Private %8
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %v2float = OpTypeVector %float 2
+%_ptr_Private_v2float = OpTypePointer Private %v2float
+ %12 = OpConstantNull %v2float
+ %arg_1 = OpVariable %_ptr_Private_v2float Private %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_9c6a91 = OpFunction %void None %13
%16 = OpLabel
- %res = OpVariable %_ptr_Function_v2float Function %8
- %17 = OpExtInst %v2float %18 Modf %8 %arg_1
+ %res = OpVariable %_ptr_Function_v2float Function %12
+ %17 = OpExtInst %v2float %18 Modf %12 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %modf_9c6a91
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %modf_9c6a91
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_9c6a91
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_9c6a91
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %modf_9c6a91
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %modf_9c6a91
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm
index 70dd5db..4ede6a0 100644
--- a/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/9cecfc.wgsl.expected.spvasm
@@ -5,72 +5,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %modf_9cecfc "modf_9cecfc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %arg_1 = OpVariable %_ptr_Private_v3float Private %8
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %v3float = OpTypeVector %float 3
+%_ptr_Private_v3float = OpTypePointer Private %v3float
+ %12 = OpConstantNull %v3float
+ %arg_1 = OpVariable %_ptr_Private_v3float Private %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_9cecfc = OpFunction %void None %13
%16 = OpLabel
- %res = OpVariable %_ptr_Function_v3float Function %8
- %17 = OpExtInst %v3float %18 Modf %8 %arg_1
+ %res = OpVariable %_ptr_Function_v3float Function %12
+ %17 = OpExtInst %v3float %18 Modf %12 %arg_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %modf_9cecfc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %modf_9cecfc
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_9cecfc
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_9cecfc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %modf_9cecfc
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %modf_9cecfc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm b/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm
index 11efafb..bf073c2 100644
--- a/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/a128ab.wgsl.expected.spvasm
@@ -5,30 +5,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %modf_a128ab "modf_a128ab"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%v2float = OpTypeVector %float 2
%_ptr_Workgroup_v2float = OpTypePointer Workgroup %v2float
%arg_1 = OpVariable %_ptr_Workgroup_v2float Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%14 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
+ %18 = OpTypeFunction %void %uint
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%modf_a128ab = OpFunction %void None %8
@@ -38,10 +41,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpStore %arg_1 %14
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %modf_a128ab
+ %25 = OpFunctionCall %void %modf_a128ab
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm b/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm
index 99928e1..fd65cd4 100644
--- a/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/a54eca.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_a54eca "modf_a54eca"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%16 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_a54eca = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_a54eca
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_a54eca
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_a54eca
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_a54eca
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_a54eca
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_a54eca
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm b/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm
index a96eee6..1b136c0 100644
--- a/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/bb9088.wgsl.expected.spvasm
@@ -5,30 +5,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %modf_bb9088 "modf_bb9088"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
%_ptr_Workgroup_v3float = OpTypePointer Workgroup %v3float
%arg_1 = OpVariable %_ptr_Workgroup_v3float Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%8 = OpTypeFunction %void
%14 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
+ %18 = OpTypeFunction %void %uint
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%modf_bb9088 = OpFunction %void None %8
@@ -38,10 +41,17 @@
OpStore %res %12
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %8
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpStore %arg_1 %14
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %modf_bb9088
+ %25 = OpFunctionCall %void %modf_bb9088
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %8
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/c87851.wgsl.expected.spvasm b/test/intrinsics/gen/modf/c87851.wgsl.expected.spvasm
index d8cbd3d..debd919 100644
--- a/test/intrinsics/gen/modf/c87851.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/c87851.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_c87851 "modf_c87851"
OpName %_modf_result_vec2 "_modf_result_vec2"
OpMemberName %_modf_result_vec2 0 "fract"
OpMemberName %_modf_result_vec2 1 "whole"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %_modf_result_vec2 0 Offset 0
OpMemberDecorate %_modf_result_vec2 1 Offset 8
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -42,7 +41,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function__modf_result_vec2 = OpTypePointer Function %_modf_result_vec2
%20 = OpConstantNull %_modf_result_vec2
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_c87851 = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %modf_c87851
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %modf_c87851
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %modf_c87851
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %modf_c87851
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %modf_c87851
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %modf_c87851
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm
index aa8a3b8..cee0c29 100644
--- a/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/d1d6f6.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_d1d6f6 "modf_d1d6f6"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_d1d6f6 = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
- %15 = OpExtInst %v4float %16 Modf %8 %arg_1
+ %arg_1 = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %15 = OpExtInst %v4float %16 Modf %5 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %modf_d1d6f6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_d1d6f6
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_d1d6f6
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_d1d6f6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_d1d6f6
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_d1d6f6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm
index 8f99be8..2143769 100644
--- a/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/e38ae6.wgsl.expected.spvasm
@@ -5,30 +5,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 30
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %compute_main "compute_main"
+ OpEntryPoint GLCompute %compute_main "compute_main" %local_invocation_index_1
OpExecutionMode %compute_main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %arg_1 "arg_1"
- OpName %tint_symbol "tint_symbol"
OpName %modf_e38ae6 "modf_e38ae6"
OpName %res "res"
+ OpName %compute_main_inner "compute_main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %compute_main "compute_main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%_ptr_Workgroup_float = OpTypePointer Workgroup %float
%arg_1 = OpVariable %_ptr_Workgroup_float Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%7 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
%17 = OpConstantNull %float
+ %18 = OpTypeFunction %void %uint
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%modf_e38ae6 = OpFunction %void None %7
@@ -38,10 +41,17 @@
OpStore %res %11
OpReturn
OpFunctionEnd
-%compute_main = OpFunction %void None %7
- %19 = OpLabel
+%compute_main_inner = OpFunction %void None %18
+%local_invocation_index = OpFunctionParameter %uint
+ %21 = OpLabel
OpStore %arg_1 %17
OpControlBarrier %uint_2 %uint_2 %uint_264
- %23 = OpFunctionCall %void %modf_e38ae6
+ %25 = OpFunctionCall %void %modf_e38ae6
+ OpReturn
+ OpFunctionEnd
+%compute_main = OpFunction %void None %7
+ %27 = OpLabel
+ %29 = OpLoad %uint %local_invocation_index_1
+ %28 = OpFunctionCall %void %compute_main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm b/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm
index 99f906d..2423923 100644
--- a/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/e83560.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_e83560 "modf_e83560"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%modf_e83560 = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
- %15 = OpExtInst %v4float %16 Modf %8 %arg_1
+ %arg_1 = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %15 = OpExtInst %v4float %16 Modf %5 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %modf_e83560
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_e83560
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_e83560
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_e83560
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_e83560
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_e83560
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm b/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm
index 29b6948..57391db 100644
--- a/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/modf/f90945.wgsl.expected.spvasm
@@ -5,69 +5,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %modf_f90945 "modf_f90945"
OpName %arg_1 "arg_1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
%float_1 = OpConstant %float 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%modf_f90945 = OpFunction %void None %9
%12 = OpLabel
- %arg_1 = OpVariable %_ptr_Function_float Function %4
- %res = OpVariable %_ptr_Function_float Function %4
+ %arg_1 = OpVariable %_ptr_Function_float Function %8
+ %res = OpVariable %_ptr_Function_float Function %8
%15 = OpExtInst %float %16 Modf %float_1 %arg_1
OpStore %res %15
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %modf_f90945
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %modf_f90945
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %modf_f90945
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %modf_f90945
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %modf_f90945
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %modf_f90945
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/normalize/64d8c0.wgsl.expected.spvasm b/test/intrinsics/gen/normalize/64d8c0.wgsl.expected.spvasm
index 311fe46..914973a 100644
--- a/test/intrinsics/gen/normalize/64d8c0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/normalize/64d8c0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %normalize_64d8c0 "normalize_64d8c0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%normalize_64d8c0 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %normalize_64d8c0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %normalize_64d8c0
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %normalize_64d8c0
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %normalize_64d8c0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %normalize_64d8c0
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %normalize_64d8c0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/normalize/9a0aab.wgsl.expected.spvasm b/test/intrinsics/gen/normalize/9a0aab.wgsl.expected.spvasm
index 9a06b7e..7b18b6f 100644
--- a/test/intrinsics/gen/normalize/9a0aab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/normalize/9a0aab.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %normalize_9a0aab "normalize_9a0aab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%normalize_9a0aab = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Normalize %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Normalize %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %normalize_9a0aab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %normalize_9a0aab
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %normalize_9a0aab
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %normalize_9a0aab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %normalize_9a0aab
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %normalize_9a0aab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/normalize/fc2ef1.wgsl.expected.spvasm b/test/intrinsics/gen/normalize/fc2ef1.wgsl.expected.spvasm
index 98db250..ed6aec3 100644
--- a/test/intrinsics/gen/normalize/fc2ef1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/normalize/fc2ef1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %normalize_fc2ef1 "normalize_fc2ef1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%normalize_fc2ef1 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %normalize_fc2ef1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %normalize_fc2ef1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %normalize_fc2ef1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %normalize_fc2ef1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %normalize_fc2ef1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %normalize_fc2ef1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pack2x16float/0e97b3.wgsl.expected.spvasm b/test/intrinsics/gen/pack2x16float/0e97b3.wgsl.expected.spvasm
index 4ee8e50..257789a 100644
--- a/test/intrinsics/gen/pack2x16float/0e97b3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pack2x16float/0e97b3.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pack2x16float_0e97b3 "pack2x16float_0e97b3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_uint = OpTypePointer Function %uint
%20 = OpConstantNull %uint
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pack2x16float_0e97b3 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %pack2x16float_0e97b3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %pack2x16float_0e97b3
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %pack2x16float_0e97b3
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %pack2x16float_0e97b3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %pack2x16float_0e97b3
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %pack2x16float_0e97b3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pack2x16snorm/6c169b.wgsl.expected.spvasm b/test/intrinsics/gen/pack2x16snorm/6c169b.wgsl.expected.spvasm
index b877da4..c7b4a14 100644
--- a/test/intrinsics/gen/pack2x16snorm/6c169b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pack2x16snorm/6c169b.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pack2x16snorm_6c169b "pack2x16snorm_6c169b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_uint = OpTypePointer Function %uint
%20 = OpConstantNull %uint
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pack2x16snorm_6c169b = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %pack2x16snorm_6c169b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %pack2x16snorm_6c169b
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %pack2x16snorm_6c169b
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %pack2x16snorm_6c169b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %pack2x16snorm_6c169b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %pack2x16snorm_6c169b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pack2x16unorm/0f08e4.wgsl.expected.spvasm b/test/intrinsics/gen/pack2x16unorm/0f08e4.wgsl.expected.spvasm
index 448a04a..ca7368c 100644
--- a/test/intrinsics/gen/pack2x16unorm/0f08e4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pack2x16unorm/0f08e4.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pack2x16unorm_0f08e4 "pack2x16unorm_0f08e4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2float
%_ptr_Function_uint = OpTypePointer Function %uint
%20 = OpConstantNull %uint
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pack2x16unorm_0f08e4 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %pack2x16unorm_0f08e4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %pack2x16unorm_0f08e4
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %pack2x16unorm_0f08e4
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %pack2x16unorm_0f08e4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %pack2x16unorm_0f08e4
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %pack2x16unorm_0f08e4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pack4x8snorm/4d22e7.wgsl.expected.spvasm b/test/intrinsics/gen/pack4x8snorm/4d22e7.wgsl.expected.spvasm
index 2455ddf..34bcbe2 100644
--- a/test/intrinsics/gen/pack4x8snorm/4d22e7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pack4x8snorm/4d22e7.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pack4x8snorm_4d22e7 "pack4x8snorm_4d22e7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%18 = OpConstantNull %uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pack4x8snorm_4d22e7 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_uint Function %18
- %13 = OpExtInst %uint %15 PackSnorm4x8 %8
+ %13 = OpExtInst %uint %15 PackSnorm4x8 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %pack4x8snorm_4d22e7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %pack4x8snorm_4d22e7
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %pack4x8snorm_4d22e7
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %pack4x8snorm_4d22e7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %pack4x8snorm_4d22e7
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %pack4x8snorm_4d22e7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pack4x8unorm/95c456.wgsl.expected.spvasm b/test/intrinsics/gen/pack4x8unorm/95c456.wgsl.expected.spvasm
index 88f6962..69e8a3f 100644
--- a/test/intrinsics/gen/pack4x8unorm/95c456.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pack4x8unorm/95c456.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pack4x8unorm_95c456 "pack4x8unorm_95c456"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%_ptr_Function_uint = OpTypePointer Function %uint
%18 = OpConstantNull %uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pack4x8unorm_95c456 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_uint Function %18
- %13 = OpExtInst %uint %15 PackUnorm4x8 %8
+ %13 = OpExtInst %uint %15 PackUnorm4x8 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %pack4x8unorm_95c456
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %pack4x8unorm_95c456
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %pack4x8unorm_95c456
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %pack4x8unorm_95c456
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %pack4x8unorm_95c456
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %pack4x8unorm_95c456
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pow/04a908.wgsl.expected.spvasm b/test/intrinsics/gen/pow/04a908.wgsl.expected.spvasm
index 387d9cb..200e5e4 100644
--- a/test/intrinsics/gen/pow/04a908.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pow/04a908.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pow_04a908 "pow_04a908"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pow_04a908 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Pow %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Pow %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %pow_04a908
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %pow_04a908
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %pow_04a908
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %pow_04a908
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %pow_04a908
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %pow_04a908
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pow/46e029.wgsl.expected.spvasm b/test/intrinsics/gen/pow/46e029.wgsl.expected.spvasm
index 8eadbb0..9fb5446 100644
--- a/test/intrinsics/gen/pow/46e029.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pow/46e029.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pow_46e029 "pow_46e029"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%pow_46e029 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Pow %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %pow_46e029
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %pow_46e029
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %pow_46e029
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %pow_46e029
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %pow_46e029
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %pow_46e029
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pow/4a46c9.wgsl.expected.spvasm b/test/intrinsics/gen/pow/4a46c9.wgsl.expected.spvasm
index d15b172..e6adbfe 100644
--- a/test/intrinsics/gen/pow/4a46c9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pow/4a46c9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pow_4a46c9 "pow_4a46c9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pow_4a46c9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %pow_4a46c9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %pow_4a46c9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %pow_4a46c9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %pow_4a46c9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %pow_4a46c9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %pow_4a46c9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/pow/e60ea5.wgsl.expected.spvasm b/test/intrinsics/gen/pow/e60ea5.wgsl.expected.spvasm
index 27bfedb..52c3db1 100644
--- a/test/intrinsics/gen/pow/e60ea5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/pow/e60ea5.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %pow_e60ea5 "pow_e60ea5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%pow_e60ea5 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %pow_e60ea5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %pow_e60ea5
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %pow_e60ea5
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %pow_e60ea5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %pow_e60ea5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %pow_e60ea5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reflect/05357e.wgsl.expected.spvasm b/test/intrinsics/gen/reflect/05357e.wgsl.expected.spvasm
index e73594a..e3fc18d 100644
--- a/test/intrinsics/gen/reflect/05357e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reflect/05357e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reflect_05357e "reflect_05357e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reflect_05357e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Reflect %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Reflect %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %reflect_05357e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %reflect_05357e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %reflect_05357e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %reflect_05357e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %reflect_05357e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %reflect_05357e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reflect/b61e10.wgsl.expected.spvasm b/test/intrinsics/gen/reflect/b61e10.wgsl.expected.spvasm
index bb16320..24a2c10 100644
--- a/test/intrinsics/gen/reflect/b61e10.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reflect/b61e10.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reflect_b61e10 "reflect_b61e10"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reflect_b61e10 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reflect_b61e10
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reflect_b61e10
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reflect_b61e10
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reflect_b61e10
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reflect_b61e10
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reflect_b61e10
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reflect/f47fdb.wgsl.expected.spvasm b/test/intrinsics/gen/reflect/f47fdb.wgsl.expected.spvasm
index 845c705..b8ce4f7 100644
--- a/test/intrinsics/gen/reflect/f47fdb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reflect/f47fdb.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reflect_f47fdb "reflect_f47fdb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reflect_f47fdb = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reflect_f47fdb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reflect_f47fdb
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reflect_f47fdb
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reflect_f47fdb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reflect_f47fdb
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reflect_f47fdb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/refract/7e02e6.wgsl.expected.spvasm b/test/intrinsics/gen/refract/7e02e6.wgsl.expected.spvasm
index 7c94910..d3a15d7 100644
--- a/test/intrinsics/gen/refract/7e02e6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/refract/7e02e6.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %refract_7e02e6 "refract_7e02e6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%refract_7e02e6 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Refract %8 %8 %float_1
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Refract %5 %5 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %refract_7e02e6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %refract_7e02e6
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %refract_7e02e6
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %refract_7e02e6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %refract_7e02e6
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %refract_7e02e6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/refract/cbc1d2.wgsl.expected.spvasm b/test/intrinsics/gen/refract/cbc1d2.wgsl.expected.spvasm
index 80bfe73..de16a55 100644
--- a/test/intrinsics/gen/refract/cbc1d2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/refract/cbc1d2.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %refract_cbc1d2 "refract_cbc1d2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%refract_cbc1d2 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %16
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %refract_cbc1d2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %refract_cbc1d2
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %refract_cbc1d2
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %refract_cbc1d2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %refract_cbc1d2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %refract_cbc1d2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/refract/cd905f.wgsl.expected.spvasm b/test/intrinsics/gen/refract/cd905f.wgsl.expected.spvasm
index 436a7ab..76d7a59 100644
--- a/test/intrinsics/gen/refract/cd905f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/refract/cd905f.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %refract_cd905f "refract_cd905f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%refract_cd905f = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %16
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %refract_cd905f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %refract_cd905f
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %refract_cd905f
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %refract_cd905f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %refract_cd905f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %refract_cd905f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/222177.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/222177.wgsl.expected.spvasm
index 7a72b2c..5f046b0 100644
--- a/test/intrinsics/gen/reverseBits/222177.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/222177.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_222177 "reverseBits_222177"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%16 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_222177 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_222177
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_222177
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_222177
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_222177
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_222177
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_222177
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/35fea9.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/35fea9.wgsl.expected.spvasm
index 107b474..4db3d73 100644
--- a/test/intrinsics/gen/reverseBits/35fea9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/35fea9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_35fea9 "reverseBits_35fea9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%16 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_35fea9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_35fea9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_35fea9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_35fea9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_35fea9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_35fea9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_35fea9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/4dbd6f.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/4dbd6f.wgsl.expected.spvasm
index 040a433..316876d 100644
--- a/test/intrinsics/gen/reverseBits/4dbd6f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/4dbd6f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_4dbd6f "reverseBits_4dbd6f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%16 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_4dbd6f = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_4dbd6f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_4dbd6f
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_4dbd6f
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_4dbd6f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_4dbd6f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_4dbd6f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/7c4269.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/7c4269.wgsl.expected.spvasm
index 9201251..1811bbc 100644
--- a/test/intrinsics/gen/reverseBits/7c4269.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/7c4269.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_7c4269 "reverseBits_7c4269"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%18 = OpConstantNull %int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_7c4269 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_7c4269
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_7c4269
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_7c4269
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_7c4269
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_7c4269
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_7c4269
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/a6ccd4.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/a6ccd4.wgsl.expected.spvasm
index 11dbeb9..6b44df5 100644
--- a/test/intrinsics/gen/reverseBits/a6ccd4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/a6ccd4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_a6ccd4 "reverseBits_a6ccd4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%16 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_a6ccd4 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_a6ccd4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_a6ccd4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_a6ccd4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_a6ccd4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_a6ccd4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_a6ccd4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/c21bc1.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/c21bc1.wgsl.expected.spvasm
index d1e61d6..9fcc4de 100644
--- a/test/intrinsics/gen/reverseBits/c21bc1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/c21bc1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_c21bc1 "reverseBits_c21bc1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%16 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_c21bc1 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_c21bc1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_c21bc1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_c21bc1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_c21bc1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_c21bc1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_c21bc1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/e1f4c1.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/e1f4c1.wgsl.expected.spvasm
index d6b4d88..261fa99 100644
--- a/test/intrinsics/gen/reverseBits/e1f4c1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/e1f4c1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_e1f4c1 "reverseBits_e1f4c1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%16 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_e1f4c1 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_e1f4c1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_e1f4c1
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_e1f4c1
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_e1f4c1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_e1f4c1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_e1f4c1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/reverseBits/e31adf.wgsl.expected.spvasm b/test/intrinsics/gen/reverseBits/e31adf.wgsl.expected.spvasm
index d40e31b..9f44dbe 100644
--- a/test/intrinsics/gen/reverseBits/e31adf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/reverseBits/e31adf.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %reverseBits_e31adf "reverseBits_e31adf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%18 = OpConstantNull %uint
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%reverseBits_e31adf = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %reverseBits_e31adf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %reverseBits_e31adf
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %reverseBits_e31adf
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %reverseBits_e31adf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %reverseBits_e31adf
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %reverseBits_e31adf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/round/106c0b.wgsl.expected.spvasm b/test/intrinsics/gen/round/106c0b.wgsl.expected.spvasm
index 2227569..b0204e7 100644
--- a/test/intrinsics/gen/round/106c0b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/round/106c0b.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %round_106c0b "round_106c0b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%round_106c0b = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 RoundEven %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 RoundEven %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %round_106c0b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %round_106c0b
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %round_106c0b
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %round_106c0b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %round_106c0b
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %round_106c0b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/round/1c7897.wgsl.expected.spvasm b/test/intrinsics/gen/round/1c7897.wgsl.expected.spvasm
index 6228f41..925cea4 100644
--- a/test/intrinsics/gen/round/1c7897.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/round/1c7897.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %round_1c7897 "round_1c7897"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%round_1c7897 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %round_1c7897
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %round_1c7897
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %round_1c7897
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %round_1c7897
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %round_1c7897
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %round_1c7897
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/round/52c84d.wgsl.expected.spvasm b/test/intrinsics/gen/round/52c84d.wgsl.expected.spvasm
index e8ef366..78f53964 100644
--- a/test/intrinsics/gen/round/52c84d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/round/52c84d.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %round_52c84d "round_52c84d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%round_52c84d = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %round_52c84d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %round_52c84d
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %round_52c84d
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %round_52c84d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %round_52c84d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %round_52c84d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/round/9edc38.wgsl.expected.spvasm b/test/intrinsics/gen/round/9edc38.wgsl.expected.spvasm
index 977d0ac..604b2b3 100644
--- a/test/intrinsics/gen/round/9edc38.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/round/9edc38.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %round_9edc38 "round_9edc38"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%round_9edc38 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 RoundEven %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %round_9edc38
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %round_9edc38
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %round_9edc38
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %round_9edc38
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %round_9edc38
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %round_9edc38
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/00b848.wgsl.expected.spvasm b/test/intrinsics/gen/select/00b848.wgsl.expected.spvasm
index f1f6047..b4ab55c 100644
--- a/test/intrinsics/gen/select/00b848.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/00b848.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_00b848 "select_00b848"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v2bool
%19 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_00b848 = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_00b848
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_00b848
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_00b848
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_00b848
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_00b848
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_00b848
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/01e2cd.wgsl.expected.spvasm b/test/intrinsics/gen/select/01e2cd.wgsl.expected.spvasm
index 9ebcbef..f2bc1f9 100644
--- a/test/intrinsics/gen/select/01e2cd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/01e2cd.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_01e2cd "select_01e2cd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v3bool
%19 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_01e2cd = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_01e2cd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_01e2cd
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_01e2cd
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_01e2cd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_01e2cd
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_01e2cd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/087ea4.wgsl.expected.spvasm b/test/intrinsics/gen/select/087ea4.wgsl.expected.spvasm
index 5bce791..c1ea2cd 100644
--- a/test/intrinsics/gen/select/087ea4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/087ea4.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_087ea4 "select_087ea4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +39,7 @@
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%22 = OpConstantNull %v4bool
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_087ea4 = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_087ea4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_087ea4
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_087ea4
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_087ea4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_087ea4
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_087ea4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/1e960b.wgsl.expected.spvasm b/test/intrinsics/gen/select/1e960b.wgsl.expected.spvasm
index 9a8cc2b..62b963c 100644
--- a/test/intrinsics/gen/select/1e960b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/1e960b.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_1e960b "select_1e960b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v2bool
%19 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_1e960b = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_1e960b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_1e960b
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_1e960b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_1e960b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_1e960b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_1e960b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/266aff.wgsl.expected.spvasm b/test/intrinsics/gen/select/266aff.wgsl.expected.spvasm
index 699b1d6..4dad59d 100644
--- a/test/intrinsics/gen/select/266aff.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/266aff.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_266aff "select_266aff"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v2bool
%18 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_266aff = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %select_266aff
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %select_266aff
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_266aff
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_266aff
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %select_266aff
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %select_266aff
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/28a27e.wgsl.expected.spvasm b/test/intrinsics/gen/select/28a27e.wgsl.expected.spvasm
index 5201a47..31dbbac 100644
--- a/test/intrinsics/gen/select/28a27e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/28a27e.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_28a27e "select_28a27e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v3bool
%19 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_28a27e = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_28a27e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_28a27e
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_28a27e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_28a27e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_28a27e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_28a27e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/3c25ce.wgsl.expected.spvasm b/test/intrinsics/gen/select/3c25ce.wgsl.expected.spvasm
index 69a85cf..f4b03d4 100644
--- a/test/intrinsics/gen/select/3c25ce.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/3c25ce.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_3c25ce "select_3c25ce"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %bool
%17 = OpConstantNull %v3bool
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_3c25ce = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_3c25ce
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_3c25ce
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_3c25ce
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_3c25ce
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_3c25ce
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_3c25ce
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/416e14.wgsl.expected.spvasm b/test/intrinsics/gen/select/416e14.wgsl.expected.spvasm
index e4ca7f8..0ab2931 100644
--- a/test/intrinsics/gen/select/416e14.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/416e14.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_416e14 "select_416e14"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%15 = OpConstantNull %bool
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%select_416e14 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpSelect %float %15 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %select_416e14
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %select_416e14
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %select_416e14
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %select_416e14
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_416e14
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_416e14
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/51b047.wgsl.expected.spvasm b/test/intrinsics/gen/select/51b047.wgsl.expected.spvasm
index 92f4126..617dea6 100644
--- a/test/intrinsics/gen/select/51b047.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/51b047.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_51b047 "select_51b047"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +39,7 @@
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%22 = OpConstantNull %v2bool
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_51b047 = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_51b047
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_51b047
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_51b047
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_51b047
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_51b047
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_51b047
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/713567.wgsl.expected.spvasm b/test/intrinsics/gen/select/713567.wgsl.expected.spvasm
index 4110e30..e4c5aca 100644
--- a/test/intrinsics/gen/select/713567.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/713567.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_713567 "select_713567"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,37 +36,36 @@
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%19 = OpConstantNull %v4bool
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_713567 = OpFunction %void None %9
%12 = OpLabel
%17 = OpVariable %_ptr_Function_v4bool Function %19
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
%20 = OpCompositeConstruct %v4bool %15 %15 %15 %15
- %13 = OpSelect %v4float %20 %8 %8
+ %13 = OpSelect %v4float %20 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %select_713567
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %select_713567
- %31 = OpFunctionCall %void %tint_symbol_2 %8
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %33 = OpLabel
- %34 = OpFunctionCall %void %select_713567
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %select_713567
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_713567
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_713567
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/78be5f.wgsl.expected.spvasm b/test/intrinsics/gen/select/78be5f.wgsl.expected.spvasm
index fe5a983..71a7603 100644
--- a/test/intrinsics/gen/select/78be5f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/78be5f.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_78be5f "select_78be5f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -39,7 +38,7 @@
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%21 = OpConstantNull %v3bool
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_78be5f = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %select_78be5f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %select_78be5f
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_78be5f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_78be5f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %select_78be5f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %select_78be5f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/80a9a9.wgsl.expected.spvasm b/test/intrinsics/gen/select/80a9a9.wgsl.expected.spvasm
index 71bf522..bf4c72e 100644
--- a/test/intrinsics/gen/select/80a9a9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/80a9a9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_80a9a9 "select_80a9a9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v3bool = OpTypeVector %bool 3
%16 = OpConstantNull %v3bool
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_80a9a9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %select_80a9a9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %select_80a9a9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %select_80a9a9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_80a9a9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_80a9a9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_80a9a9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/8fa62c.wgsl.expected.spvasm b/test/intrinsics/gen/select/8fa62c.wgsl.expected.spvasm
index d939dc5..a2ada45 100644
--- a/test/intrinsics/gen/select/8fa62c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/8fa62c.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_8fa62c "select_8fa62c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%22 = OpConstantNull %v3bool
%_ptr_Function_v3int = OpTypePointer Function %v3int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_8fa62c = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_8fa62c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_8fa62c
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_8fa62c
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_8fa62c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_8fa62c
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_8fa62c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/99f883.wgsl.expected.spvasm b/test/intrinsics/gen/select/99f883.wgsl.expected.spvasm
index 489f6dd..9ef43b9 100644
--- a/test/intrinsics/gen/select/99f883.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/99f883.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_99f883 "select_99f883"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%20 = OpConstantNull %uint
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_99f883 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %select_99f883
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %select_99f883
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_99f883
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_99f883
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %select_99f883
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %select_99f883
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/a2860e.wgsl.expected.spvasm b/test/intrinsics/gen/select/a2860e.wgsl.expected.spvasm
index 2d5f710..9dd2601 100644
--- a/test/intrinsics/gen/select/a2860e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/a2860e.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_a2860e "select_a2860e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v4bool
%19 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_a2860e = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_a2860e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_a2860e
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_a2860e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_a2860e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_a2860e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_a2860e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/ab069f.wgsl.expected.spvasm b/test/intrinsics/gen/select/ab069f.wgsl.expected.spvasm
index bfd69fc..76d001f 100644
--- a/test/intrinsics/gen/select/ab069f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/ab069f.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_ab069f "select_ab069f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
%22 = OpConstantNull %v4bool
%_ptr_Function_v4int = OpTypePointer Function %v4int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_ab069f = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_ab069f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_ab069f
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_ab069f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_ab069f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_ab069f
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_ab069f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/b04721.wgsl.expected.spvasm b/test/intrinsics/gen/select/b04721.wgsl.expected.spvasm
index 83b9a7d..7324fa3 100644
--- a/test/intrinsics/gen/select/b04721.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/b04721.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_b04721 "select_b04721"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +39,7 @@
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
%22 = OpConstantNull %v3bool
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_b04721 = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_b04721
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_b04721
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_b04721
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_b04721
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_b04721
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_b04721
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/bb447f.wgsl.expected.spvasm b/test/intrinsics/gen/select/bb447f.wgsl.expected.spvasm
index d8dbed2..9580506 100644
--- a/test/intrinsics/gen/select/bb447f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/bb447f.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_bb447f "select_bb447f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%22 = OpConstantNull %v2bool
%_ptr_Function_v2int = OpTypePointer Function %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_bb447f = OpFunction %void None %9
%12 = OpLabel
@@ -51,26 +50,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_bb447f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %select_bb447f
- %34 = OpFunctionCall %void %tint_symbol_2 %8
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %36 = OpLabel
- %37 = OpFunctionCall %void %select_bb447f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %select_bb447f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %39 = OpLabel
- %40 = OpFunctionCall %void %select_bb447f
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %select_bb447f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/bb8aae.wgsl.expected.spvasm b/test/intrinsics/gen/select/bb8aae.wgsl.expected.spvasm
index 8f9687d..29dc265 100644
--- a/test/intrinsics/gen/select/bb8aae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/bb8aae.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_bb8aae "select_bb8aae"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%16 = OpConstantNull %v4bool
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_bb8aae = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpSelect %v4float %16 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpSelect %v4float %16 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %select_bb8aae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %select_bb8aae
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %select_bb8aae
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_bb8aae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_bb8aae
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_bb8aae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/bf3d29.wgsl.expected.spvasm b/test/intrinsics/gen/select/bf3d29.wgsl.expected.spvasm
index 838a399..accad0c 100644
--- a/test/intrinsics/gen/select/bf3d29.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/bf3d29.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_bf3d29 "select_bf3d29"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -39,7 +38,7 @@
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
%21 = OpConstantNull %v2bool
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_bf3d29 = OpFunction %void None %9
%12 = OpLabel
@@ -50,26 +49,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %select_bf3d29
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %select_bf3d29
- %33 = OpFunctionCall %void %tint_symbol_2 %8
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_bf3d29
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_bf3d29
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %38 = OpLabel
- %39 = OpFunctionCall %void %select_bf3d29
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %select_bf3d29
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/c31f9e.wgsl.expected.spvasm b/test/intrinsics/gen/select/c31f9e.wgsl.expected.spvasm
index b056d08..5091beb 100644
--- a/test/intrinsics/gen/select/c31f9e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/c31f9e.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_c31f9e "select_c31f9e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%15 = OpConstantNull %bool
%_ptr_Function_bool = OpTypePointer Function %bool
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_c31f9e = OpFunction %void None %9
%12 = OpLabel
@@ -43,26 +42,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %select_c31f9e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %select_c31f9e
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %select_c31f9e
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %select_c31f9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_c31f9e
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_c31f9e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/c41bd1.wgsl.expected.spvasm b/test/intrinsics/gen/select/c41bd1.wgsl.expected.spvasm
index 2f0b01d..8c3b9ef 100644
--- a/test/intrinsics/gen/select/c41bd1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/c41bd1.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_c41bd1 "select_c41bd1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %bool
%17 = OpConstantNull %v4bool
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_c41bd1 = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_c41bd1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_c41bd1
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_c41bd1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_c41bd1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_c41bd1
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_c41bd1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/c4a4ef.wgsl.expected.spvasm b/test/intrinsics/gen/select/c4a4ef.wgsl.expected.spvasm
index 34a5345..c4eff67 100644
--- a/test/intrinsics/gen/select/c4a4ef.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/c4a4ef.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_c4a4ef "select_c4a4ef"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -38,7 +37,7 @@
%18 = OpConstantNull %v4bool
%19 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_c4a4ef = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_c4a4ef
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_c4a4ef
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_c4a4ef
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_c4a4ef
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_c4a4ef
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_c4a4ef
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/cb9301.wgsl.expected.spvasm b/test/intrinsics/gen/select/cb9301.wgsl.expected.spvasm
index ab807b3..8a86fc9 100644
--- a/test/intrinsics/gen/select/cb9301.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/cb9301.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_cb9301 "select_cb9301"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v2bool = OpTypeVector %bool 2
%16 = OpConstantNull %v2bool
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_cb9301 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %select_cb9301
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %select_cb9301
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %select_cb9301
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_cb9301
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_cb9301
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_cb9301
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/e3e028.wgsl.expected.spvasm b/test/intrinsics/gen/select/e3e028.wgsl.expected.spvasm
index 27ca8f9..259f9c0 100644
--- a/test/intrinsics/gen/select/e3e028.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/e3e028.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_e3e028 "select_e3e028"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%16 = OpConstantNull %v4bool
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_e3e028 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %select_e3e028
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %select_e3e028
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %select_e3e028
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %select_e3e028
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_e3e028
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_e3e028
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/ebfea2.wgsl.expected.spvasm b/test/intrinsics/gen/select/ebfea2.wgsl.expected.spvasm
index d531e0f..60a799f 100644
--- a/test/intrinsics/gen/select/ebfea2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/ebfea2.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_ebfea2 "select_ebfea2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -37,7 +36,7 @@
%17 = OpConstantNull %v3bool
%18 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_ebfea2 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %select_ebfea2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %select_ebfea2
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_ebfea2
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_ebfea2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %select_ebfea2
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %select_ebfea2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/ed8a15.wgsl.expected.spvasm b/test/intrinsics/gen/select/ed8a15.wgsl.expected.spvasm
index 5d27fc3..259b51d 100644
--- a/test/intrinsics/gen/select/ed8a15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/ed8a15.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_ed8a15 "select_ed8a15"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -37,7 +36,7 @@
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%20 = OpConstantNull %int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_ed8a15 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %select_ed8a15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %select_ed8a15
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %select_ed8a15
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %select_ed8a15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %select_ed8a15
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %select_ed8a15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/select/fb7e53.wgsl.expected.spvasm b/test/intrinsics/gen/select/fb7e53.wgsl.expected.spvasm
index bd780d5..2465e39 100644
--- a/test/intrinsics/gen/select/fb7e53.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/select/fb7e53.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %select_fb7e53 "select_fb7e53"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%bool = OpTypeBool
@@ -36,7 +35,7 @@
%16 = OpConstantNull %bool
%17 = OpConstantNull %v2bool
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%select_fb7e53 = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %select_fb7e53
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %select_fb7e53
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %select_fb7e53
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %select_fb7e53
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %select_fb7e53
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %select_fb7e53
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sign/159665.wgsl.expected.spvasm b/test/intrinsics/gen/sign/159665.wgsl.expected.spvasm
index b202170..5e734b0 100644
--- a/test/intrinsics/gen/sign/159665.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sign/159665.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sign_159665 "sign_159665"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sign_159665 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sign_159665
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sign_159665
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sign_159665
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sign_159665
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sign_159665
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sign_159665
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sign/b8f634.wgsl.expected.spvasm b/test/intrinsics/gen/sign/b8f634.wgsl.expected.spvasm
index dc20942..88d6d0f 100644
--- a/test/intrinsics/gen/sign/b8f634.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sign/b8f634.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sign_b8f634 "sign_b8f634"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sign_b8f634 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 FSign %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 FSign %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %sign_b8f634
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sign_b8f634
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sign_b8f634
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sign_b8f634
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sign_b8f634
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sign_b8f634
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sign/d065d8.wgsl.expected.spvasm b/test/intrinsics/gen/sign/d065d8.wgsl.expected.spvasm
index 224618c..585a70e 100644
--- a/test/intrinsics/gen/sign/d065d8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sign/d065d8.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sign_d065d8 "sign_d065d8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sign_d065d8 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sign_d065d8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sign_d065d8
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sign_d065d8
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sign_d065d8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sign_d065d8
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sign_d065d8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sign/dd790e.wgsl.expected.spvasm b/test/intrinsics/gen/sign/dd790e.wgsl.expected.spvasm
index bb97f04..9069f50 100644
--- a/test/intrinsics/gen/sign/dd790e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sign/dd790e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sign_dd790e "sign_dd790e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%sign_dd790e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 FSign %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %sign_dd790e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sign_dd790e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sign_dd790e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sign_dd790e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sign_dd790e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sign_dd790e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sin/01f241.wgsl.expected.spvasm b/test/intrinsics/gen/sin/01f241.wgsl.expected.spvasm
index e459aea..6a709ff 100644
--- a/test/intrinsics/gen/sin/01f241.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sin/01f241.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sin_01f241 "sin_01f241"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sin_01f241 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sin_01f241
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sin_01f241
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sin_01f241
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sin_01f241
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sin_01f241
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sin_01f241
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sin/4e3979.wgsl.expected.spvasm b/test/intrinsics/gen/sin/4e3979.wgsl.expected.spvasm
index 6c33ea5..c83fd92 100644
--- a/test/intrinsics/gen/sin/4e3979.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sin/4e3979.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sin_4e3979 "sin_4e3979"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sin_4e3979 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Sin %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Sin %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %sin_4e3979
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sin_4e3979
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sin_4e3979
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sin_4e3979
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sin_4e3979
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sin_4e3979
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sin/b78c91.wgsl.expected.spvasm b/test/intrinsics/gen/sin/b78c91.wgsl.expected.spvasm
index 45895ad..574e10b 100644
--- a/test/intrinsics/gen/sin/b78c91.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sin/b78c91.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sin_b78c91 "sin_b78c91"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%sin_b78c91 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Sin %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %sin_b78c91
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sin_b78c91
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sin_b78c91
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sin_b78c91
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sin_b78c91
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sin_b78c91
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sin/fc8bc4.wgsl.expected.spvasm b/test/intrinsics/gen/sin/fc8bc4.wgsl.expected.spvasm
index 1897305..ff7c146 100644
--- a/test/intrinsics/gen/sin/fc8bc4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sin/fc8bc4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sin_fc8bc4 "sin_fc8bc4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sin_fc8bc4 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sin_fc8bc4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sin_fc8bc4
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sin_fc8bc4
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sin_fc8bc4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sin_fc8bc4
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sin_fc8bc4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sinh/445e33.wgsl.expected.spvasm b/test/intrinsics/gen/sinh/445e33.wgsl.expected.spvasm
index 71e5771..a3e2fb6 100644
--- a/test/intrinsics/gen/sinh/445e33.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sinh/445e33.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sinh_445e33 "sinh_445e33"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sinh_445e33 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Sinh %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Sinh %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %sinh_445e33
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sinh_445e33
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sinh_445e33
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sinh_445e33
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sinh_445e33
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sinh_445e33
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sinh/7bb598.wgsl.expected.spvasm b/test/intrinsics/gen/sinh/7bb598.wgsl.expected.spvasm
index 997d3ff..746f01c 100644
--- a/test/intrinsics/gen/sinh/7bb598.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sinh/7bb598.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sinh_7bb598 "sinh_7bb598"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%sinh_7bb598 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Sinh %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %sinh_7bb598
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sinh_7bb598
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sinh_7bb598
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sinh_7bb598
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sinh_7bb598
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sinh_7bb598
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sinh/b9860e.wgsl.expected.spvasm b/test/intrinsics/gen/sinh/b9860e.wgsl.expected.spvasm
index bba9adb..8225ffd 100644
--- a/test/intrinsics/gen/sinh/b9860e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sinh/b9860e.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sinh_b9860e "sinh_b9860e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sinh_b9860e = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sinh_b9860e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sinh_b9860e
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sinh_b9860e
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sinh_b9860e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sinh_b9860e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sinh_b9860e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sinh/c9a5eb.wgsl.expected.spvasm b/test/intrinsics/gen/sinh/c9a5eb.wgsl.expected.spvasm
index f923d9f..a843746 100644
--- a/test/intrinsics/gen/sinh/c9a5eb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sinh/c9a5eb.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sinh_c9a5eb "sinh_c9a5eb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sinh_c9a5eb = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sinh_c9a5eb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sinh_c9a5eb
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sinh_c9a5eb
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sinh_c9a5eb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sinh_c9a5eb
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sinh_c9a5eb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/smoothStep/5f615b.wgsl.expected.spvasm b/test/intrinsics/gen/smoothStep/5f615b.wgsl.expected.spvasm
index f20b707..1b2e9f4 100644
--- a/test/intrinsics/gen/smoothStep/5f615b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/smoothStep/5f615b.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %smoothStep_5f615b "smoothStep_5f615b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%smoothStep_5f615b = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 SmoothStep %8 %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 SmoothStep %5 %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %smoothStep_5f615b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %smoothStep_5f615b
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %smoothStep_5f615b
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %smoothStep_5f615b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %smoothStep_5f615b
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %smoothStep_5f615b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/smoothStep/658be3.wgsl.expected.spvasm b/test/intrinsics/gen/smoothStep/658be3.wgsl.expected.spvasm
index b6a904e..5c36082 100644
--- a/test/intrinsics/gen/smoothStep/658be3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/smoothStep/658be3.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %smoothStep_658be3 "smoothStep_658be3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%smoothStep_658be3 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %smoothStep_658be3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %smoothStep_658be3
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %smoothStep_658be3
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %smoothStep_658be3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %smoothStep_658be3
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %smoothStep_658be3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/smoothStep/c11eef.wgsl.expected.spvasm b/test/intrinsics/gen/smoothStep/c11eef.wgsl.expected.spvasm
index f393adc..d2fcb9e 100644
--- a/test/intrinsics/gen/smoothStep/c11eef.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/smoothStep/c11eef.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %smoothStep_c11eef "smoothStep_c11eef"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%smoothStep_c11eef = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %smoothStep_c11eef
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %smoothStep_c11eef
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %smoothStep_c11eef
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %smoothStep_c11eef
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %smoothStep_c11eef
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %smoothStep_c11eef
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/smoothStep/cb0bfb.wgsl.expected.spvasm b/test/intrinsics/gen/smoothStep/cb0bfb.wgsl.expected.spvasm
index a19270a..4dbf5d3 100644
--- a/test/intrinsics/gen/smoothStep/cb0bfb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/smoothStep/cb0bfb.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %smoothStep_cb0bfb "smoothStep_cb0bfb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%smoothStep_cb0bfb = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 SmoothStep %float_1 %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %smoothStep_cb0bfb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %smoothStep_cb0bfb
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %smoothStep_cb0bfb
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %smoothStep_cb0bfb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %smoothStep_cb0bfb
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %smoothStep_cb0bfb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sqrt/20c74e.wgsl.expected.spvasm b/test/intrinsics/gen/sqrt/20c74e.wgsl.expected.spvasm
index 7e26f2b..a9e5def 100644
--- a/test/intrinsics/gen/sqrt/20c74e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sqrt/20c74e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sqrt_20c74e "sqrt_20c74e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%sqrt_20c74e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Sqrt %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %sqrt_20c74e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sqrt_20c74e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sqrt_20c74e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sqrt_20c74e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sqrt_20c74e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sqrt_20c74e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sqrt/8c7024.wgsl.expected.spvasm b/test/intrinsics/gen/sqrt/8c7024.wgsl.expected.spvasm
index fd48614..89f3e4b 100644
--- a/test/intrinsics/gen/sqrt/8c7024.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sqrt/8c7024.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sqrt_8c7024 "sqrt_8c7024"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sqrt_8c7024 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sqrt_8c7024
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sqrt_8c7024
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sqrt_8c7024
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sqrt_8c7024
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sqrt_8c7024
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sqrt_8c7024
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sqrt/aa0d7a.wgsl.expected.spvasm b/test/intrinsics/gen/sqrt/aa0d7a.wgsl.expected.spvasm
index c944fbf..7566b82 100644
--- a/test/intrinsics/gen/sqrt/aa0d7a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sqrt/aa0d7a.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sqrt_aa0d7a "sqrt_aa0d7a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sqrt_aa0d7a = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Sqrt %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Sqrt %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %sqrt_aa0d7a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %sqrt_aa0d7a
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %sqrt_aa0d7a
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %sqrt_aa0d7a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %sqrt_aa0d7a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %sqrt_aa0d7a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/sqrt/f8c59a.wgsl.expected.spvasm b/test/intrinsics/gen/sqrt/f8c59a.wgsl.expected.spvasm
index 5d8c11c..15225e1 100644
--- a/test/intrinsics/gen/sqrt/f8c59a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/sqrt/f8c59a.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %sqrt_f8c59a "sqrt_f8c59a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%sqrt_f8c59a = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %sqrt_f8c59a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %sqrt_f8c59a
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %sqrt_f8c59a
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %sqrt_f8c59a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %sqrt_f8c59a
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %sqrt_f8c59a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/step/0b073b.wgsl.expected.spvasm b/test/intrinsics/gen/step/0b073b.wgsl.expected.spvasm
index 43ffb2f..df776a0 100644
--- a/test/intrinsics/gen/step/0b073b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/step/0b073b.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %step_0b073b "step_0b073b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%step_0b073b = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Step %float_1 %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %step_0b073b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %step_0b073b
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %step_0b073b
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %step_0b073b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %step_0b073b
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %step_0b073b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/step/19accd.wgsl.expected.spvasm b/test/intrinsics/gen/step/19accd.wgsl.expected.spvasm
index 2ff36a6..b56876a 100644
--- a/test/intrinsics/gen/step/19accd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/step/19accd.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %step_19accd "step_19accd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%step_19accd = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %step_19accd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %step_19accd
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %step_19accd
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %step_19accd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %step_19accd
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %step_19accd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/step/334303.wgsl.expected.spvasm b/test/intrinsics/gen/step/334303.wgsl.expected.spvasm
index 67f95b8..7cc186a 100644
--- a/test/intrinsics/gen/step/334303.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/step/334303.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %step_334303 "step_334303"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%step_334303 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %step_334303
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %step_334303
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %step_334303
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %step_334303
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %step_334303
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %step_334303
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/step/e2b337.wgsl.expected.spvasm b/test/intrinsics/gen/step/e2b337.wgsl.expected.spvasm
index 96519e6..d1fcc53 100644
--- a/test/intrinsics/gen/step/e2b337.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/step/e2b337.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %step_e2b337 "step_e2b337"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%step_e2b337 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Step %8 %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Step %5 %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %step_e2b337
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %step_e2b337
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %step_e2b337
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %step_e2b337
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %step_e2b337
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %step_e2b337
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tan/244e2a.wgsl.expected.spvasm b/test/intrinsics/gen/tan/244e2a.wgsl.expected.spvasm
index 15f6527..6c6aa2f 100644
--- a/test/intrinsics/gen/tan/244e2a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tan/244e2a.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tan_244e2a "tan_244e2a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tan_244e2a = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Tan %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Tan %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %tan_244e2a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %tan_244e2a
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %tan_244e2a
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %tan_244e2a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %tan_244e2a
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %tan_244e2a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tan/2f030e.wgsl.expected.spvasm b/test/intrinsics/gen/tan/2f030e.wgsl.expected.spvasm
index 53e31dd..2ae773c 100644
--- a/test/intrinsics/gen/tan/2f030e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tan/2f030e.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tan_2f030e "tan_2f030e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%tan_2f030e = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Tan %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %tan_2f030e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %tan_2f030e
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %tan_2f030e
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %tan_2f030e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %tan_2f030e
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %tan_2f030e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tan/7ea104.wgsl.expected.spvasm b/test/intrinsics/gen/tan/7ea104.wgsl.expected.spvasm
index a776589..5912137 100644
--- a/test/intrinsics/gen/tan/7ea104.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tan/7ea104.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tan_7ea104 "tan_7ea104"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tan_7ea104 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %tan_7ea104
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %tan_7ea104
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %tan_7ea104
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %tan_7ea104
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %tan_7ea104
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %tan_7ea104
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tan/8ce3e9.wgsl.expected.spvasm b/test/intrinsics/gen/tan/8ce3e9.wgsl.expected.spvasm
index 50360e3..a649a53 100644
--- a/test/intrinsics/gen/tan/8ce3e9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tan/8ce3e9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tan_8ce3e9 "tan_8ce3e9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tan_8ce3e9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %tan_8ce3e9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %tan_8ce3e9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %tan_8ce3e9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %tan_8ce3e9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %tan_8ce3e9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %tan_8ce3e9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tanh/5663c5.wgsl.expected.spvasm b/test/intrinsics/gen/tanh/5663c5.wgsl.expected.spvasm
index bdf846a..0c9049a 100644
--- a/test/intrinsics/gen/tanh/5663c5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tanh/5663c5.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tanh_5663c5 "tanh_5663c5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tanh_5663c5 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Tanh %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Tanh %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %tanh_5663c5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %tanh_5663c5
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %tanh_5663c5
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %tanh_5663c5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %tanh_5663c5
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %tanh_5663c5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tanh/5724b3.wgsl.expected.spvasm b/test/intrinsics/gen/tanh/5724b3.wgsl.expected.spvasm
index 62ff765..ec85587 100644
--- a/test/intrinsics/gen/tanh/5724b3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tanh/5724b3.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tanh_5724b3 "tanh_5724b3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tanh_5724b3 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %tanh_5724b3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %tanh_5724b3
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %tanh_5724b3
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %tanh_5724b3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %tanh_5724b3
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %tanh_5724b3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tanh/9f9fb9.wgsl.expected.spvasm b/test/intrinsics/gen/tanh/9f9fb9.wgsl.expected.spvasm
index 9c4b25d..3afa263 100644
--- a/test/intrinsics/gen/tanh/9f9fb9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tanh/9f9fb9.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tanh_9f9fb9 "tanh_9f9fb9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%tanh_9f9fb9 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %tanh_9f9fb9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %tanh_9f9fb9
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %tanh_9f9fb9
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %tanh_9f9fb9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %tanh_9f9fb9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %tanh_9f9fb9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/tanh/c15fdb.wgsl.expected.spvasm b/test/intrinsics/gen/tanh/c15fdb.wgsl.expected.spvasm
index a233a16..8c45d42 100644
--- a/test/intrinsics/gen/tanh/c15fdb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/tanh/c15fdb.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %tanh_c15fdb "tanh_c15fdb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%tanh_c15fdb = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Tanh %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %tanh_c15fdb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %tanh_c15fdb
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %tanh_c15fdb
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %tanh_c15fdb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %tanh_c15fdb
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %tanh_c15fdb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/002b2a.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/002b2a.wgsl.expected.spvasm
index e30b842..178d73b 100644
--- a/test/intrinsics/gen/textureDimensions/002b2a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/002b2a.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_002b2a "textureDimensions_002b2a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_002b2a = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %int %18 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_002b2a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_002b2a
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_002b2a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_002b2a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_002b2a
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_002b2a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/012b82.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/012b82.wgsl.expected.spvasm
index 0cc033b..4e8d502 100644
--- a/test/intrinsics/gen/textureDimensions/012b82.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/012b82.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_012b82 "textureDimensions_012b82"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_012b82 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_012b82
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_012b82
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_012b82
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_012b82
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_012b82
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_012b82
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/08753d.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/08753d.wgsl.expected.spvasm
index 7844189..8854f38 100644
--- a/test/intrinsics/gen/textureDimensions/08753d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/08753d.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_08753d "textureDimensions_08753d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_08753d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_08753d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_08753d
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_08753d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_08753d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_08753d
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_08753d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/08a62e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/08a62e.wgsl.expected.spvasm
index 30cf3a5..c9e28f4 100644
--- a/test/intrinsics/gen/textureDimensions/08a62e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/08a62e.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_08a62e "textureDimensions_08a62e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_08a62e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_08a62e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_08a62e
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_08a62e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_08a62e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_08a62e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_08a62e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0a5fcf.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0a5fcf.wgsl.expected.spvasm
index 78cdeab..a912652 100644
--- a/test/intrinsics/gen/textureDimensions/0a5fcf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0a5fcf.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0a5fcf "textureDimensions_0a5fcf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0a5fcf = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_0a5fcf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_0a5fcf
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_0a5fcf
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_0a5fcf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_0a5fcf
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_0a5fcf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0bab57.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0bab57.wgsl.expected.spvasm
index 5122a7a..a7b100d 100644
--- a/test/intrinsics/gen/textureDimensions/0bab57.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0bab57.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0bab57 "textureDimensions_0bab57"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0bab57 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_0bab57
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_0bab57
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_0bab57
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_0bab57
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_0bab57
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_0bab57
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0c4772.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0c4772.wgsl.expected.spvasm
index a84a2c9..77d91d5 100644
--- a/test/intrinsics/gen/textureDimensions/0c4772.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0c4772.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0c4772 "textureDimensions_0c4772"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0c4772 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_0c4772
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_0c4772
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_0c4772
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_0c4772
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_0c4772
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_0c4772
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0cce40.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0cce40.wgsl.expected.spvasm
index a86327e..51c3c14 100644
--- a/test/intrinsics/gen/textureDimensions/0cce40.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0cce40.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0cce40 "textureDimensions_0cce40"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0cce40 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_0cce40
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_0cce40
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_0cce40
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_0cce40
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_0cce40
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_0cce40
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0cf2ff.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0cf2ff.wgsl.expected.spvasm
index 9a0a27b..aece995 100644
--- a/test/intrinsics/gen/textureDimensions/0cf2ff.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0cf2ff.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0cf2ff "textureDimensions_0cf2ff"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0cf2ff = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_0cf2ff
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_0cf2ff
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_0cf2ff
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_0cf2ff
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_0cf2ff
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_0cf2ff
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0d8b7e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0d8b7e.wgsl.expected.spvasm
index 81c70b0..c5406d7 100644
--- a/test/intrinsics/gen/textureDimensions/0d8b7e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0d8b7e.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0d8b7e "textureDimensions_0d8b7e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0d8b7e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_0d8b7e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_0d8b7e
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_0d8b7e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_0d8b7e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_0d8b7e
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_0d8b7e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0e32ee.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0e32ee.wgsl.expected.spvasm
index 74a4736..c045a1a 100644
--- a/test/intrinsics/gen/textureDimensions/0e32ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0e32ee.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0e32ee "textureDimensions_0e32ee"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0e32ee = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_0e32ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_0e32ee
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_0e32ee
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_0e32ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_0e32ee
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_0e32ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/0f3c50.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/0f3c50.wgsl.expected.spvasm
index 34cbe26..53a9a61 100644
--- a/test/intrinsics/gen/textureDimensions/0f3c50.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/0f3c50.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_0f3c50 "textureDimensions_0f3c50"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_0f3c50 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_0f3c50
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_0f3c50
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_0f3c50
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_0f3c50
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_0f3c50
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_0f3c50
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1147d6.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1147d6.wgsl.expected.spvasm
index ca44195..dfd8b2e 100644
--- a/test/intrinsics/gen/textureDimensions/1147d6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1147d6.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1147d6 "textureDimensions_1147d6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1147d6 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_1147d6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_1147d6
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1147d6
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1147d6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_1147d6
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_1147d6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1191a5.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1191a5.wgsl.expected.spvasm
index 90f0304..1cc88e1 100644
--- a/test/intrinsics/gen/textureDimensions/1191a5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1191a5.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1191a5 "textureDimensions_1191a5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1191a5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_1191a5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_1191a5
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1191a5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1191a5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_1191a5
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_1191a5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/12c9bb.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
index 599b117..85a2e2e 100644
--- a/test/intrinsics/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/12c9bb.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_12c9bb "textureDimensions_12c9bb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_12c9bb = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_12c9bb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_12c9bb
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_12c9bb
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_12c9bb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_12c9bb
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_12c9bb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/147998.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/147998.wgsl.expected.spvasm
index 83e696c..9e80b7d 100644
--- a/test/intrinsics/gen/textureDimensions/147998.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/147998.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_147998 "textureDimensions_147998"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_147998 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_147998
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_147998
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_147998
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_147998
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_147998
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_147998
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/16036c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/16036c.wgsl.expected.spvasm
index f00ebb9..af24793 100644
--- a/test/intrinsics/gen/textureDimensions/16036c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/16036c.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_16036c "textureDimensions_16036c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_16036c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_16036c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_16036c
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_16036c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_16036c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_16036c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_16036c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/168fcc.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/168fcc.wgsl.expected.spvasm
index e1c7c11..be89daf 100644
--- a/test/intrinsics/gen/textureDimensions/168fcc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/168fcc.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_168fcc "textureDimensions_168fcc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_168fcc = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_168fcc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_168fcc
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_168fcc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_168fcc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_168fcc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_168fcc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/18bd57.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/18bd57.wgsl.expected.spvasm
index c0c23cb..45df877 100644
--- a/test/intrinsics/gen/textureDimensions/18bd57.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/18bd57.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_18bd57 "textureDimensions_18bd57"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -46,37 +45,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_18bd57 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_18bd57
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_18bd57
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_18bd57
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_18bd57
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_18bd57
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_18bd57
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/19bffc.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/19bffc.wgsl.expected.spvasm
index 8157657..0d2385e 100644
--- a/test/intrinsics/gen/textureDimensions/19bffc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/19bffc.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_19bffc "textureDimensions_19bffc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_19bffc = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_19bffc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_19bffc
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_19bffc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_19bffc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_19bffc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_19bffc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1a58e7.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1a58e7.wgsl.expected.spvasm
index 53bda8e..f2ebb26 100644
--- a/test/intrinsics/gen/textureDimensions/1a58e7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1a58e7.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1a58e7 "textureDimensions_1a58e7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1a58e7 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_1a58e7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_1a58e7
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1a58e7
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1a58e7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_1a58e7
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_1a58e7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1aa199.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1aa199.wgsl.expected.spvasm
index 721e60a..5006ca6 100644
--- a/test/intrinsics/gen/textureDimensions/1aa199.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1aa199.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1aa199 "textureDimensions_1aa199"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1aa199 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_1aa199
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_1aa199
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1aa199
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1aa199
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_1aa199
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_1aa199
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1b71f0.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1b71f0.wgsl.expected.spvasm
index 1bd6793..ba6dd6a 100644
--- a/test/intrinsics/gen/textureDimensions/1b71f0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1b71f0.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1b71f0 "textureDimensions_1b71f0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1b71f0 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_1b71f0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_1b71f0
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_1b71f0
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_1b71f0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_1b71f0
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_1b71f0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1d6c26.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1d6c26.wgsl.expected.spvasm
index 211100f..f0feca5 100644
--- a/test/intrinsics/gen/textureDimensions/1d6c26.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1d6c26.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1d6c26 "textureDimensions_1d6c26"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1d6c26 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_1d6c26
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_1d6c26
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1d6c26
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1d6c26
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_1d6c26
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_1d6c26
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1e189c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1e189c.wgsl.expected.spvasm
index 1445365..95f3ea0 100644
--- a/test/intrinsics/gen/textureDimensions/1e189c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1e189c.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1e189c "textureDimensions_1e189c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1e189c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_1e189c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_1e189c
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_1e189c
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_1e189c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_1e189c
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_1e189c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1e9e39.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1e9e39.wgsl.expected.spvasm
index 8deedb3..c83aa50 100644
--- a/test/intrinsics/gen/textureDimensions/1e9e39.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1e9e39.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1e9e39 "textureDimensions_1e9e39"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1e9e39 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_1e9e39
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_1e9e39
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_1e9e39
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_1e9e39
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_1e9e39
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_1e9e39
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/1f20c5.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/1f20c5.wgsl.expected.spvasm
index bee122d..83e1fb4 100644
--- a/test/intrinsics/gen/textureDimensions/1f20c5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/1f20c5.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_1f20c5 "textureDimensions_1f20c5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%26 = OpConstantNull %v2int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_1f20c5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %26
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySizeLod %v3int %22 %int_0
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureDimensions_1f20c5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureDimensions_1f20c5
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_1f20c5
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_1f20c5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureDimensions_1f20c5
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureDimensions_1f20c5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/214b7b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/214b7b.wgsl.expected.spvasm
index 6179d33..e0cd411 100644
--- a/test/intrinsics/gen/textureDimensions/214b7b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/214b7b.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_214b7b "textureDimensions_214b7b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_214b7b = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_214b7b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_214b7b
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_214b7b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_214b7b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_214b7b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_214b7b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/214dd4.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/214dd4.wgsl.expected.spvasm
index 9b8ac32..8210ce8 100644
--- a/test/intrinsics/gen/textureDimensions/214dd4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/214dd4.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_214dd4 "textureDimensions_214dd4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_214dd4 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_214dd4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_214dd4
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_214dd4
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_214dd4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_214dd4
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_214dd4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/221f22.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/221f22.wgsl.expected.spvasm
index acc2539..527024f 100644
--- a/test/intrinsics/gen/textureDimensions/221f22.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/221f22.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_221f22 "textureDimensions_221f22"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_221f22 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_221f22
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_221f22
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_221f22
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_221f22
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_221f22
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_221f22
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/267788.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/267788.wgsl.expected.spvasm
index 3cddc55..7c1f7de 100644
--- a/test/intrinsics/gen/textureDimensions/267788.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/267788.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_267788 "textureDimensions_267788"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%26 = OpConstantNull %v2int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_267788 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %26
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySizeLod %v3int %22 %int_0
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureDimensions_267788
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureDimensions_267788
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_267788
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_267788
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureDimensions_267788
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureDimensions_267788
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/26bdfa.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/26bdfa.wgsl.expected.spvasm
index 56f79d4..dda3b4f 100644
--- a/test/intrinsics/gen/textureDimensions/26bdfa.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/26bdfa.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_26bdfa "textureDimensions_26bdfa"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_26bdfa = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v3int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_26bdfa
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_26bdfa
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_26bdfa
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_26bdfa
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_26bdfa
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_26bdfa
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/26ef6c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/26ef6c.wgsl.expected.spvasm
index a02bdc1..bd40e12 100644
--- a/test/intrinsics/gen/textureDimensions/26ef6c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/26ef6c.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_26ef6c "textureDimensions_26ef6c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_26ef6c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_26ef6c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_26ef6c
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_26ef6c
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_26ef6c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_26ef6c
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_26ef6c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2ad087.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2ad087.wgsl.expected.spvasm
index d4c7fd8..cb89db5 100644
--- a/test/intrinsics/gen/textureDimensions/2ad087.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2ad087.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2ad087 "textureDimensions_2ad087"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2ad087 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_2ad087
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_2ad087
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_2ad087
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_2ad087
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_2ad087
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_2ad087
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2d32ae.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2d32ae.wgsl.expected.spvasm
index 43bf92d..55f605f 100644
--- a/test/intrinsics/gen/textureDimensions/2d32ae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2d32ae.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2d32ae "textureDimensions_2d32ae"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2d32ae = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_2d32ae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_2d32ae
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_2d32ae
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_2d32ae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_2d32ae
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_2d32ae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2e0662.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2e0662.wgsl.expected.spvasm
index c28f836..118979e 100644
--- a/test/intrinsics/gen/textureDimensions/2e0662.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2e0662.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2e0662 "textureDimensions_2e0662"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2e0662 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_2e0662
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_2e0662
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_2e0662
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_2e0662
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_2e0662
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_2e0662
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2efa05.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2efa05.wgsl.expected.spvasm
index b33db34..3293c27 100644
--- a/test/intrinsics/gen/textureDimensions/2efa05.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2efa05.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2efa05 "textureDimensions_2efa05"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%24 = OpConstantNull %v3int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2efa05 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v3int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_2efa05
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_2efa05
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_2efa05
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_2efa05
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_2efa05
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_2efa05
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2f289f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2f289f.wgsl.expected.spvasm
index ffe6d7e..ae04243 100644
--- a/test/intrinsics/gen/textureDimensions/2f289f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2f289f.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2f289f "textureDimensions_2f289f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2f289f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_2f289f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_2f289f
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_2f289f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_2f289f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_2f289f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_2f289f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/2fe1cc.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/2fe1cc.wgsl.expected.spvasm
index d769ee2..a95be9e 100644
--- a/test/intrinsics/gen/textureDimensions/2fe1cc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/2fe1cc.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_2fe1cc "textureDimensions_2fe1cc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_2fe1cc = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_2fe1cc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_2fe1cc
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_2fe1cc
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_2fe1cc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_2fe1cc
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_2fe1cc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/318ecc.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/318ecc.wgsl.expected.spvasm
index 17a4e27..c65dba9 100644
--- a/test/intrinsics/gen/textureDimensions/318ecc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/318ecc.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_318ecc "textureDimensions_318ecc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_318ecc = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_318ecc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_318ecc
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_318ecc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_318ecc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_318ecc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_318ecc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/340d06.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/340d06.wgsl.expected.spvasm
index f666315..c58da9b 100644
--- a/test/intrinsics/gen/textureDimensions/340d06.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/340d06.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_340d06 "textureDimensions_340d06"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_340d06 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_340d06
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_340d06
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_340d06
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_340d06
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_340d06
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_340d06
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/398e30.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/398e30.wgsl.expected.spvasm
index 88fb12c..9339841 100644
--- a/test/intrinsics/gen/textureDimensions/398e30.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/398e30.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_398e30 "textureDimensions_398e30"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_398e30 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_398e30
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_398e30
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_398e30
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_398e30
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_398e30
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_398e30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/39a600.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/39a600.wgsl.expected.spvasm
index c364050..7637066 100644
--- a/test/intrinsics/gen/textureDimensions/39a600.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/39a600.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_39a600 "textureDimensions_39a600"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_39a600 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_39a600
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_39a600
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_39a600
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_39a600
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_39a600
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_39a600
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/3a94ea.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/3a94ea.wgsl.expected.spvasm
index 36d52b7..1ef266d 100644
--- a/test/intrinsics/gen/textureDimensions/3a94ea.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/3a94ea.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_3a94ea "textureDimensions_3a94ea"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_3a94ea = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_3a94ea
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_3a94ea
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_3a94ea
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_3a94ea
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_3a94ea
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_3a94ea
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/3aca08.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/3aca08.wgsl.expected.spvasm
index 5cd7281..faf0eff 100644
--- a/test/intrinsics/gen/textureDimensions/3aca08.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/3aca08.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_3aca08 "textureDimensions_3aca08"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_3aca08 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_3aca08
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_3aca08
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_3aca08
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_3aca08
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_3aca08
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_3aca08
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/3c5ad8.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/3c5ad8.wgsl.expected.spvasm
index c6cb7d8..f91c033 100644
--- a/test/intrinsics/gen/textureDimensions/3c5ad8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/3c5ad8.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_3c5ad8 "textureDimensions_3c5ad8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_3c5ad8 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_3c5ad8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_3c5ad8
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_3c5ad8
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_3c5ad8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_3c5ad8
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_3c5ad8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/3d5817.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/3d5817.wgsl.expected.spvasm
index e617ef6..64833d3 100644
--- a/test/intrinsics/gen/textureDimensions/3d5817.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/3d5817.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_3d5817 "textureDimensions_3d5817"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_3d5817 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_3d5817
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_3d5817
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_3d5817
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_3d5817
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_3d5817
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_3d5817
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/40bc10.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/40bc10.wgsl.expected.spvasm
index 2d5abf4..08a9327 100644
--- a/test/intrinsics/gen/textureDimensions/40bc10.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/40bc10.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_40bc10 "textureDimensions_40bc10"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_40bc10 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_40bc10
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_40bc10
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_40bc10
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_40bc10
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_40bc10
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_40bc10
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/4152a6.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/4152a6.wgsl.expected.spvasm
index e001490..e092546 100644
--- a/test/intrinsics/gen/textureDimensions/4152a6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/4152a6.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_4152a6 "textureDimensions_4152a6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -46,37 +45,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%26 = OpConstantNull %v2int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_4152a6 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %26
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySizeLod %v3int %22 %int_0
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureDimensions_4152a6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureDimensions_4152a6
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_4152a6
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_4152a6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureDimensions_4152a6
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureDimensions_4152a6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/423f99.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/423f99.wgsl.expected.spvasm
index b6a2c25..807bc78 100644
--- a/test/intrinsics/gen/textureDimensions/423f99.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/423f99.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_423f99 "textureDimensions_423f99"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_423f99 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %int %18 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_423f99
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_423f99
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_423f99
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_423f99
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_423f99
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_423f99
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/4267ee.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/4267ee.wgsl.expected.spvasm
index e5b6e92..a93a79d 100644
--- a/test/intrinsics/gen/textureDimensions/4267ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/4267ee.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_4267ee "textureDimensions_4267ee"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_4267ee = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_4267ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_4267ee
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_4267ee
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_4267ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_4267ee
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_4267ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/42d4e6.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/42d4e6.wgsl.expected.spvasm
index 572fcb0..4127ab0 100644
--- a/test/intrinsics/gen/textureDimensions/42d4e6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/42d4e6.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_42d4e6 "textureDimensions_42d4e6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_42d4e6 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_42d4e6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_42d4e6
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_42d4e6
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_42d4e6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_42d4e6
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_42d4e6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/441392.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/441392.wgsl.expected.spvasm
index 1fb6b0f..027c23b 100644
--- a/test/intrinsics/gen/textureDimensions/441392.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/441392.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_441392 "textureDimensions_441392"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_441392 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_441392
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_441392
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_441392
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_441392
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_441392
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_441392
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/48cb89.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/48cb89.wgsl.expected.spvasm
index bcca1a0..9a887dc 100644
--- a/test/intrinsics/gen/textureDimensions/48cb89.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/48cb89.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_48cb89 "textureDimensions_48cb89"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_48cb89 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_48cb89
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_48cb89
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_48cb89
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_48cb89
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_48cb89
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_48cb89
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/48cbb2.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/48cbb2.wgsl.expected.spvasm
index 3aaea4e..21db059 100644
--- a/test/intrinsics/gen/textureDimensions/48cbb2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/48cbb2.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_48cbb2 "textureDimensions_48cbb2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_48cbb2 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_48cbb2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_48cbb2
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_48cbb2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_48cbb2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_48cbb2
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_48cbb2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/48f360.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/48f360.wgsl.expected.spvasm
index 48c69ba..794771f 100644
--- a/test/intrinsics/gen/textureDimensions/48f360.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/48f360.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_48f360 "textureDimensions_48f360"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_48f360 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_48f360
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_48f360
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_48f360
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_48f360
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_48f360
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_48f360
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/49d274.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/49d274.wgsl.expected.spvasm
index 94abc18..9a63680 100644
--- a/test/intrinsics/gen/textureDimensions/49d274.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/49d274.wgsl.expected.spvasm
@@ -1,81 +1,79 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_49d274 "textureDimensions_49d274"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_49d274 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_49d274
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_49d274
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_49d274
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_49d274
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_49d274
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_49d274
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/4df9a8.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/4df9a8.wgsl.expected.spvasm
index 91dc89d..c4be2a7 100644
--- a/test/intrinsics/gen/textureDimensions/4df9a8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/4df9a8.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_4df9a8 "textureDimensions_4df9a8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_4df9a8 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_4df9a8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_4df9a8
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_4df9a8
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_4df9a8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_4df9a8
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_4df9a8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/50a9ee.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/50a9ee.wgsl.expected.spvasm
index 765d401..e0dd9de 100644
--- a/test/intrinsics/gen/textureDimensions/50a9ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/50a9ee.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_50a9ee "textureDimensions_50a9ee"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_50a9ee = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_50a9ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_50a9ee
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_50a9ee
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_50a9ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_50a9ee
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_50a9ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/52045c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/52045c.wgsl.expected.spvasm
index 626f2d0..2d27a40 100644
--- a/test/intrinsics/gen/textureDimensions/52045c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/52045c.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_52045c "textureDimensions_52045c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_52045c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %int %18 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_52045c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_52045c
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_52045c
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_52045c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_52045c
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_52045c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/55b23e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/55b23e.wgsl.expected.spvasm
index e1da323..e6470a9 100644
--- a/test/intrinsics/gen/textureDimensions/55b23e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/55b23e.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_55b23e "textureDimensions_55b23e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_55b23e = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_55b23e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_55b23e
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_55b23e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_55b23e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_55b23e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_55b23e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/56ccfa.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/56ccfa.wgsl.expected.spvasm
index 2316a22..81c9798 100644
--- a/test/intrinsics/gen/textureDimensions/56ccfa.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/56ccfa.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_56ccfa "textureDimensions_56ccfa"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_56ccfa = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_56ccfa
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_56ccfa
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_56ccfa
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_56ccfa
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_56ccfa
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_56ccfa
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/579629.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/579629.wgsl.expected.spvasm
index 0974546..5d35bf9 100644
--- a/test/intrinsics/gen/textureDimensions/579629.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/579629.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_579629 "textureDimensions_579629"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_579629 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_579629
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_579629
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_579629
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_579629
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_579629
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_579629
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/57da0b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/57da0b.wgsl.expected.spvasm
index cec2ed3..9d0c96d 100644
--- a/test/intrinsics/gen/textureDimensions/57da0b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/57da0b.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_57da0b "textureDimensions_57da0b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_57da0b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_57da0b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_57da0b
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_57da0b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_57da0b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_57da0b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_57da0b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/57e28f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/57e28f.wgsl.expected.spvasm
index 9ba18c9..c1e6948 100644
--- a/test/intrinsics/gen/textureDimensions/57e28f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/57e28f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_57e28f "textureDimensions_57e28f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_57e28f = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_57e28f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_57e28f
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_57e28f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_57e28f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_57e28f
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_57e28f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/57e7b3.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/57e7b3.wgsl.expected.spvasm
index 7e8fb3d..da69f6d 100644
--- a/test/intrinsics/gen/textureDimensions/57e7b3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/57e7b3.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_57e7b3 "textureDimensions_57e7b3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_57e7b3 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_57e7b3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_57e7b3
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_57e7b3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_57e7b3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_57e7b3
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_57e7b3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/58a515.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/58a515.wgsl.expected.spvasm
index 85bea61..5afc929 100644
--- a/test/intrinsics/gen/textureDimensions/58a515.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/58a515.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_58a515 "textureDimensions_58a515"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_58a515 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_58a515
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_58a515
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_58a515
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_58a515
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_58a515
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_58a515
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/5985f3.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/5985f3.wgsl.expected.spvasm
index 7f559e8..f51c50b 100644
--- a/test/intrinsics/gen/textureDimensions/5985f3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/5985f3.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_5985f3 "textureDimensions_5985f3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_5985f3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_5985f3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_5985f3
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_5985f3
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_5985f3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_5985f3
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_5985f3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/5caa5e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/5caa5e.wgsl.expected.spvasm
index 9d43ef9..68ec968 100644
--- a/test/intrinsics/gen/textureDimensions/5caa5e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/5caa5e.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_5caa5e "textureDimensions_5caa5e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_5caa5e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_5caa5e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_5caa5e
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_5caa5e
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_5caa5e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_5caa5e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_5caa5e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/5e295d.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/5e295d.wgsl.expected.spvasm
index c761434..05297b0 100644
--- a/test/intrinsics/gen/textureDimensions/5e295d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/5e295d.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_5e295d "textureDimensions_5e295d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_5e295d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_5e295d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_5e295d
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_5e295d
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_5e295d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_5e295d
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_5e295d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/60bf54.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/60bf54.wgsl.expected.spvasm
index fa2f410..5073da1 100644
--- a/test/intrinsics/gen/textureDimensions/60bf54.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/60bf54.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_60bf54 "textureDimensions_60bf54"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_60bf54 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_60bf54
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_60bf54
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_60bf54
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_60bf54
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_60bf54
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_60bf54
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/63f3cf.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/63f3cf.wgsl.expected.spvasm
index a4f9900..f146e10 100644
--- a/test/intrinsics/gen/textureDimensions/63f3cf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/63f3cf.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_63f3cf "textureDimensions_63f3cf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_63f3cf = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_63f3cf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_63f3cf
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_63f3cf
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_63f3cf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_63f3cf
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_63f3cf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/66dc4e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/66dc4e.wgsl.expected.spvasm
index c47f34c..8a9555c 100644
--- a/test/intrinsics/gen/textureDimensions/66dc4e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/66dc4e.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_66dc4e "textureDimensions_66dc4e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_66dc4e = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_66dc4e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_66dc4e
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_66dc4e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_66dc4e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_66dc4e
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_66dc4e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/670d90.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/670d90.wgsl.expected.spvasm
index acd52e6..10b5109 100644
--- a/test/intrinsics/gen/textureDimensions/670d90.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/670d90.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_670d90 "textureDimensions_670d90"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_670d90 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_670d90
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_670d90
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_670d90
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_670d90
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_670d90
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_670d90
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/68105c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/68105c.wgsl.expected.spvasm
index 3c80ade..471b570 100644
--- a/test/intrinsics/gen/textureDimensions/68105c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/68105c.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_68105c "textureDimensions_68105c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_68105c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_68105c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_68105c
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_68105c
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_68105c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_68105c
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_68105c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/686ef2.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/686ef2.wgsl.expected.spvasm
index 8d7860c..90a2379 100644
--- a/test/intrinsics/gen/textureDimensions/686ef2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/686ef2.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_686ef2 "textureDimensions_686ef2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_686ef2 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_686ef2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_686ef2
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_686ef2
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_686ef2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_686ef2
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_686ef2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/6adac6.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/6adac6.wgsl.expected.spvasm
index 322fa31..363af60 100644
--- a/test/intrinsics/gen/textureDimensions/6adac6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/6adac6.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_6adac6 "textureDimensions_6adac6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_6adac6 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_6adac6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_6adac6
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_6adac6
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_6adac6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_6adac6
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_6adac6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/6c08ab.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/6c08ab.wgsl.expected.spvasm
index 9b6e762..e559ee8 100644
--- a/test/intrinsics/gen/textureDimensions/6c08ab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/6c08ab.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_6c08ab "textureDimensions_6c08ab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_6c08ab = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_6c08ab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_6c08ab
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_6c08ab
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_6c08ab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_6c08ab
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_6c08ab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/6e2d12.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/6e2d12.wgsl.expected.spvasm
index f2af0b5..119c472 100644
--- a/test/intrinsics/gen/textureDimensions/6e2d12.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/6e2d12.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_6e2d12 "textureDimensions_6e2d12"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_6e2d12 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_6e2d12
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_6e2d12
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_6e2d12
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_6e2d12
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_6e2d12
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_6e2d12
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/6ec1b4.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/6ec1b4.wgsl.expected.spvasm
index d9b8ac9..4f8be17 100644
--- a/test/intrinsics/gen/textureDimensions/6ec1b4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/6ec1b4.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_6ec1b4 "textureDimensions_6ec1b4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%24 = OpConstantNull %v3int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_6ec1b4 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v3int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_6ec1b4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_6ec1b4
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_6ec1b4
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_6ec1b4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_6ec1b4
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_6ec1b4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/6f0d79.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/6f0d79.wgsl.expected.spvasm
index c82c664..f1032b6 100644
--- a/test/intrinsics/gen/textureDimensions/6f0d79.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/6f0d79.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_6f0d79 "textureDimensions_6f0d79"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_6f0d79 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_6f0d79
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_6f0d79
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_6f0d79
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_6f0d79
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_6f0d79
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_6f0d79
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/702c53.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/702c53.wgsl.expected.spvasm
index d1d4436..514d19f 100644
--- a/test/intrinsics/gen/textureDimensions/702c53.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/702c53.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_702c53 "textureDimensions_702c53"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_702c53 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_702c53
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_702c53
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_702c53
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_702c53
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_702c53
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_702c53
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/70e26a.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/70e26a.wgsl.expected.spvasm
index b729123..a15cb3d 100644
--- a/test/intrinsics/gen/textureDimensions/70e26a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/70e26a.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_70e26a "textureDimensions_70e26a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_70e26a = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_70e26a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_70e26a
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_70e26a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_70e26a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_70e26a
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_70e26a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/71e8f7.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/71e8f7.wgsl.expected.spvasm
index 5655892..8c87538 100644
--- a/test/intrinsics/gen/textureDimensions/71e8f7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/71e8f7.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_71e8f7 "textureDimensions_71e8f7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_71e8f7 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_71e8f7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_71e8f7
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_71e8f7
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_71e8f7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_71e8f7
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_71e8f7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/72e5d6.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
index 95cf62b..b645a15 100644
--- a/test/intrinsics/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/72e5d6.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_72e5d6 "textureDimensions_72e5d6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_72e5d6 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_72e5d6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_72e5d6
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_72e5d6
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_72e5d6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_72e5d6
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_72e5d6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/770103.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/770103.wgsl.expected.spvasm
index 2bce881..fdaac94 100644
--- a/test/intrinsics/gen/textureDimensions/770103.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/770103.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_770103 "textureDimensions_770103"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_770103 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_770103
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_770103
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_770103
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_770103
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_770103
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_770103
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/79df87.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/79df87.wgsl.expected.spvasm
index ad99541..eaeb505 100644
--- a/test/intrinsics/gen/textureDimensions/79df87.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/79df87.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_79df87 "textureDimensions_79df87"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_79df87 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_79df87
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_79df87
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_79df87
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_79df87
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_79df87
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_79df87
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/7bf826.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/7bf826.wgsl.expected.spvasm
index f4e79cb..c6fc9b8 100644
--- a/test/intrinsics/gen/textureDimensions/7bf826.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/7bf826.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_7bf826 "textureDimensions_7bf826"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_7bf826 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_7bf826
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_7bf826
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_7bf826
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_7bf826
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_7bf826
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_7bf826
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/7f5c2e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/7f5c2e.wgsl.expected.spvasm
index b5079a3..5a25cc1 100644
--- a/test/intrinsics/gen/textureDimensions/7f5c2e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/7f5c2e.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_7f5c2e "textureDimensions_7f5c2e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_7f5c2e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_7f5c2e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_7f5c2e
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_7f5c2e
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_7f5c2e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_7f5c2e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_7f5c2e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8028f3.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8028f3.wgsl.expected.spvasm
index 37cba25..814b999 100644
--- a/test/intrinsics/gen/textureDimensions/8028f3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8028f3.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8028f3 "textureDimensions_8028f3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8028f3 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_8028f3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_8028f3
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_8028f3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_8028f3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_8028f3
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_8028f3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/811679.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/811679.wgsl.expected.spvasm
index 0cd8381..c051822 100644
--- a/test/intrinsics/gen/textureDimensions/811679.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/811679.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_811679 "textureDimensions_811679"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_811679 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_811679
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_811679
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_811679
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_811679
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_811679
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_811679
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/820596.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/820596.wgsl.expected.spvasm
index 698abd1..a657294 100644
--- a/test/intrinsics/gen/textureDimensions/820596.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/820596.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_820596 "textureDimensions_820596"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_820596 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_820596
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_820596
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_820596
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_820596
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_820596
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_820596
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/82138e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/82138e.wgsl.expected.spvasm
index 5f80c26..e9fea45 100644
--- a/test/intrinsics/gen/textureDimensions/82138e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/82138e.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_82138e "textureDimensions_82138e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_82138e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_82138e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_82138e
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_82138e
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_82138e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_82138e
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_82138e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8347ab.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8347ab.wgsl.expected.spvasm
index 307182e..521be2b 100644
--- a/test/intrinsics/gen/textureDimensions/8347ab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8347ab.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8347ab "textureDimensions_8347ab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8347ab = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_8347ab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_8347ab
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_8347ab
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_8347ab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_8347ab
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_8347ab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/83ee5a.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/83ee5a.wgsl.expected.spvasm
index 818a993..32e7431 100644
--- a/test/intrinsics/gen/textureDimensions/83ee5a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/83ee5a.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_83ee5a "textureDimensions_83ee5a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_83ee5a = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_83ee5a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_83ee5a
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_83ee5a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_83ee5a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_83ee5a
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_83ee5a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/85d556.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/85d556.wgsl.expected.spvasm
index 0b8ccff..c028495 100644
--- a/test/intrinsics/gen/textureDimensions/85d556.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/85d556.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_85d556 "textureDimensions_85d556"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_85d556 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_85d556
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_85d556
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_85d556
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_85d556
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_85d556
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_85d556
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8799ee.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8799ee.wgsl.expected.spvasm
index d00e641..385626f 100644
--- a/test/intrinsics/gen/textureDimensions/8799ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8799ee.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8799ee "textureDimensions_8799ee"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8799ee = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_8799ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_8799ee
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_8799ee
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_8799ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_8799ee
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_8799ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/88ad17.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/88ad17.wgsl.expected.spvasm
index f47c525..a16d764 100644
--- a/test/intrinsics/gen/textureDimensions/88ad17.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/88ad17.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_88ad17 "textureDimensions_88ad17"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_88ad17 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_88ad17
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_88ad17
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_88ad17
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_88ad17
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_88ad17
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_88ad17
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/89a864.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/89a864.wgsl.expected.spvasm
index 21c9a1f..8f178dc 100644
--- a/test/intrinsics/gen/textureDimensions/89a864.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/89a864.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_89a864 "textureDimensions_89a864"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_89a864 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_89a864
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_89a864
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_89a864
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_89a864
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_89a864
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_89a864
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8aa4c4.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8aa4c4.wgsl.expected.spvasm
index 109a999..4b2376f 100644
--- a/test/intrinsics/gen/textureDimensions/8aa4c4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8aa4c4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8aa4c4 "textureDimensions_8aa4c4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8aa4c4 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v3int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_8aa4c4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_8aa4c4
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_8aa4c4
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_8aa4c4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_8aa4c4
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_8aa4c4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8b4fff.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8b4fff.wgsl.expected.spvasm
index d8b1432..eabe3a2 100644
--- a/test/intrinsics/gen/textureDimensions/8b4fff.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8b4fff.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8b4fff "textureDimensions_8b4fff"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8b4fff = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_8b4fff
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_8b4fff
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_8b4fff
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_8b4fff
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_8b4fff
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_8b4fff
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8d89f8.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8d89f8.wgsl.expected.spvasm
index a8c50bc..9eb635a 100644
--- a/test/intrinsics/gen/textureDimensions/8d89f8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8d89f8.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8d89f8 "textureDimensions_8d89f8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8d89f8 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_8d89f8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_8d89f8
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_8d89f8
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_8d89f8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_8d89f8
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_8d89f8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8deb5e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8deb5e.wgsl.expected.spvasm
index ca9d65b..7afdac3 100644
--- a/test/intrinsics/gen/textureDimensions/8deb5e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8deb5e.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8deb5e "textureDimensions_8deb5e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8deb5e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v3int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_8deb5e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_8deb5e
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_8deb5e
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_8deb5e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_8deb5e
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_8deb5e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8f20bf.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8f20bf.wgsl.expected.spvasm
index baedba3..952b3d4 100644
--- a/test/intrinsics/gen/textureDimensions/8f20bf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8f20bf.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8f20bf "textureDimensions_8f20bf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8f20bf = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_8f20bf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_8f20bf
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_8f20bf
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_8f20bf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_8f20bf
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_8f20bf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/8fca0f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/8fca0f.wgsl.expected.spvasm
index 3c2dc1f..0f3281e 100644
--- a/test/intrinsics/gen/textureDimensions/8fca0f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/8fca0f.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_8fca0f "textureDimensions_8fca0f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_8fca0f = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_8fca0f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_8fca0f
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_8fca0f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_8fca0f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_8fca0f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_8fca0f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/90340b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/90340b.wgsl.expected.spvasm
index 62d5f91..2e0527a 100644
--- a/test/intrinsics/gen/textureDimensions/90340b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/90340b.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_90340b "textureDimensions_90340b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_90340b = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_90340b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_90340b
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_90340b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_90340b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_90340b
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_90340b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9042ab.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9042ab.wgsl.expected.spvasm
index 13fd167..d0099a0 100644
--- a/test/intrinsics/gen/textureDimensions/9042ab.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9042ab.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9042ab "textureDimensions_9042ab"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -46,37 +45,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9042ab = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_9042ab
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_9042ab
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_9042ab
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_9042ab
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_9042ab
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_9042ab
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/924742.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/924742.wgsl.expected.spvasm
index 5e4c2d2..fa55bd2 100644
--- a/test/intrinsics/gen/textureDimensions/924742.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/924742.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_924742 "textureDimensions_924742"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_924742 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_924742
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_924742
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_924742
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_924742
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_924742
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_924742
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/92ad20.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/92ad20.wgsl.expected.spvasm
index a60d51c..11639fb 100644
--- a/test/intrinsics/gen/textureDimensions/92ad20.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/92ad20.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_92ad20 "textureDimensions_92ad20"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_92ad20 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_92ad20
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_92ad20
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_92ad20
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_92ad20
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_92ad20
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_92ad20
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9393b0.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9393b0.wgsl.expected.spvasm
index 570b740..d87c269 100644
--- a/test/intrinsics/gen/textureDimensions/9393b0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9393b0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9393b0 "textureDimensions_9393b0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9393b0 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_9393b0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_9393b0
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_9393b0
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_9393b0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_9393b0
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_9393b0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/939fdb.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/939fdb.wgsl.expected.spvasm
index 2c0fc51..facc7e6 100644
--- a/test/intrinsics/gen/textureDimensions/939fdb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/939fdb.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_939fdb "textureDimensions_939fdb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_939fdb = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_939fdb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_939fdb
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_939fdb
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_939fdb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_939fdb
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_939fdb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9572e5.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9572e5.wgsl.expected.spvasm
index bab2499..d95a0df 100644
--- a/test/intrinsics/gen/textureDimensions/9572e5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9572e5.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9572e5 "textureDimensions_9572e5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9572e5 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_9572e5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_9572e5
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_9572e5
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_9572e5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_9572e5
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_9572e5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/962dcd.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/962dcd.wgsl.expected.spvasm
index 1c1cf34..ceac95f 100644
--- a/test/intrinsics/gen/textureDimensions/962dcd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/962dcd.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_962dcd "textureDimensions_962dcd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_962dcd = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_962dcd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_962dcd
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_962dcd
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_962dcd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_962dcd
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_962dcd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/998f6b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/998f6b.wgsl.expected.spvasm
index 280d5db..2073a4e 100644
--- a/test/intrinsics/gen/textureDimensions/998f6b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/998f6b.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_998f6b "textureDimensions_998f6b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_998f6b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_998f6b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_998f6b
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_998f6b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_998f6b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_998f6b
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_998f6b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9abfe5.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9abfe5.wgsl.expected.spvasm
index 1d99df4..6a733e8 100644
--- a/test/intrinsics/gen/textureDimensions/9abfe5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9abfe5.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9abfe5 "textureDimensions_9abfe5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9abfe5 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_9abfe5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_9abfe5
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_9abfe5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_9abfe5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_9abfe5
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_9abfe5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9c9c57.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9c9c57.wgsl.expected.spvasm
index a6b9920..6d34f92 100644
--- a/test/intrinsics/gen/textureDimensions/9c9c57.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9c9c57.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9c9c57 "textureDimensions_9c9c57"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9c9c57 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_9c9c57
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_9c9c57
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_9c9c57
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_9c9c57
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_9c9c57
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_9c9c57
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9da9e2.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9da9e2.wgsl.expected.spvasm
index 6eb0177..edaecfe 100644
--- a/test/intrinsics/gen/textureDimensions/9da9e2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9da9e2.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9da9e2 "textureDimensions_9da9e2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9da9e2 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_9da9e2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_9da9e2
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_9da9e2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_9da9e2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_9da9e2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_9da9e2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9eb8d8.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9eb8d8.wgsl.expected.spvasm
index e4d6fea..b450c7b 100644
--- a/test/intrinsics/gen/textureDimensions/9eb8d8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9eb8d8.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9eb8d8 "textureDimensions_9eb8d8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9eb8d8 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_9eb8d8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_9eb8d8
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_9eb8d8
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_9eb8d8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_9eb8d8
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_9eb8d8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/9f8e46.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/9f8e46.wgsl.expected.spvasm
index c102182..9fabd6e 100644
--- a/test/intrinsics/gen/textureDimensions/9f8e46.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/9f8e46.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_9f8e46 "textureDimensions_9f8e46"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_9f8e46 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_9f8e46
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_9f8e46
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_9f8e46
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_9f8e46
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_9f8e46
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_9f8e46
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a01845.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a01845.wgsl.expected.spvasm
index 40146a8..03a54f6 100644
--- a/test/intrinsics/gen/textureDimensions/a01845.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a01845.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a01845 "textureDimensions_a01845"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a01845 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_a01845
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_a01845
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_a01845
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_a01845
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_a01845
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_a01845
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a0aad1.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a0aad1.wgsl.expected.spvasm
index 20f60aa..6960bea 100644
--- a/test/intrinsics/gen/textureDimensions/a0aad1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a0aad1.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a0aad1 "textureDimensions_a0aad1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a0aad1 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_a0aad1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_a0aad1
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_a0aad1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_a0aad1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_a0aad1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_a0aad1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a0e4ec.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a0e4ec.wgsl.expected.spvasm
index c3bbdb2..91531ce 100644
--- a/test/intrinsics/gen/textureDimensions/a0e4ec.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a0e4ec.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a0e4ec "textureDimensions_a0e4ec"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a0e4ec = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_a0e4ec
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_a0e4ec
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_a0e4ec
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_a0e4ec
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_a0e4ec
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_a0e4ec
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a7d565.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a7d565.wgsl.expected.spvasm
index a91bab2..1694f88 100644
--- a/test/intrinsics/gen/textureDimensions/a7d565.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a7d565.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a7d565 "textureDimensions_a7d565"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a7d565 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_a7d565
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_a7d565
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_a7d565
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_a7d565
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_a7d565
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_a7d565
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a863f2.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a863f2.wgsl.expected.spvasm
index c1d9638..9e5a66a 100644
--- a/test/intrinsics/gen/textureDimensions/a863f2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a863f2.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a863f2 "textureDimensions_a863f2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a863f2 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_a863f2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_a863f2
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_a863f2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_a863f2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_a863f2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_a863f2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/a9c9c1.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/a9c9c1.wgsl.expected.spvasm
index ae83811..a075354 100644
--- a/test/intrinsics/gen/textureDimensions/a9c9c1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/a9c9c1.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_a9c9c1 "textureDimensions_a9c9c1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_a9c9c1 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_a9c9c1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_a9c9c1
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_a9c9c1
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_a9c9c1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_a9c9c1
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_a9c9c1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/ae457f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/ae457f.wgsl.expected.spvasm
index 0af7bba..a0f37ca 100644
--- a/test/intrinsics/gen/textureDimensions/ae457f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/ae457f.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_ae457f "textureDimensions_ae457f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_ae457f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_ae457f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_ae457f
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_ae457f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_ae457f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_ae457f
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_ae457f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/b0e16d.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/b0e16d.wgsl.expected.spvasm
index e42d9e0..ce5229c 100644
--- a/test/intrinsics/gen/textureDimensions/b0e16d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/b0e16d.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_b0e16d "textureDimensions_b0e16d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_b0e16d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_b0e16d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_b0e16d
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_b0e16d
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_b0e16d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_b0e16d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_b0e16d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/b3c954.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/b3c954.wgsl.expected.spvasm
index 7c574ca..f8a392c 100644
--- a/test/intrinsics/gen/textureDimensions/b3c954.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/b3c954.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_b3c954 "textureDimensions_b3c954"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_b3c954 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_b3c954
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_b3c954
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_b3c954
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_b3c954
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_b3c954
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_b3c954
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/b3e407.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/b3e407.wgsl.expected.spvasm
index 0782a4b..b700841 100644
--- a/test/intrinsics/gen/textureDimensions/b3e407.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/b3e407.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_b3e407 "textureDimensions_b3e407"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_b3e407 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %int %18 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_b3e407
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_b3e407
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_b3e407
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_b3e407
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_b3e407
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_b3e407
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/b91240.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/b91240.wgsl.expected.spvasm
index fbc7759..a0757e4 100644
--- a/test/intrinsics/gen/textureDimensions/b91240.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/b91240.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_b91240 "textureDimensions_b91240"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_b91240 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_b91240
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_b91240
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_b91240
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_b91240
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_b91240
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_b91240
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/ba1481.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/ba1481.wgsl.expected.spvasm
index 618d11b..9d157ae 100644
--- a/test/intrinsics/gen/textureDimensions/ba1481.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/ba1481.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_ba1481 "textureDimensions_ba1481"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_ba1481 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_ba1481
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_ba1481
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_ba1481
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_ba1481
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_ba1481
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_ba1481
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/ba6e15.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/ba6e15.wgsl.expected.spvasm
index 2e033df..404e706 100644
--- a/test/intrinsics/gen/textureDimensions/ba6e15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/ba6e15.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_ba6e15 "textureDimensions_ba6e15"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_ba6e15 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_ba6e15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_ba6e15
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_ba6e15
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_ba6e15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_ba6e15
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_ba6e15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/bb3dde.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/bb3dde.wgsl.expected.spvasm
index 5524466..7d30072 100644
--- a/test/intrinsics/gen/textureDimensions/bb3dde.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/bb3dde.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_bb3dde "textureDimensions_bb3dde"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_bb3dde = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_bb3dde
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_bb3dde
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_bb3dde
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_bb3dde
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_bb3dde
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_bb3dde
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/c2215f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/c2215f.wgsl.expected.spvasm
index 52cc05f..b70a750 100644
--- a/test/intrinsics/gen/textureDimensions/c2215f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/c2215f.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_c2215f "textureDimensions_c2215f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_c2215f = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_c2215f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_c2215f
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_c2215f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_c2215f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_c2215f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_c2215f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/c30e75.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/c30e75.wgsl.expected.spvasm
index 6bfa57c..05cad7c 100644
--- a/test/intrinsics/gen/textureDimensions/c30e75.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/c30e75.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_c30e75 "textureDimensions_c30e75"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_c30e75 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_c30e75
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_c30e75
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_c30e75
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_c30e75
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_c30e75
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_c30e75
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/c60b66.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/c60b66.wgsl.expected.spvasm
index 7f6cf25..fe18056 100644
--- a/test/intrinsics/gen/textureDimensions/c60b66.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/c60b66.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_c60b66 "textureDimensions_c60b66"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_c60b66 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_c60b66
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_c60b66
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_c60b66
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_c60b66
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_c60b66
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_c60b66
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/c74533.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/c74533.wgsl.expected.spvasm
index 433d410..0ca1760 100644
--- a/test/intrinsics/gen/textureDimensions/c74533.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/c74533.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_c74533 "textureDimensions_c74533"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_c74533 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_c74533
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_c74533
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_c74533
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_c74533
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_c74533
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_c74533
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/c7943d.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/c7943d.wgsl.expected.spvasm
index 15af643..0f1070d 100644
--- a/test/intrinsics/gen/textureDimensions/c7943d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/c7943d.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_c7943d "textureDimensions_c7943d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_c7943d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_c7943d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_c7943d
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_c7943d
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_c7943d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_c7943d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_c7943d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/caaabb.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/caaabb.wgsl.expected.spvasm
index c0faeb1..545e9ce 100644
--- a/test/intrinsics/gen/textureDimensions/caaabb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/caaabb.wgsl.expected.spvasm
@@ -1,81 +1,79 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_caaabb "textureDimensions_caaabb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_caaabb = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_caaabb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_caaabb
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_caaabb
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_caaabb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_caaabb
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_caaabb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cc5478.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cc5478.wgsl.expected.spvasm
index ab716b1..a850b0b 100644
--- a/test/intrinsics/gen/textureDimensions/cc5478.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cc5478.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cc5478 "textureDimensions_cc5478"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cc5478 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_cc5478
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_cc5478
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_cc5478
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_cc5478
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_cc5478
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_cc5478
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cc968c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cc968c.wgsl.expected.spvasm
index ce06dbb..21f2dd1 100644
--- a/test/intrinsics/gen/textureDimensions/cc968c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cc968c.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cc968c "textureDimensions_cc968c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cc968c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_cc968c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_cc968c
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_cc968c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_cc968c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_cc968c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_cc968c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cccc8f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cccc8f.wgsl.expected.spvasm
index c12ca5c..ae7cb8d 100644
--- a/test/intrinsics/gen/textureDimensions/cccc8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cccc8f.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cccc8f "textureDimensions_cccc8f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cccc8f = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_cccc8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_cccc8f
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_cccc8f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_cccc8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_cccc8f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_cccc8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cd76a7.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cd76a7.wgsl.expected.spvasm
index 546e8a1..6d33337 100644
--- a/test/intrinsics/gen/textureDimensions/cd76a7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cd76a7.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cd76a7 "textureDimensions_cd76a7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cd76a7 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_cd76a7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_cd76a7
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_cd76a7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_cd76a7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_cd76a7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_cd76a7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cdaff9.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cdaff9.wgsl.expected.spvasm
index 0b9efd8..db04d25 100644
--- a/test/intrinsics/gen/textureDimensions/cdaff9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cdaff9.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cdaff9 "textureDimensions_cdaff9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cdaff9 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_cdaff9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_cdaff9
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_cdaff9
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_cdaff9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_cdaff9
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_cdaff9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cdf473.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cdf473.wgsl.expected.spvasm
index 946919e..30caae8 100644
--- a/test/intrinsics/gen/textureDimensions/cdf473.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cdf473.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cdf473 "textureDimensions_cdf473"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cdf473 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_cdf473
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_cdf473
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_cdf473
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_cdf473
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_cdf473
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_cdf473
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cec841.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cec841.wgsl.expected.spvasm
index 419ce59..34eb8ec 100644
--- a/test/intrinsics/gen/textureDimensions/cec841.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cec841.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cec841 "textureDimensions_cec841"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cec841 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_cec841
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_cec841
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_cec841
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_cec841
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_cec841
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_cec841
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cf1d42.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cf1d42.wgsl.expected.spvasm
index b9e6602..ecc9d6b 100644
--- a/test/intrinsics/gen/textureDimensions/cf1d42.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cf1d42.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cf1d42 "textureDimensions_cf1d42"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cf1d42 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_cf1d42
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_cf1d42
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_cf1d42
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_cf1d42
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_cf1d42
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_cf1d42
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/cf7e43.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/cf7e43.wgsl.expected.spvasm
index f4aec52..62a64df 100644
--- a/test/intrinsics/gen/textureDimensions/cf7e43.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/cf7e43.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_cf7e43 "textureDimensions_cf7e43"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%22 = OpConstantNull %v3int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_cf7e43 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v3int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_cf7e43
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_cf7e43
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_cf7e43
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_cf7e43
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_cf7e43
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_cf7e43
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/d125bc.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/d125bc.wgsl.expected.spvasm
index b2e7490..3d3b32a 100644
--- a/test/intrinsics/gen/textureDimensions/d125bc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/d125bc.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_d125bc "textureDimensions_d125bc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_d125bc = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_d125bc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_d125bc
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_d125bc
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_d125bc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_d125bc
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_d125bc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/d40b9e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/d40b9e.wgsl.expected.spvasm
index 05a43cf..ac92139 100644
--- a/test/intrinsics/gen/textureDimensions/d40b9e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/d40b9e.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_d40b9e "textureDimensions_d40b9e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_d40b9e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_d40b9e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_d40b9e
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_d40b9e
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_d40b9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_d40b9e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_d40b9e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/d4106f.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/d4106f.wgsl.expected.spvasm
index 642a64a..8a0011b 100644
--- a/test/intrinsics/gen/textureDimensions/d4106f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/d4106f.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_d4106f "textureDimensions_d4106f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_d4106f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_d4106f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_d4106f
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_d4106f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_d4106f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_d4106f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_d4106f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/d83c45.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/d83c45.wgsl.expected.spvasm
index ee0b694..8f98426 100644
--- a/test/intrinsics/gen/textureDimensions/d83c45.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/d83c45.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_d83c45 "textureDimensions_d83c45"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -46,37 +45,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%26 = OpConstantNull %v2int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_d83c45 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %26
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySizeLod %v3int %22 %int_0
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureDimensions_d83c45
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureDimensions_d83c45
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_d83c45
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_d83c45
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureDimensions_d83c45
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureDimensions_d83c45
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/d8f951.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/d8f951.wgsl.expected.spvasm
index 11b7e33..919cb7b 100644
--- a/test/intrinsics/gen/textureDimensions/d8f951.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/d8f951.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_d8f951 "textureDimensions_d8f951"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_d8f951 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_d8f951
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_d8f951
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_d8f951
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_d8f951
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_d8f951
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_d8f951
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/da3099.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/da3099.wgsl.expected.spvasm
index 3930ab3..9682008 100644
--- a/test/intrinsics/gen/textureDimensions/da3099.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/da3099.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_da3099 "textureDimensions_da3099"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_da3099 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_da3099
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_da3099
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_da3099
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_da3099
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_da3099
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_da3099
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/daf7c0.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/daf7c0.wgsl.expected.spvasm
index b766be7..05b6fe7 100644
--- a/test/intrinsics/gen/textureDimensions/daf7c0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/daf7c0.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_daf7c0 "textureDimensions_daf7c0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_daf7c0 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_daf7c0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_daf7c0
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_daf7c0
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_daf7c0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_daf7c0
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_daf7c0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/dba47c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/dba47c.wgsl.expected.spvasm
index ef594fb..128437c 100644
--- a/test/intrinsics/gen/textureDimensions/dba47c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/dba47c.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_dba47c "textureDimensions_dba47c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_dba47c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_dba47c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_dba47c
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_dba47c
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_dba47c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_dba47c
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_dba47c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/dc2dd0.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/dc2dd0.wgsl.expected.spvasm
index 9c1d4c4..074de23 100644
--- a/test/intrinsics/gen/textureDimensions/dc2dd0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/dc2dd0.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_dc2dd0 "textureDimensions_dc2dd0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_dc2dd0 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_dc2dd0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_dc2dd0
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_dc2dd0
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_dc2dd0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_dc2dd0
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_dc2dd0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e10157.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e10157.wgsl.expected.spvasm
index f662392..923452f 100644
--- a/test/intrinsics/gen/textureDimensions/e10157.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e10157.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e10157 "textureDimensions_e10157"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e10157 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_e10157
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_e10157
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_e10157
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_e10157
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_e10157
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_e10157
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e927be.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e927be.wgsl.expected.spvasm
index efdc0d7..021901e 100644
--- a/test/intrinsics/gen/textureDimensions/e927be.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e927be.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e927be "textureDimensions_e927be"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e927be = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_e927be
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_e927be
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_e927be
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_e927be
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_e927be
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_e927be
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e93464.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e93464.wgsl.expected.spvasm
index 8a86884..fc72f55 100644
--- a/test/intrinsics/gen/textureDimensions/e93464.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e93464.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e93464 "textureDimensions_e93464"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e93464 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureDimensions_e93464
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureDimensions_e93464
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureDimensions_e93464
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureDimensions_e93464
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_e93464
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_e93464
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e9628c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e9628c.wgsl.expected.spvasm
index 75e4e59..29c5390 100644
--- a/test/intrinsics/gen/textureDimensions/e9628c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e9628c.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e9628c "textureDimensions_e9628c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e9628c = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_e9628c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_e9628c
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_e9628c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_e9628c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_e9628c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_e9628c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e9e96c.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e9e96c.wgsl.expected.spvasm
index 959f5e1..3bc1dd4 100644
--- a/test/intrinsics/gen/textureDimensions/e9e96c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e9e96c.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e9e96c "textureDimensions_e9e96c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e9e96c = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_e9e96c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_e9e96c
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_e9e96c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_e9e96c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_e9e96c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_e9e96c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e9fe54.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e9fe54.wgsl.expected.spvasm
index 469d0dd..ac10439 100644
--- a/test/intrinsics/gen/textureDimensions/e9fe54.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e9fe54.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e9fe54 "textureDimensions_e9fe54"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e9fe54 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v2int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_e9fe54
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_e9fe54
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_e9fe54
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_e9fe54
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_e9fe54
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_e9fe54
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/e9fe58.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/e9fe58.wgsl.expected.spvasm
index 6058fa6..e8f098b 100644
--- a/test/intrinsics/gen/textureDimensions/e9fe58.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/e9fe58.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_e9fe58 "textureDimensions_e9fe58"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_e9fe58 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_e9fe58
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_e9fe58
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_e9fe58
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_e9fe58
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_e9fe58
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_e9fe58
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/ef5b89.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/ef5b89.wgsl.expected.spvasm
index 7a808a9..2cb1a7f 100644
--- a/test/intrinsics/gen/textureDimensions/ef5b89.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/ef5b89.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_ef5b89 "textureDimensions_ef5b89"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_ef5b89 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_ef5b89
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_ef5b89
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_ef5b89
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_ef5b89
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_ef5b89
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_ef5b89
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/efc8a4.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/efc8a4.wgsl.expected.spvasm
index bf8e0dc..c249a24 100644
--- a/test/intrinsics/gen/textureDimensions/efc8a4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/efc8a4.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_efc8a4 "textureDimensions_efc8a4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%int_0 = OpConstant %int 0
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_efc8a4 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v3int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_efc8a4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_efc8a4
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_efc8a4
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_efc8a4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_efc8a4
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_efc8a4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f1b72b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f1b72b.wgsl.expected.spvasm
index 1d87771..e02181c 100644
--- a/test/intrinsics/gen/textureDimensions/f1b72b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f1b72b.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f1b72b "textureDimensions_f1b72b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f1b72b = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_f1b72b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_f1b72b
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_f1b72b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_f1b72b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_f1b72b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_f1b72b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f60bdb.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
index c29deb3..ad4b6aa 100644
--- a/test/intrinsics/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f60bdb.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f60bdb "textureDimensions_f60bdb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f60bdb = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_f60bdb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_f60bdb
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_f60bdb
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_f60bdb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_f60bdb
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_f60bdb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f7145b.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f7145b.wgsl.expected.spvasm
index 7ef3114..7a5a016 100644
--- a/test/intrinsics/gen/textureDimensions/f7145b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f7145b.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f7145b "textureDimensions_f7145b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f7145b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %20 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_f7145b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_f7145b
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_f7145b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_f7145b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_f7145b
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_f7145b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f7aa9e.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f7aa9e.wgsl.expected.spvasm
index 19ff511..83a9263 100644
--- a/test/intrinsics/gen/textureDimensions/f7aa9e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f7aa9e.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f7aa9e "textureDimensions_f7aa9e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f7aa9e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_f7aa9e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_f7aa9e
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_f7aa9e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_f7aa9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_f7aa9e
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_f7aa9e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f7e436.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f7e436.wgsl.expected.spvasm
index e6cc284..d567410 100644
--- a/test/intrinsics/gen/textureDimensions/f7e436.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f7e436.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f7e436 "textureDimensions_f7e436"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%25 = OpConstantNull %v2int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f7e436 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %25
- %22 = OpLoad %7 %arg_0
+ %22 = OpLoad %11 %arg_0
%20 = OpImageQuerySize %v3int %22
%17 = OpVectorShuffle %v2int %20 %20 0 1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureDimensions_f7e436
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureDimensions_f7e436
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_f7e436
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_f7e436
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureDimensions_f7e436
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureDimensions_f7e436
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/f931c7.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/f931c7.wgsl.expected.spvasm
index e1e3209..2375b4d 100644
--- a/test/intrinsics/gen/textureDimensions/f931c7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/f931c7.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_f931c7 "textureDimensions_f931c7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_f931c7 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_f931c7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_f931c7
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_f931c7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_f931c7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_f931c7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_f931c7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/fa90e1.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/fa90e1.wgsl.expected.spvasm
index c997daa..76b12de 100644
--- a/test/intrinsics/gen/textureDimensions/fa90e1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/fa90e1.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_fa90e1 "textureDimensions_fa90e1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
%22 = OpConstantNull %v2int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_fa90e1 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%16 = OpImageQuerySize %v2int %19
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureDimensions_fa90e1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureDimensions_fa90e1
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureDimensions_fa90e1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureDimensions_fa90e1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureDimensions_fa90e1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureDimensions_fa90e1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/fa9859.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/fa9859.wgsl.expected.spvasm
index 231e68a..769c44e 100644
--- a/test/intrinsics/gen/textureDimensions/fa9859.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/fa9859.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_fa9859 "textureDimensions_fa9859"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%int_0 = OpConstant %int 0
%_ptr_Function_v2int = OpTypePointer Function %v2int
%23 = OpConstantNull %v2int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_fa9859 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySizeLod %v2int %19 %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_fa9859
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_fa9859
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_fa9859
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_fa9859
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_fa9859
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_fa9859
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/fb5670.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/fb5670.wgsl.expected.spvasm
index 79530cb..c870194 100644
--- a/test/intrinsics/gen/textureDimensions/fb5670.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/fb5670.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_fb5670 "textureDimensions_fb5670"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%v3int = OpTypeVector %int 3
%_ptr_Function_v2int = OpTypePointer Function %v2int
%24 = OpConstantNull %v2int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_fb5670 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%16 = OpVectorShuffle %v2int %19 %19 0 1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureDimensions_fb5670
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureDimensions_fb5670
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureDimensions_fb5670
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureDimensions_fb5670
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureDimensions_fb5670
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureDimensions_fb5670
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/fbbe4d.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/fbbe4d.wgsl.expected.spvasm
index 6333e2c..b6f35d1 100644
--- a/test/intrinsics/gen/textureDimensions/fbbe4d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/fbbe4d.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_fbbe4d "textureDimensions_fbbe4d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_fbbe4d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_fbbe4d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_fbbe4d
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_fbbe4d
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_fbbe4d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_fbbe4d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_fbbe4d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureDimensions/fcac78.wgsl.expected.spvasm b/test/intrinsics/gen/textureDimensions/fcac78.wgsl.expected.spvasm
index bc049db..2b1c5c3 100644
--- a/test/intrinsics/gen/textureDimensions/fcac78.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureDimensions/fcac78.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureDimensions_fcac78 "textureDimensions_fcac78"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_v3int = OpTypePointer Function %v3int
%23 = OpConstantNull %v3int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureDimensions_fcac78 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%17 = OpImageQuerySize %v3int %20
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureDimensions_fcac78
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureDimensions_fcac78
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureDimensions_fcac78
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureDimensions_fcac78
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureDimensions_fcac78
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureDimensions_fcac78
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/050c33.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/050c33.wgsl.expected.spvasm
index 45ce9dc..b07a3c5 100644
--- a/test/intrinsics/gen/textureLoad/050c33.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/050c33.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_050c33 "textureLoad_050c33"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -50,36 +49,35 @@
%22 = OpConstantNull %v2int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_050c33 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_050c33
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_050c33
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_050c33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_050c33
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_050c33
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_050c33
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/072e26.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/072e26.wgsl.expected.spvasm
index 85a08cb..baf53a4 100644
--- a/test/intrinsics/gen/textureLoad/072e26.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/072e26.wgsl.expected.spvasm
@@ -5,41 +5,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_072e26 "textureLoad_072e26"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,36 +47,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_072e26 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_072e26
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_072e26
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_072e26
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_072e26
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_072e26
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_072e26
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/078bc4.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/078bc4.wgsl.expected.spvasm
index afd6392..06825de 100644
--- a/test/intrinsics/gen/textureLoad/078bc4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/078bc4.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_078bc4 "textureLoad_078bc4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_078bc4 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_078bc4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_078bc4
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_078bc4
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_078bc4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_078bc4
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_078bc4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/127e12.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/127e12.wgsl.expected.spvasm
index 0242452..2e74406 100644
--- a/test/intrinsics/gen/textureLoad/127e12.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/127e12.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_127e12 "textureLoad_127e12"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -51,36 +50,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_127e12 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %24
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_127e12
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_127e12
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_127e12
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_127e12
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_127e12
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_127e12
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/1561a7.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/1561a7.wgsl.expected.spvasm
index 9b93b88..f2908b8 100644
--- a/test/intrinsics/gen/textureLoad/1561a7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/1561a7.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_1561a7 "textureLoad_1561a7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%24 = OpConstantNull %v4uint
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_1561a7 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_1561a7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_1561a7
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_1561a7
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_1561a7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_1561a7
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_1561a7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/19cf87.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/19cf87.wgsl.expected.spvasm
index 697f575..5a0ea57 100644
--- a/test/intrinsics/gen/textureLoad/19cf87.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/19cf87.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_19cf87 "textureLoad_19cf87"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,37 +41,36 @@
%21 = OpConstantNull %v2int
%int_0 = OpConstant %int 0
%_ptr_Function_float = OpTypePointer Function %float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_19cf87 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %18 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %18 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4float %18 %21 Lod %int_0
%16 = OpCompositeExtract %float %17 0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_19cf87
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_19cf87
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_19cf87
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_19cf87
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_19cf87
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_19cf87
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/1a062f.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/1a062f.wgsl.expected.spvasm
index 902f34a..e86a28f 100644
--- a/test/intrinsics/gen/textureLoad/1a062f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/1a062f.wgsl.expected.spvasm
@@ -5,41 +5,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_1a062f "textureLoad_1a062f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,36 +47,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_1a062f = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_1a062f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_1a062f
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_1a062f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_1a062f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_1a062f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_1a062f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/1a8452.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/1a8452.wgsl.expected.spvasm
index 5eeb305..11b914f 100644
--- a/test/intrinsics/gen/textureLoad/1a8452.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/1a8452.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_1a8452 "textureLoad_1a8452"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%24 = OpConstantNull %v4uint
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_1a8452 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_1a8452
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_1a8452
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_1a8452
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_1a8452
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_1a8452
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_1a8452
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/1b8588.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/1b8588.wgsl.expected.spvasm
index 8a5913e..21b4c1e 100644
--- a/test/intrinsics/gen/textureLoad/1b8588.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/1b8588.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_1b8588 "textureLoad_1b8588"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -45,36 +44,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_1b8588 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4uint %19 %int_1 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_1b8588
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_1b8588
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_1b8588
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_1b8588
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_1b8588
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_1b8588
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/1f2016.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/1f2016.wgsl.expected.spvasm
index be992fd..15ceefa 100644
--- a/test/intrinsics/gen/textureLoad/1f2016.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/1f2016.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_1f2016 "textureLoad_1f2016"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%20 = OpConstantNull %v3int
%int_0 = OpConstant %int 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_1f2016 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %20 Lod %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_1f2016
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_1f2016
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_1f2016
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_1f2016
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_1f2016
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_1f2016
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/20fa2f.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/20fa2f.wgsl.expected.spvasm
index 772f7b8..43dd765 100644
--- a/test/intrinsics/gen/textureLoad/20fa2f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/20fa2f.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_20fa2f "textureLoad_20fa2f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -49,36 +48,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_20fa2f = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_20fa2f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_20fa2f
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_20fa2f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_20fa2f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_20fa2f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_20fa2f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/276a2c.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/276a2c.wgsl.expected.spvasm
index 11c05ae..6217b54 100644
--- a/test/intrinsics/gen/textureLoad/276a2c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/276a2c.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_276a2c "textureLoad_276a2c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%24 = OpConstantNull %v4uint
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_276a2c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_276a2c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_276a2c
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_276a2c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_276a2c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_276a2c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_276a2c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/2887d7.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/2887d7.wgsl.expected.spvasm
index 04ea5bf..b606ca1 100644
--- a/test/intrinsics/gen/textureLoad/2887d7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/2887d7.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_2887d7 "textureLoad_2887d7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_2887d7 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_2887d7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_2887d7
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_2887d7
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_2887d7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_2887d7
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_2887d7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/2ae485.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/2ae485.wgsl.expected.spvasm
index 3f09134..b87c6ed 100644
--- a/test/intrinsics/gen/textureLoad/2ae485.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/2ae485.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_2ae485 "textureLoad_2ae485"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v2int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_2ae485 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_2ae485
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_2ae485
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_2ae485
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_2ae485
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_2ae485
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_2ae485
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/2d6cf7.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/2d6cf7.wgsl.expected.spvasm
index a19078f..bb1b566 100644
--- a/test/intrinsics/gen/textureLoad/2d6cf7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/2d6cf7.wgsl.expected.spvasm
@@ -5,80 +5,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_2d6cf7 "textureLoad_2d6cf7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%23 = OpConstantNull %v4int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_2d6cf7 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_2d6cf7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_2d6cf7
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_2d6cf7
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_2d6cf7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_2d6cf7
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_2d6cf7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/3c0d9e.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/3c0d9e.wgsl.expected.spvasm
index 1df16bd..9788afc 100644
--- a/test/intrinsics/gen/textureLoad/3c0d9e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/3c0d9e.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_3c0d9e "textureLoad_3c0d9e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v2int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_3c0d9e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_3c0d9e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_3c0d9e
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_3c0d9e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_3c0d9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_3c0d9e
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_3c0d9e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/3c9587.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/3c9587.wgsl.expected.spvasm
index 3bd9235..646e403 100644
--- a/test/intrinsics/gen/textureLoad/3c9587.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/3c9587.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_3c9587 "textureLoad_3c9587"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_3c9587 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_3c9587
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_3c9587
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_3c9587
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_3c9587
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_3c9587
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_3c9587
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/3d001b.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/3d001b.wgsl.expected.spvasm
index 7fae168..e8bc1b2 100644
--- a/test/intrinsics/gen/textureLoad/3d001b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/3d001b.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_3d001b "textureLoad_3d001b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v3int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_3d001b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_3d001b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_3d001b
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_3d001b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_3d001b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_3d001b
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_3d001b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/3d9c90.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/3d9c90.wgsl.expected.spvasm
index c5182bb..daaf0e4 100644
--- a/test/intrinsics/gen/textureLoad/3d9c90.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/3d9c90.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_3d9c90 "textureLoad_3d9c90"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_3d9c90 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_3d9c90
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_3d9c90
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_3d9c90
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_3d9c90
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_3d9c90
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_3d9c90
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/484344.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/484344.wgsl.expected.spvasm
index a45d27d..5bf4201 100644
--- a/test/intrinsics/gen/textureLoad/484344.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/484344.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_484344 "textureLoad_484344"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%20 = OpConstantNull %v2int
%int_0 = OpConstant %int 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_484344 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %20 Lod %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_484344
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_484344
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_484344
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_484344
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_484344
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_484344
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/4fd803.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/4fd803.wgsl.expected.spvasm
index 8c4a2be..dae2d0c 100644
--- a/test/intrinsics/gen/textureLoad/4fd803.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/4fd803.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_4fd803 "textureLoad_4fd803"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4int = OpTypePointer Function %v4int
%25 = OpConstantNull %v4int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_4fd803 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4int %19 %21 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_4fd803
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_4fd803
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_4fd803
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_4fd803
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_4fd803
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_4fd803
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/505aa2.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/505aa2.wgsl.expected.spvasm
index a61a915..df71fff 100644
--- a/test/intrinsics/gen/textureLoad/505aa2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/505aa2.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_505aa2 "textureLoad_505aa2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v3int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_505aa2 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_505aa2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_505aa2
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_505aa2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_505aa2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_505aa2
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_505aa2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/519ab5.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/519ab5.wgsl.expected.spvasm
index 4545989..71ec10d 100644
--- a/test/intrinsics/gen/textureLoad/519ab5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/519ab5.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_519ab5 "textureLoad_519ab5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_519ab5 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_519ab5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_519ab5
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_519ab5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_519ab5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_519ab5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_519ab5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/53378a.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/53378a.wgsl.expected.spvasm
index 93e235c..116f265 100644
--- a/test/intrinsics/gen/textureLoad/53378a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/53378a.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_53378a "textureLoad_53378a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -49,36 +48,35 @@
%21 = OpConstantNull %v2int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_53378a = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_53378a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_53378a
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_53378a
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_53378a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_53378a
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_53378a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/560573.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/560573.wgsl.expected.spvasm
index d00f5eb..c0e8c7c 100644
--- a/test/intrinsics/gen/textureLoad/560573.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/560573.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_560573 "textureLoad_560573"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -50,36 +49,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_560573 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %23
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_560573
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_560573
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_560573
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_560573
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_560573
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_560573
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/582015.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/582015.wgsl.expected.spvasm
index 8360485..f3536ae 100644
--- a/test/intrinsics/gen/textureLoad/582015.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/582015.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_582015 "textureLoad_582015"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -50,36 +49,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_582015 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %23
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_582015
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_582015
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_582015
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_582015
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_582015
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_582015
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/5a2f9d.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/5a2f9d.wgsl.expected.spvasm
index 43422f0..3388593 100644
--- a/test/intrinsics/gen/textureLoad/5a2f9d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/5a2f9d.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_5a2f9d "textureLoad_5a2f9d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_5a2f9d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4int %19 %int_1 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_5a2f9d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_5a2f9d
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_5a2f9d
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_5a2f9d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_5a2f9d
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_5a2f9d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/5bb7fb.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/5bb7fb.wgsl.expected.spvasm
index b2f2223..f6c5b95 100644
--- a/test/intrinsics/gen/textureLoad/5bb7fb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/5bb7fb.wgsl.expected.spvasm
@@ -5,44 +5,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_5bb7fb "textureLoad_5bb7fb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -50,36 +49,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%24 = OpConstantNull %v4uint
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_5bb7fb = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_5bb7fb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_5bb7fb
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_5bb7fb
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_5bb7fb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_5bb7fb
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_5bb7fb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/5d0a2f.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/5d0a2f.wgsl.expected.spvasm
index 177e51c..52772ea 100644
--- a/test/intrinsics/gen/textureLoad/5d0a2f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/5d0a2f.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_5d0a2f "textureLoad_5d0a2f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -51,36 +50,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_5d0a2f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %24
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_5d0a2f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_5d0a2f
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_5d0a2f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_5d0a2f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_5d0a2f
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_5d0a2f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/6154d4.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/6154d4.wgsl.expected.spvasm
index 6a4c040..579e1d9 100644
--- a/test/intrinsics/gen/textureLoad/6154d4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/6154d4.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_6154d4 "textureLoad_6154d4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -45,36 +44,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%26 = OpConstantNull %v4uint
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_6154d4 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4uint %19 %22 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_6154d4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_6154d4
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_6154d4
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_6154d4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_6154d4
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_6154d4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/6273b1.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/6273b1.wgsl.expected.spvasm
index f4cf793..2f1ffc5 100644
--- a/test/intrinsics/gen/textureLoad/6273b1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/6273b1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_6273b1 "textureLoad_6273b1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,37 +41,36 @@
%21 = OpConstantNull %v2int
%int_1 = OpConstant %int 1
%_ptr_Function_float = OpTypePointer Function %float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_6273b1 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %18 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %18 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4float %18 %21 Sample %int_1
%16 = OpCompositeExtract %float %17 0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_6273b1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_6273b1
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_6273b1
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_6273b1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_6273b1
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_6273b1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/62d125.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/62d125.wgsl.expected.spvasm
index f800ee1..55f6bd7 100644
--- a/test/intrinsics/gen/textureLoad/62d125.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/62d125.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_62d125 "textureLoad_62d125"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_62d125 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_62d125
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_62d125
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_62d125
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_62d125
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_62d125
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_62d125
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/6678b6.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/6678b6.wgsl.expected.spvasm
index 5a71d61..fee02ec 100644
--- a/test/intrinsics/gen/textureLoad/6678b6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/6678b6.wgsl.expected.spvasm
@@ -5,79 +5,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_6678b6 "textureLoad_6678b6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%23 = OpConstantNull %v4int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_6678b6 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_6678b6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_6678b6
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_6678b6
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_6678b6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_6678b6
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_6678b6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/67edca.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/67edca.wgsl.expected.spvasm
index 690a187..338c91b 100644
--- a/test/intrinsics/gen/textureLoad/67edca.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/67edca.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_67edca "textureLoad_67edca"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v3int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_67edca = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_67edca
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_67edca
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_67edca
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_67edca
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_67edca
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_67edca
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/749704.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/749704.wgsl.expected.spvasm
index 4cdb843..40218e3 100644
--- a/test/intrinsics/gen/textureLoad/749704.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/749704.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_749704 "textureLoad_749704"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v2int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_749704 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_749704
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_749704
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_749704
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_749704
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_749704
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_749704
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/79e697.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/79e697.wgsl.expected.spvasm
index b4135d9..9ea6971 100644
--- a/test/intrinsics/gen/textureLoad/79e697.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/79e697.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_79e697 "textureLoad_79e697"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -45,36 +44,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_79e697 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4int %19 %23 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_79e697
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_79e697
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_79e697
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_79e697
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_79e697
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_79e697
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/7c90e5.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/7c90e5.wgsl.expected.spvasm
index 2180701..72245ac 100644
--- a/test/intrinsics/gen/textureLoad/7c90e5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/7c90e5.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_7c90e5 "textureLoad_7c90e5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -46,36 +45,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_7c90e5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4uint %19 %24 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_7c90e5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_7c90e5
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_7c90e5
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_7c90e5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_7c90e5
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_7c90e5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/81c381.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/81c381.wgsl.expected.spvasm
index dea096f..87aa1c5 100644
--- a/test/intrinsics/gen/textureLoad/81c381.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/81c381.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_81c381 "textureLoad_81c381"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%int_0 = OpConstant %int 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_81c381 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %int_1 Lod %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_81c381
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_81c381
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_81c381
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_81c381
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_81c381
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_81c381
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/83cea4.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/83cea4.wgsl.expected.spvasm
index 7202492..9e8e53d 100644
--- a/test/intrinsics/gen/textureLoad/83cea4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/83cea4.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_83cea4 "textureLoad_83cea4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%24 = OpConstantNull %v4uint
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_83cea4 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_83cea4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_83cea4
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_83cea4
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_83cea4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_83cea4
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_83cea4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/87be85.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/87be85.wgsl.expected.spvasm
index 44ae488..c8c2895 100644
--- a/test/intrinsics/gen/textureLoad/87be85.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/87be85.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_87be85 "textureLoad_87be85"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,36 +42,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_87be85 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %22 Lod %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_87be85
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_87be85
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_87be85
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_87be85
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_87be85
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_87be85
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/8acf41.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/8acf41.wgsl.expected.spvasm
index 7f64a6b..17ac507 100644
--- a/test/intrinsics/gen/textureLoad/8acf41.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/8acf41.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_8acf41 "textureLoad_8acf41"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%20 = OpConstantNull %v2int
%int_0 = OpConstant %int 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_8acf41 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %20 Lod %int_0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_8acf41
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_8acf41
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_8acf41
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_8acf41
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_8acf41
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_8acf41
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/8e5032.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/8e5032.wgsl.expected.spvasm
index 285526b..4f6a5fc 100644
--- a/test/intrinsics/gen/textureLoad/8e5032.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/8e5032.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_8e5032 "textureLoad_8e5032"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -52,36 +51,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_8e5032 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %24
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_8e5032
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_8e5032
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_8e5032
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_8e5032
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_8e5032
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_8e5032
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/936952.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/936952.wgsl.expected.spvasm
index 4e89cf9..befa7f0 100644
--- a/test/intrinsics/gen/textureLoad/936952.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/936952.wgsl.expected.spvasm
@@ -5,41 +5,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_936952 "textureLoad_936952"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,36 +47,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_936952 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_936952
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_936952
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_936952
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_936952
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_936952
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_936952
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/9a7c90.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/9a7c90.wgsl.expected.spvasm
index b6f4c89..c3f2586 100644
--- a/test/intrinsics/gen/textureLoad/9a7c90.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/9a7c90.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_9a7c90 "textureLoad_9a7c90"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v3int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_9a7c90 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_9a7c90
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_9a7c90
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_9a7c90
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_9a7c90
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_9a7c90
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_9a7c90
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/9b2667.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/9b2667.wgsl.expected.spvasm
index 207c92d..76e06b1 100644
--- a/test/intrinsics/gen/textureLoad/9b2667.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/9b2667.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_9b2667 "textureLoad_9b2667"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,37 +42,36 @@
%int_1 = OpConstant %int 1
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_float = OpTypePointer Function %float
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_9b2667 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %18 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %18 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4float %18 %23 Lod %int_0
%16 = OpCompositeExtract %float %17 0
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_9b2667
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_9b2667
- %34 = OpFunctionCall %void %tint_symbol_2 %11
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_9b2667
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_9b2667
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_9b2667
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_9b2667
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/9c2a14.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/9c2a14.wgsl.expected.spvasm
index cf619f0..edb9c69 100644
--- a/test/intrinsics/gen/textureLoad/9c2a14.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/9c2a14.wgsl.expected.spvasm
@@ -5,78 +5,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_9c2a14 "textureLoad_9c2a14"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_9c2a14 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_9c2a14
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_9c2a14
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_9c2a14
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_9c2a14
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_9c2a14
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_9c2a14
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/a583c9.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/a583c9.wgsl.expected.spvasm
index 4bdec9c..92defe1 100644
--- a/test/intrinsics/gen/textureLoad/a583c9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/a583c9.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_a583c9 "textureLoad_a583c9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,36 +41,35 @@
%20 = OpConstantNull %v2int
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_a583c9 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageFetch %v4float %17 %20 Sample %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_a583c9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_a583c9
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_a583c9
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_a583c9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_a583c9
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_a583c9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/a6a85a.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/a6a85a.wgsl.expected.spvasm
index 3f3eca2..7b72c44 100644
--- a/test/intrinsics/gen/textureLoad/a6a85a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/a6a85a.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_a6a85a "textureLoad_a6a85a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_a6a85a = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_a6a85a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_a6a85a
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_a6a85a
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_a6a85a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_a6a85a
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_a6a85a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/a6b61d.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/a6b61d.wgsl.expected.spvasm
index 3da44f4..f8bea3f 100644
--- a/test/intrinsics/gen/textureLoad/a6b61d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/a6b61d.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_a6b61d "textureLoad_a6b61d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -50,36 +49,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_a6b61d = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %23
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_a6b61d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_a6b61d
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_a6b61d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_a6b61d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_a6b61d
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_a6b61d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/a7a3c3.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/a7a3c3.wgsl.expected.spvasm
index 0dc63d7..bca5554 100644
--- a/test/intrinsics/gen/textureLoad/a7a3c3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/a7a3c3.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_a7a3c3 "textureLoad_a7a3c3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v3int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_a7a3c3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_a7a3c3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_a7a3c3
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_a7a3c3
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_a7a3c3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_a7a3c3
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_a7a3c3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/a9a9f5.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/a9a9f5.wgsl.expected.spvasm
index 2d57095..f9c5c1f 100644
--- a/test/intrinsics/gen/textureLoad/a9a9f5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/a9a9f5.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_a9a9f5 "textureLoad_a9a9f5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -45,36 +44,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%26 = OpConstantNull %v4uint
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_a9a9f5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4uint %19 %22 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_a9a9f5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_a9a9f5
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_a9a9f5
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_a9a9f5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_a9a9f5
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_a9a9f5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/b1bf79.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/b1bf79.wgsl.expected.spvasm
index 83d4c16..dbac120 100644
--- a/test/intrinsics/gen/textureLoad/b1bf79.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/b1bf79.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_b1bf79 "textureLoad_b1bf79"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v3int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_b1bf79 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_b1bf79
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_b1bf79
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_b1bf79
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_b1bf79
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_b1bf79
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_b1bf79
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/b58c6d.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/b58c6d.wgsl.expected.spvasm
index 95115b8..b6cad38 100644
--- a/test/intrinsics/gen/textureLoad/b58c6d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/b58c6d.wgsl.expected.spvasm
@@ -5,41 +5,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_b58c6d "textureLoad_b58c6d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,36 +47,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_b58c6d = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_b58c6d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_b58c6d
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_b58c6d
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_b58c6d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_b58c6d
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_b58c6d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/b6c458.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/b6c458.wgsl.expected.spvasm
index f4e13f4..93350a9 100644
--- a/test/intrinsics/gen/textureLoad/b6c458.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/b6c458.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_b6c458 "textureLoad_b6c458"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v2int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_b6c458 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_b6c458
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_b6c458
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_b6c458
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_b6c458
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_b6c458
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_b6c458
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/bfd154.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/bfd154.wgsl.expected.spvasm
index 2f7aa34..2bd1310 100644
--- a/test/intrinsics/gen/textureLoad/bfd154.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/bfd154.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_bfd154 "textureLoad_bfd154"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v3int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_bfd154 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_bfd154
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_bfd154
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_bfd154
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_bfd154
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_bfd154
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_bfd154
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c02b74.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c02b74.wgsl.expected.spvasm
index 069c66d..6394655 100644
--- a/test/intrinsics/gen/textureLoad/c02b74.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c02b74.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c02b74 "textureLoad_c02b74"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c02b74 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_c02b74
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_c02b74
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_c02b74
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_c02b74
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_c02b74
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_c02b74
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c07013.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c07013.wgsl.expected.spvasm
index 7b7b6e9..b21a921 100644
--- a/test/intrinsics/gen/textureLoad/c07013.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c07013.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c07013 "textureLoad_c07013"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c07013 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_c07013
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_c07013
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_c07013
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_c07013
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_c07013
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_c07013
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c2a480.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c2a480.wgsl.expected.spvasm
index 628a152..2a12e21 100644
--- a/test/intrinsics/gen/textureLoad/c2a480.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c2a480.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c2a480 "textureLoad_c2a480"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -44,36 +43,35 @@
%int_0 = OpConstant %int 0
%_ptr_Function_v4int = OpTypePointer Function %v4int
%25 = OpConstantNull %v4int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c2a480 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4int %19 %21 Lod %int_0
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_c2a480
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_c2a480
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_c2a480
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_c2a480
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_c2a480
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_c2a480
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c378ee.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c378ee.wgsl.expected.spvasm
index ce95a40..7190f78 100644
--- a/test/intrinsics/gen/textureLoad/c378ee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c378ee.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c378ee "textureLoad_c378ee"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -45,36 +44,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%26 = OpConstantNull %v4uint
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c378ee = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4uint %19 %22 Sample %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_c378ee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_c378ee
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_c378ee
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_c378ee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_c378ee
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_c378ee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c40dcb.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c40dcb.wgsl.expected.spvasm
index ec6e891..ab5e2b6 100644
--- a/test/intrinsics/gen/textureLoad/c40dcb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c40dcb.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c40dcb "textureLoad_c40dcb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -51,36 +50,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c40dcb = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %24
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_c40dcb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_c40dcb
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_c40dcb
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_c40dcb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_c40dcb
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_c40dcb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c456bc.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c456bc.wgsl.expected.spvasm
index 7486f32..bbc1ef8 100644
--- a/test/intrinsics/gen/textureLoad/c456bc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c456bc.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c456bc "textureLoad_c456bc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c456bc = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_c456bc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_c456bc
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_c456bc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_c456bc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_c456bc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_c456bc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c7cbed.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c7cbed.wgsl.expected.spvasm
index 1e970b3..94da017 100644
--- a/test/intrinsics/gen/textureLoad/c7cbed.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c7cbed.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c7cbed "textureLoad_c7cbed"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c7cbed = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_c7cbed
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_c7cbed
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_c7cbed
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_c7cbed
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_c7cbed
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_c7cbed
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/c9cc40.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/c9cc40.wgsl.expected.spvasm
index 0787515..ba72b53 100644
--- a/test/intrinsics/gen/textureLoad/c9cc40.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/c9cc40.wgsl.expected.spvasm
@@ -5,79 +5,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_c9cc40 "textureLoad_c9cc40"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%23 = OpConstantNull %v4int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_c9cc40 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_c9cc40
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_c9cc40
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_c9cc40
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_c9cc40
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_c9cc40
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_c9cc40
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/d5c48d.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/d5c48d.wgsl.expected.spvasm
index 880b057..1d73e80 100644
--- a/test/intrinsics/gen/textureLoad/d5c48d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/d5c48d.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_d5c48d "textureLoad_d5c48d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_d5c48d = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_d5c48d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_d5c48d
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_d5c48d
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_d5c48d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_d5c48d
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_d5c48d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/d81c57.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/d81c57.wgsl.expected.spvasm
index 1f1a00f..9e79b75 100644
--- a/test/intrinsics/gen/textureLoad/d81c57.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/d81c57.wgsl.expected.spvasm
@@ -5,78 +5,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_d81c57 "textureLoad_d81c57"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_d81c57 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_d81c57
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_d81c57
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_d81c57
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_d81c57
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_d81c57
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_d81c57
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/d8617f.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/d8617f.wgsl.expected.spvasm
index 3d60188..369b377 100644
--- a/test/intrinsics/gen/textureLoad/d8617f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/d8617f.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_d8617f "textureLoad_d8617f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -51,36 +50,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_d8617f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %23
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_d8617f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_d8617f
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_d8617f
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_d8617f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_d8617f
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_d8617f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/dbd554.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/dbd554.wgsl.expected.spvasm
index c8d8bba..65e1063 100644
--- a/test/intrinsics/gen/textureLoad/dbd554.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/dbd554.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_dbd554 "textureLoad_dbd554"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v2int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_dbd554 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_dbd554
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_dbd554
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_dbd554
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_dbd554
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_dbd554
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_dbd554
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/ddeed3.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/ddeed3.wgsl.expected.spvasm
index ef36b19..f4850be 100644
--- a/test/intrinsics/gen/textureLoad/ddeed3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/ddeed3.wgsl.expected.spvasm
@@ -5,79 +5,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_ddeed3 "textureLoad_ddeed3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%23 = OpConstantNull %v4int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_ddeed3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_ddeed3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_ddeed3
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_ddeed3
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_ddeed3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_ddeed3
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_ddeed3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/dee8e7.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/dee8e7.wgsl.expected.spvasm
index 42cd97c..deb06ca 100644
--- a/test/intrinsics/gen/textureLoad/dee8e7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/dee8e7.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_dee8e7 "textureLoad_dee8e7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v2int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_dee8e7 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_dee8e7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_dee8e7
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_dee8e7
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_dee8e7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_dee8e7
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_dee8e7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/e3d2cc.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/e3d2cc.wgsl.expected.spvasm
index c51e959..87d98ce 100644
--- a/test/intrinsics/gen/textureLoad/e3d2cc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/e3d2cc.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_e3d2cc "textureLoad_e3d2cc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -44,36 +43,35 @@
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%25 = OpConstantNull %v4int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_e3d2cc = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageFetch %v4int %19 %21 Sample %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_e3d2cc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_e3d2cc
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_e3d2cc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_e3d2cc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_e3d2cc
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_e3d2cc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/e65916.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/e65916.wgsl.expected.spvasm
index 094dd56..8fe3311 100644
--- a/test/intrinsics/gen/textureLoad/e65916.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/e65916.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_e65916 "textureLoad_e65916"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -49,36 +48,35 @@
%21 = OpConstantNull %v3int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_e65916 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_e65916
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_e65916
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_e65916
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_e65916
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_e65916
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_e65916
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/e893d7.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/e893d7.wgsl.expected.spvasm
index 373fbaf..15f0608 100644
--- a/test/intrinsics/gen/textureLoad/e893d7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/e893d7.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_e893d7 "textureLoad_e893d7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_e893d7 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_e893d7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_e893d7
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_e893d7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_e893d7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_e893d7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_e893d7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/eb573b.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/eb573b.wgsl.expected.spvasm
index 7aae5f4..788f96a 100644
--- a/test/intrinsics/gen/textureLoad/eb573b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/eb573b.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_eb573b "textureLoad_eb573b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -48,36 +47,35 @@
%21 = OpConstantNull %v2int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_eb573b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %24
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %21
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_eb573b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_eb573b
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_eb573b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_eb573b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_eb573b
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_eb573b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/ecc823.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/ecc823.wgsl.expected.spvasm
index 5ef0e6f..8ca180a 100644
--- a/test/intrinsics/gen/textureLoad/ecc823.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/ecc823.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_ecc823 "textureLoad_ecc823"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v2int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_ecc823 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_ecc823
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_ecc823
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_ecc823
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_ecc823
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_ecc823
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_ecc823
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/ef5405.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/ef5405.wgsl.expected.spvasm
index 85e01b9..fab31d8 100644
--- a/test/intrinsics/gen/textureLoad/ef5405.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/ef5405.wgsl.expected.spvasm
@@ -5,43 +5,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_ef5405 "textureLoad_ef5405"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -50,36 +49,35 @@
%22 = OpConstantNull %v3int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_ef5405 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_ef5405
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_ef5405
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_ef5405
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_ef5405
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_ef5405
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_ef5405
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/f06b69.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/f06b69.wgsl.expected.spvasm
index 4db4ec7..8727b36 100644
--- a/test/intrinsics/gen/textureLoad/f06b69.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/f06b69.wgsl.expected.spvasm
@@ -5,79 +5,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_f06b69 "textureLoad_f06b69"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
%int_1 = OpConstant %int 1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%23 = OpConstantNull %v4int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_f06b69 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %23
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %int_1
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureLoad_f06b69
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureLoad_f06b69
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureLoad_f06b69
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureLoad_f06b69
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_f06b69
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_f06b69
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/f379e2.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/f379e2.wgsl.expected.spvasm
index 207adf5..34ed2d0 100644
--- a/test/intrinsics/gen/textureLoad/f379e2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/f379e2.wgsl.expected.spvasm
@@ -5,41 +5,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_f379e2 "textureLoad_f379e2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,36 +47,35 @@
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_f379e2 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %22
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureLoad_f379e2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureLoad_f379e2
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_f379e2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_f379e2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_f379e2
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_f379e2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/f56e6f.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/f56e6f.wgsl.expected.spvasm
index 680300b..b799f3d 100644
--- a/test/intrinsics/gen/textureLoad/f56e6f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/f56e6f.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_f56e6f "textureLoad_f56e6f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -49,36 +48,35 @@
%22 = OpConstantNull %v3int
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_f56e6f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %25
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %22
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureLoad_f56e6f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureLoad_f56e6f
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_f56e6f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_f56e6f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureLoad_f56e6f
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureLoad_f56e6f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/f74bd8.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/f74bd8.wgsl.expected.spvasm
index a891057..ccd5ab3 100644
--- a/test/intrinsics/gen/textureLoad/f74bd8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/f74bd8.wgsl.expected.spvasm
@@ -5,78 +5,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_f74bd8 "textureLoad_f74bd8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_f74bd8 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_f74bd8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_f74bd8
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_f74bd8
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_f74bd8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_f74bd8
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_f74bd8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/fc6d36.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/fc6d36.wgsl.expected.spvasm
index 5b72227..ddd0b08 100644
--- a/test/intrinsics/gen/textureLoad/fc6d36.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/fc6d36.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_fc6d36 "textureLoad_fc6d36"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4int = OpTypeVector %int 4
@@ -50,36 +49,35 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4int = OpTypePointer Function %v4int
%26 = OpConstantNull %v4int
- %27 = OpTypeFunction %void %v4float
+ %27 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_fc6d36 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %26
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4int %19 %23
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %v4float
- %30 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %27
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureLoad_fc6d36
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %textureLoad_fc6d36
- %35 = OpFunctionCall %void %tint_symbol_2 %12
+ %33 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureLoad_fc6d36
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureLoad_fc6d36
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %40 = OpLabel
- %41 = OpFunctionCall %void %textureLoad_fc6d36
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureLoad_fc6d36
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/fdebd0.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/fdebd0.wgsl.expected.spvasm
index 011f663..ec95e85 100644
--- a/test/intrinsics/gen/textureLoad/fdebd0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/fdebd0.wgsl.expected.spvasm
@@ -5,42 +5,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_fdebd0 "textureLoad_fdebd0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v4uint = OpTypeVector %uint 4
@@ -51,36 +50,35 @@
%24 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%27 = OpConstantNull %v4uint
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_fdebd0 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %27
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageRead %v4uint %19 %24
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureLoad_fdebd0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureLoad_fdebd0
- %36 = OpFunctionCall %void %tint_symbol_2 %12
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureLoad_fdebd0
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureLoad_fdebd0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureLoad_fdebd0
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureLoad_fdebd0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/fe222a.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/fe222a.wgsl.expected.spvasm
index 3a69455..87daa2f 100644
--- a/test/intrinsics/gen/textureLoad/fe222a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/fe222a.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_fe222a "textureLoad_fe222a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_fe222a = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %int_1
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureLoad_fe222a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureLoad_fe222a
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureLoad_fe222a
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureLoad_fe222a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureLoad_fe222a
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureLoad_fe222a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureLoad/feab99.wgsl.expected.spvasm b/test/intrinsics/gen/textureLoad/feab99.wgsl.expected.spvasm
index 9461a3f..618321d 100644
--- a/test/intrinsics/gen/textureLoad/feab99.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureLoad/feab99.wgsl.expected.spvasm
@@ -5,77 +5,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureLoad_feab99 "textureLoad_feab99"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureLoad_feab99 = OpFunction %void None %12
%15 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %11
- %17 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %17 = OpLoad %11 %arg_0
%16 = OpImageRead %v4float %17 %20
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureLoad_feab99
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureLoad_feab99
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureLoad_feab99
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureLoad_feab99
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureLoad_feab99
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureLoad_feab99
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/024820.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/024820.wgsl.expected.spvasm
index 45ba7e6..5c65a19 100644
--- a/test/intrinsics/gen/textureNumLayers/024820.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/024820.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_024820 "textureNumLayers_024820"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,37 +42,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_024820 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_024820
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_024820
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_024820
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_024820
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_024820
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_024820
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/053df7.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/053df7.wgsl.expected.spvasm
index 9dcf75f..a8336ca 100644
--- a/test/intrinsics/gen/textureNumLayers/053df7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/053df7.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_053df7 "textureNumLayers_053df7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,37 +44,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%25 = OpConstantNull %int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_053df7 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureNumLayers_053df7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureNumLayers_053df7
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLayers_053df7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLayers_053df7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureNumLayers_053df7
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureNumLayers_053df7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/058cc3.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/058cc3.wgsl.expected.spvasm
index c6295ab..4737d7e 100644
--- a/test/intrinsics/gen/textureNumLayers/058cc3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/058cc3.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_058cc3 "textureNumLayers_058cc3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_058cc3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_058cc3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_058cc3
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_058cc3
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_058cc3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_058cc3
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_058cc3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/09d05d.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/09d05d.wgsl.expected.spvasm
index 875a32d..e70fdfc 100644
--- a/test/intrinsics/gen/textureNumLayers/09d05d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/09d05d.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_09d05d "textureNumLayers_09d05d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_09d05d = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_09d05d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_09d05d
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_09d05d
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_09d05d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_09d05d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_09d05d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/13b4ce.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/13b4ce.wgsl.expected.spvasm
index b718fb6..651790d 100644
--- a/test/intrinsics/gen/textureNumLayers/13b4ce.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/13b4ce.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_13b4ce "textureNumLayers_13b4ce"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_13b4ce = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_13b4ce
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_13b4ce
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_13b4ce
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_13b4ce
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_13b4ce
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_13b4ce
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/22e53b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/22e53b.wgsl.expected.spvasm
index 8cb1c31..953a4a4 100644
--- a/test/intrinsics/gen/textureNumLayers/22e53b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/22e53b.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_22e53b "textureNumLayers_22e53b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_22e53b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_22e53b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_22e53b
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_22e53b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_22e53b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_22e53b
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_22e53b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/2f6bb3.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/2f6bb3.wgsl.expected.spvasm
index 397d281..dc0fae5 100644
--- a/test/intrinsics/gen/textureNumLayers/2f6bb3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/2f6bb3.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_2f6bb3 "textureNumLayers_2f6bb3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_2f6bb3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_2f6bb3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_2f6bb3
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_2f6bb3
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_2f6bb3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_2f6bb3
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_2f6bb3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/315298.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/315298.wgsl.expected.spvasm
index 7ec4325..a238b9c 100644
--- a/test/intrinsics/gen/textureNumLayers/315298.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/315298.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_315298 "textureNumLayers_315298"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_315298 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_315298
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_315298
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_315298
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_315298
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_315298
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_315298
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/3615e3.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/3615e3.wgsl.expected.spvasm
index b3125c4..12ea130 100644
--- a/test/intrinsics/gen/textureNumLayers/3615e3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/3615e3.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_3615e3 "textureNumLayers_3615e3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_3615e3 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_3615e3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_3615e3
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_3615e3
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_3615e3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_3615e3
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_3615e3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/390fd5.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/390fd5.wgsl.expected.spvasm
index bbe77b3..01c522c 100644
--- a/test/intrinsics/gen/textureNumLayers/390fd5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/390fd5.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_390fd5 "textureNumLayers_390fd5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_390fd5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_390fd5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_390fd5
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_390fd5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_390fd5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_390fd5
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_390fd5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/45155d.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/45155d.wgsl.expected.spvasm
index 6d2daac..88f53a8 100644
--- a/test/intrinsics/gen/textureNumLayers/45155d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/45155d.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_45155d "textureNumLayers_45155d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_45155d = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_45155d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_45155d
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_45155d
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_45155d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_45155d
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_45155d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/4bf67b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/4bf67b.wgsl.expected.spvasm
index 4ccb269..6805cb6 100644
--- a/test/intrinsics/gen/textureNumLayers/4bf67b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/4bf67b.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_4bf67b "textureNumLayers_4bf67b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_4bf67b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_4bf67b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_4bf67b
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_4bf67b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_4bf67b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_4bf67b
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_4bf67b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/562013.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/562013.wgsl.expected.spvasm
index 4dd95b2..96b0fc2 100644
--- a/test/intrinsics/gen/textureNumLayers/562013.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/562013.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_562013 "textureNumLayers_562013"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_562013 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_562013
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_562013
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_562013
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_562013
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_562013
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_562013
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/57092f.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/57092f.wgsl.expected.spvasm
index 11e5d4a..ac1f09a 100644
--- a/test/intrinsics/gen/textureNumLayers/57092f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/57092f.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_57092f "textureNumLayers_57092f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_57092f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_57092f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_57092f
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_57092f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_57092f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_57092f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_57092f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/5d59cd.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/5d59cd.wgsl.expected.spvasm
index dee75ea..e7f1f9e 100644
--- a/test/intrinsics/gen/textureNumLayers/5d59cd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/5d59cd.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_5d59cd "textureNumLayers_5d59cd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_5d59cd = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_5d59cd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_5d59cd
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_5d59cd
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_5d59cd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_5d59cd
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_5d59cd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/68a65b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/68a65b.wgsl.expected.spvasm
index f31077f..53d6ff2 100644
--- a/test/intrinsics/gen/textureNumLayers/68a65b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/68a65b.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_68a65b "textureNumLayers_68a65b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_68a65b = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_68a65b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_68a65b
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_68a65b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_68a65b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_68a65b
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_68a65b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/778bd1.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
index ab55f07..e34b642 100644
--- a/test/intrinsics/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/778bd1.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_778bd1 "textureNumLayers_778bd1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_778bd1 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_778bd1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_778bd1
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_778bd1
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_778bd1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_778bd1
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_778bd1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/7f1937.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/7f1937.wgsl.expected.spvasm
index 8789a55..59d909d 100644
--- a/test/intrinsics/gen/textureNumLayers/7f1937.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/7f1937.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_7f1937 "textureNumLayers_7f1937"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_7f1937 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_7f1937
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_7f1937
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_7f1937
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_7f1937
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_7f1937
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_7f1937
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/85f980.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/85f980.wgsl.expected.spvasm
index 18ef1fc..4484cad 100644
--- a/test/intrinsics/gen/textureNumLayers/85f980.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/85f980.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_85f980 "textureNumLayers_85f980"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_85f980 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_85f980
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_85f980
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_85f980
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_85f980
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_85f980
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_85f980
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/87953e.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/87953e.wgsl.expected.spvasm
index 053b87c..109f2d0 100644
--- a/test/intrinsics/gen/textureNumLayers/87953e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/87953e.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_87953e "textureNumLayers_87953e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,37 +43,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%25 = OpConstantNull %int
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_87953e = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %25
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySizeLod %v3int %21 %int_0
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureNumLayers_87953e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureNumLayers_87953e
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLayers_87953e
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLayers_87953e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureNumLayers_87953e
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureNumLayers_87953e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/893e7c.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/893e7c.wgsl.expected.spvasm
index 898ee2c..22bfd83 100644
--- a/test/intrinsics/gen/textureNumLayers/893e7c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/893e7c.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_893e7c "textureNumLayers_893e7c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_893e7c = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_893e7c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_893e7c
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_893e7c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_893e7c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_893e7c
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_893e7c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/938763.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/938763.wgsl.expected.spvasm
index 7a8a0ea..93f9c84 100644
--- a/test/intrinsics/gen/textureNumLayers/938763.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/938763.wgsl.expected.spvasm
@@ -1,81 +1,79 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_938763 "textureNumLayers_938763"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_938763 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_938763
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_938763
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_938763
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_938763
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_938763
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_938763
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/9700fb.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/9700fb.wgsl.expected.spvasm
index 24e0ac5..4986494 100644
--- a/test/intrinsics/gen/textureNumLayers/9700fb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/9700fb.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_9700fb "textureNumLayers_9700fb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_9700fb = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_9700fb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_9700fb
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_9700fb
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_9700fb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_9700fb
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_9700fb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/a216d2.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/a216d2.wgsl.expected.spvasm
index 36439d2..2d82417 100644
--- a/test/intrinsics/gen/textureNumLayers/a216d2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/a216d2.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_a216d2 "textureNumLayers_a216d2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_a216d2 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_a216d2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_a216d2
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_a216d2
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_a216d2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_a216d2
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_a216d2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/aa08a7.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/aa08a7.wgsl.expected.spvasm
index e282d0c..8627271 100644
--- a/test/intrinsics/gen/textureNumLayers/aa08a7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/aa08a7.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_aa08a7 "textureNumLayers_aa08a7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_aa08a7 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_aa08a7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_aa08a7
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_aa08a7
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_aa08a7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_aa08a7
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_aa08a7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/ab0c9b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/ab0c9b.wgsl.expected.spvasm
index 296cafd..fdc495a 100644
--- a/test/intrinsics/gen/textureNumLayers/ab0c9b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/ab0c9b.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_ab0c9b "textureNumLayers_ab0c9b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_ab0c9b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_ab0c9b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_ab0c9b
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_ab0c9b
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_ab0c9b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_ab0c9b
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_ab0c9b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/b8cd76.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/b8cd76.wgsl.expected.spvasm
index 553f041..ae8ea64 100644
--- a/test/intrinsics/gen/textureNumLayers/b8cd76.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/b8cd76.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_b8cd76 "textureNumLayers_b8cd76"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_b8cd76 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_b8cd76
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_b8cd76
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_b8cd76
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_b8cd76
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_b8cd76
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_b8cd76
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/be1d70.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/be1d70.wgsl.expected.spvasm
index 591fbc2..361a574 100644
--- a/test/intrinsics/gen/textureNumLayers/be1d70.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/be1d70.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_be1d70 "textureNumLayers_be1d70"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_be1d70 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_be1d70
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_be1d70
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_be1d70
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_be1d70
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_be1d70
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_be1d70
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/be3acb.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/be3acb.wgsl.expected.spvasm
index c3bc5c4..d4a035b 100644
--- a/test/intrinsics/gen/textureNumLayers/be3acb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/be3acb.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_be3acb "textureNumLayers_be3acb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_be3acb = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_be3acb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_be3acb
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_be3acb
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_be3acb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_be3acb
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_be3acb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/c09917.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/c09917.wgsl.expected.spvasm
index 8238315..587be4b 100644
--- a/test/intrinsics/gen/textureNumLayers/c09917.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/c09917.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_c09917 "textureNumLayers_c09917"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_c09917 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_c09917
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_c09917
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_c09917
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_c09917
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_c09917
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_c09917
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/c7c7f2.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/c7c7f2.wgsl.expected.spvasm
index 516bb38..f81ec2d 100644
--- a/test/intrinsics/gen/textureNumLayers/c7c7f2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/c7c7f2.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_c7c7f2 "textureNumLayers_c7c7f2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_c7c7f2 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_c7c7f2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_c7c7f2
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_c7c7f2
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_c7c7f2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_c7c7f2
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_c7c7f2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/cd5dc8.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/cd5dc8.wgsl.expected.spvasm
index e084d97..996f85e 100644
--- a/test/intrinsics/gen/textureNumLayers/cd5dc8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/cd5dc8.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_cd5dc8 "textureNumLayers_cd5dc8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_cd5dc8 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_cd5dc8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_cd5dc8
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_cd5dc8
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_cd5dc8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_cd5dc8
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_cd5dc8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/d5b228.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/d5b228.wgsl.expected.spvasm
index 090fad2..08a45ee 100644
--- a/test/intrinsics/gen/textureNumLayers/d5b228.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/d5b228.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_d5b228 "textureNumLayers_d5b228"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_d5b228 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_d5b228
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_d5b228
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_d5b228
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_d5b228
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_d5b228
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_d5b228
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/e15642.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/e15642.wgsl.expected.spvasm
index 652d1e1..e164ea8 100644
--- a/test/intrinsics/gen/textureNumLayers/e15642.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/e15642.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_e15642 "textureNumLayers_e15642"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonWritable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_e15642 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_e15642
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_e15642
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_e15642
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_e15642
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_e15642
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_e15642
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/e31be1.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/e31be1.wgsl.expected.spvasm
index 5ce6c9f..192aa63 100644
--- a/test/intrinsics/gen/textureNumLayers/e31be1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/e31be1.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_e31be1 "textureNumLayers_e31be1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_e31be1 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_e31be1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_e31be1
- %32 = OpFunctionCall %void %tint_symbol_2 %11
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_e31be1
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_e31be1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_e31be1
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_e31be1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/e653c0.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
index 1502876..8fb0180 100644
--- a/test/intrinsics/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/e653c0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_e653c0 "textureNumLayers_e653c0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,37 +42,36 @@
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_e653c0 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySizeLod %v3int %20 %int_0
%16 = OpCompositeExtract %int %18 2
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_e653c0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_e653c0
- %33 = OpFunctionCall %void %tint_symbol_2 %11
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_e653c0
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_e653c0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_e653c0
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_e653c0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/ee942f.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/ee942f.wgsl.expected.spvasm
index bd63c9d..e0a11d9 100644
--- a/test/intrinsics/gen/textureNumLayers/ee942f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/ee942f.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_ee942f "textureNumLayers_ee942f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_ee942f = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_ee942f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_ee942f
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_ee942f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_ee942f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_ee942f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_ee942f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/f33005.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/f33005.wgsl.expected.spvasm
index 46349d8..a6a6224 100644
--- a/test/intrinsics/gen/textureNumLayers/f33005.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/f33005.wgsl.expected.spvasm
@@ -1,79 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_f33005 "textureNumLayers_f33005"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpConstantNull %int
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_f33005 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %23
- %20 = OpLoad %7 %arg_0
+ %20 = OpLoad %11 %arg_0
%18 = OpImageQuerySize %v3int %20
%17 = OpCompositeExtract %int %18 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureNumLayers_f33005
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureNumLayers_f33005
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureNumLayers_f33005
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureNumLayers_f33005
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureNumLayers_f33005
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureNumLayers_f33005
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/fcec98.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/fcec98.wgsl.expected.spvasm
index cf2b552..b33d57b 100644
--- a/test/intrinsics/gen/textureNumLayers/fcec98.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/fcec98.wgsl.expected.spvasm
@@ -1,81 +1,79 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_fcec98 "textureNumLayers_fcec98"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_fcec98 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_fcec98
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_fcec98
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_fcec98
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_fcec98
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_fcec98
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_fcec98
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLayers/ff5e89.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLayers/ff5e89.wgsl.expected.spvasm
index 8608934..ae6e277 100644
--- a/test/intrinsics/gen/textureNumLayers/ff5e89.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLayers/ff5e89.wgsl.expected.spvasm
@@ -1,80 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLayers_ff5e89 "textureNumLayers_ff5e89"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLayers_ff5e89 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
- %21 = OpLoad %7 %arg_0
+ %21 = OpLoad %11 %arg_0
%19 = OpImageQuerySize %v3int %21
%17 = OpCompositeExtract %int %19 2
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureNumLayers_ff5e89
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureNumLayers_ff5e89
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLayers_ff5e89
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLayers_ff5e89
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureNumLayers_ff5e89
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureNumLayers_ff5e89
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/076cb5.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
index ab98b40..ad5ab93 100644
--- a/test/intrinsics/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/076cb5.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_076cb5 "textureNumLevels_076cb5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_076cb5 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_076cb5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_076cb5
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_076cb5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_076cb5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_076cb5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_076cb5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/080d95.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/080d95.wgsl.expected.spvasm
index 63bb114..bcbd3c7 100644
--- a/test/intrinsics/gen/textureNumLevels/080d95.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/080d95.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_080d95 "textureNumLevels_080d95"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_080d95 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_080d95
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_080d95
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_080d95
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_080d95
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_080d95
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_080d95
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/09ddd0.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/09ddd0.wgsl.expected.spvasm
index 2f369db..13e73f5 100644
--- a/test/intrinsics/gen/textureNumLevels/09ddd0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/09ddd0.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_09ddd0 "textureNumLevels_09ddd0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_09ddd0 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_09ddd0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_09ddd0
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_09ddd0
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_09ddd0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_09ddd0
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_09ddd0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/105988.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/105988.wgsl.expected.spvasm
index 7a3b6a8..fd629e8 100644
--- a/test/intrinsics/gen/textureNumLevels/105988.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/105988.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_105988 "textureNumLevels_105988"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_105988 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_105988
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_105988
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_105988
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_105988
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_105988
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_105988
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/1e6f3b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/1e6f3b.wgsl.expected.spvasm
index a263bec..80c21ea 100644
--- a/test/intrinsics/gen/textureNumLevels/1e6f3b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/1e6f3b.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_1e6f3b "textureNumLevels_1e6f3b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_1e6f3b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_1e6f3b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_1e6f3b
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_1e6f3b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_1e6f3b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_1e6f3b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_1e6f3b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/23f750.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/23f750.wgsl.expected.spvasm
index e1fc4b0..8dd3517 100644
--- a/test/intrinsics/gen/textureNumLevels/23f750.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/23f750.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_23f750 "textureNumLevels_23f750"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_23f750 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_23f750
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_23f750
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_23f750
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_23f750
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_23f750
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_23f750
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/2c3575.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
index 2e68eb3..9f84c3c 100644
--- a/test/intrinsics/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/2c3575.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_2c3575 "textureNumLevels_2c3575"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_2c3575 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_2c3575
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_2c3575
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_2c3575
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_2c3575
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_2c3575
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_2c3575
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/32a0ae.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/32a0ae.wgsl.expected.spvasm
index a6f21e0f..283d160 100644
--- a/test/intrinsics/gen/textureNumLevels/32a0ae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/32a0ae.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_32a0ae "textureNumLevels_32a0ae"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_32a0ae = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_32a0ae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_32a0ae
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_32a0ae
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_32a0ae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_32a0ae
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_32a0ae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/5101cf.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/5101cf.wgsl.expected.spvasm
index 893e54d..321f409 100644
--- a/test/intrinsics/gen/textureNumLevels/5101cf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/5101cf.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_5101cf "textureNumLevels_5101cf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_5101cf = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_5101cf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_5101cf
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_5101cf
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_5101cf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_5101cf
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_5101cf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/51b5bb.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/51b5bb.wgsl.expected.spvasm
index 93e65fa..2fa2c76 100644
--- a/test/intrinsics/gen/textureNumLevels/51b5bb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/51b5bb.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Sampled1D
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_51b5bb "textureNumLevels_51b5bb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_51b5bb = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_51b5bb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_51b5bb
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_51b5bb
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_51b5bb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_51b5bb
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_51b5bb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/897aaf.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/897aaf.wgsl.expected.spvasm
index 7f4e14e..2daa6e8 100644
--- a/test/intrinsics/gen/textureNumLevels/897aaf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/897aaf.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_897aaf "textureNumLevels_897aaf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_897aaf = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_897aaf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_897aaf
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_897aaf
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_897aaf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_897aaf
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_897aaf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/9da7a5.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/9da7a5.wgsl.expected.spvasm
index 705b961..522fe68 100644
--- a/test/intrinsics/gen/textureNumLevels/9da7a5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/9da7a5.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_9da7a5 "textureNumLevels_9da7a5"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_9da7a5 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_9da7a5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_9da7a5
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_9da7a5
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_9da7a5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_9da7a5
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_9da7a5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/a91c03.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/a91c03.wgsl.expected.spvasm
index 8fef955..ba04989 100644
--- a/test/intrinsics/gen/textureNumLevels/a91c03.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/a91c03.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_a91c03 "textureNumLevels_a91c03"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_a91c03 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_a91c03
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_a91c03
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_a91c03
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_a91c03
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_a91c03
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_a91c03
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/aee7c8.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/aee7c8.wgsl.expected.spvasm
index 690441a..d5f9d13 100644
--- a/test/intrinsics/gen/textureNumLevels/aee7c8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/aee7c8.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_aee7c8 "textureNumLevels_aee7c8"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_aee7c8 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_aee7c8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_aee7c8
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_aee7c8
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_aee7c8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_aee7c8
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_aee7c8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
index 7263834..def7aeb 100644
--- a/test/intrinsics/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/b1b12b.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_b1b12b "textureNumLevels_b1b12b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_b1b12b = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_b1b12b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_b1b12b
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_b1b12b
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_b1b12b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_b1b12b
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_b1b12b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/b4f5ea.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/b4f5ea.wgsl.expected.spvasm
index 23c469e..6508bca 100644
--- a/test/intrinsics/gen/textureNumLevels/b4f5ea.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/b4f5ea.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_b4f5ea "textureNumLevels_b4f5ea"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_b4f5ea = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_b4f5ea
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_b4f5ea
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_b4f5ea
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_b4f5ea
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_b4f5ea
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_b4f5ea
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/d004a9.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/d004a9.wgsl.expected.spvasm
index 18fa3a1..48fe3de 100644
--- a/test/intrinsics/gen/textureNumLevels/d004a9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/d004a9.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_d004a9 "textureNumLevels_d004a9"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_d004a9 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_d004a9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_d004a9
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_d004a9
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_d004a9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_d004a9
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_d004a9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/dca09e.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/dca09e.wgsl.expected.spvasm
index 025d472..3ee917e 100644
--- a/test/intrinsics/gen/textureNumLevels/dca09e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/dca09e.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_dca09e "textureNumLevels_dca09e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_dca09e = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_dca09e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_dca09e
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_dca09e
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_dca09e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_dca09e
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_dca09e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/e67231.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/e67231.wgsl.expected.spvasm
index b2e72df..f2974bb 100644
--- a/test/intrinsics/gen/textureNumLevels/e67231.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/e67231.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_e67231 "textureNumLevels_e67231"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_e67231 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_e67231
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_e67231
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_e67231
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_e67231
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_e67231
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_e67231
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/ed078b.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/ed078b.wgsl.expected.spvasm
index 7713a7e..78cf143 100644
--- a/test/intrinsics/gen/textureNumLevels/ed078b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/ed078b.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_ed078b "textureNumLevels_ed078b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_ed078b = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_ed078b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_ed078b
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_ed078b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_ed078b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_ed078b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_ed078b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/f46ec6.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/f46ec6.wgsl.expected.spvasm
index 6c31bf7..7650c28 100644
--- a/test/intrinsics/gen/textureNumLevels/f46ec6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/f46ec6.wgsl.expected.spvasm
@@ -1,78 +1,76 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_f46ec6 "textureNumLevels_f46ec6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_f46ec6 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQueryLevels %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumLevels_f46ec6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumLevels_f46ec6
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumLevels_f46ec6
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumLevels_f46ec6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumLevels_f46ec6
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumLevels_f46ec6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumLevels/f5828d.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
index 5013da4..50e30a2 100644
--- a/test/intrinsics/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumLevels/f5828d.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumLevels_f5828d "textureNumLevels_f5828d"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumLevels_f5828d = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQueryLevels %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumLevels_f5828d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumLevels_f5828d
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumLevels_f5828d
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumLevels_f5828d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumLevels_f5828d
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumLevels_f5828d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumSamples/2c6f14.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumSamples/2c6f14.wgsl.expected.spvasm
index 9536280..f1b55e4 100644
--- a/test/intrinsics/gen/textureNumSamples/2c6f14.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumSamples/2c6f14.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumSamples_2c6f14 "textureNumSamples_2c6f14"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumSamples_2c6f14 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySamples %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumSamples_2c6f14
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumSamples_2c6f14
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumSamples_2c6f14
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumSamples_2c6f14
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumSamples_2c6f14
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumSamples_2c6f14
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumSamples/42f8bb.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumSamples/42f8bb.wgsl.expected.spvasm
index 5ebd9f3..a8b6504 100644
--- a/test/intrinsics/gen/textureNumSamples/42f8bb.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumSamples/42f8bb.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumSamples_42f8bb "textureNumSamples_42f8bb"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%22 = OpConstantNull %int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumSamples_42f8bb = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %22
- %19 = OpLoad %7 %arg_0
+ %19 = OpLoad %11 %arg_0
%17 = OpImageQuerySamples %int %19
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureNumSamples_42f8bb
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureNumSamples_42f8bb
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureNumSamples_42f8bb
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureNumSamples_42f8bb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureNumSamples_42f8bb
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureNumSamples_42f8bb
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumSamples/449d23.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumSamples/449d23.wgsl.expected.spvasm
index 66f448c..f89f901 100644
--- a/test/intrinsics/gen/textureNumSamples/449d23.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumSamples/449d23.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumSamples_449d23 "textureNumSamples_449d23"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumSamples_449d23 = OpFunction %void None %13
%16 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%17 = OpImageQuerySamples %int %18
OpStore %res %17
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumSamples_449d23
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumSamples_449d23
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumSamples_449d23
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumSamples_449d23
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumSamples_449d23
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumSamples_449d23
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm b/test/intrinsics/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
index 38604f0..5800475 100644
--- a/test/intrinsics/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureNumSamples/a3c8a0.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureNumSamples_a3c8a0 "textureNumSamples_a3c8a0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%21 = OpConstantNull %int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureNumSamples_a3c8a0 = OpFunction %void None %12
%15 = OpLabel
%res = OpVariable %_ptr_Function_int Function %21
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
%16 = OpImageQuerySamples %int %18
OpStore %res %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureNumSamples_a3c8a0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureNumSamples_a3c8a0
- %30 = OpFunctionCall %void %tint_symbol_2 %11
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureNumSamples_a3c8a0
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureNumSamples_a3c8a0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureNumSamples_a3c8a0
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureNumSamples_a3c8a0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
index 367451d..08eaacd 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/011a8f.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_011a8f "textureSampleCompareLevel_011a8f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
@@ -52,12 +51,12 @@
%v2int = OpTypeVector %int 2
%32 = OpConstantNull %v2int
%_ptr_Function_float = OpTypePointer Function %float
- %35 = OpTypeFunction %void %v4float
+ %35 = OpTypeFunction %v4float
%textureSampleCompareLevel_011a8f = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -65,26 +64,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %v4float
- %38 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %35
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%40 = OpLabel
- OpStore %tint_pointsize %float_1
- %41 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
- %42 = OpFunctionCall %void %tint_symbol_2 %14
+ %41 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleCompareLevel_011a8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
index 9497aa4..45efa23 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/1116ed.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_1116ed "textureSampleCompareLevel_1116ed"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%textureSampleCompareLevel_1116ed = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
- %40 = OpFunctionCall %void %tint_symbol_2 %14
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleCompareLevel_1116ed
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
index e973d77..834d5df 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/1568e3.wgsl.expected.spvasm
@@ -1,85 +1,83 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_1568e3 "textureSampleCompareLevel_1568e3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
%float_0 = OpConstant %float 0
%_ptr_Function_float = OpTypePointer Function %float
- %30 = OpTypeFunction %void %v4float
+ %30 = OpTypeFunction %v4float
%textureSampleCompareLevel_1568e3 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleDrefExplicitLod %float %23 %25 %float_1 Lod %float_0
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %v4float
- %33 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %30
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
- %37 = OpFunctionCall %void %tint_symbol_2 %14
+ %36 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleCompareLevel_1568e3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
index f820c27..177f6f9 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/2ad2b1.wgsl.expected.spvasm
@@ -1,85 +1,83 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_2ad2b1 "textureSampleCompareLevel_2ad2b1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
%float_0 = OpConstant %float 0
%_ptr_Function_float = OpTypePointer Function %float
- %30 = OpTypeFunction %void %v4float
+ %30 = OpTypeFunction %v4float
%textureSampleCompareLevel_2ad2b1 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleDrefExplicitLod %float %23 %25 %float_1 Lod %float_0
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %v4float
- %33 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %30
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
- %37 = OpFunctionCall %void %tint_symbol_2 %14
+ %36 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleCompareLevel_2ad2b1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
index a25fc99..8102ae6 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/4cf3a2.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_4cf3a2 "textureSampleCompareLevel_4cf3a2"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%textureSampleCompareLevel_4cf3a2 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%25 = OpConvertSToF %float %int_1
%28 = OpCompositeConstruct %v4float %float_0 %float_0 %float_0 %25
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleCompareLevel_4cf3a2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
index 9048dd1..4220224 100644
--- a/test/intrinsics/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleCompareLevel/f8121c.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleCompareLevel_f8121c "textureSampleCompareLevel_f8121c"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
@@ -52,37 +51,36 @@
%v2int = OpTypeVector %int 2
%30 = OpConstantNull %v2int
%_ptr_Function_float = OpTypePointer Function %float
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%textureSampleCompareLevel_f8121c = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleDrefExplicitLod %float %23 %25 %float_1 Lod|ConstOffset %float_0 %30
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
- %40 = OpFunctionCall %void %tint_symbol_2 %14
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleCompareLevel_f8121c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/21402b.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/21402b.wgsl.expected.spvasm
index 757d428..99b7b95 100644
--- a/test/intrinsics/gen/textureSampleGrad/21402b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/21402b.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_21402b "textureSampleGrad_21402b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_21402b = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Grad %25 %25
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureSampleGrad_21402b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleGrad_21402b
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleGrad_21402b
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleGrad_21402b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleGrad_21402b
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleGrad_21402b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/2ecd8f.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/2ecd8f.wgsl.expected.spvasm
index da65931..ec4ab9b 100644
--- a/test/intrinsics/gen/textureSampleGrad/2ecd8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/2ecd8f.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_2ecd8f "textureSampleGrad_2ecd8f"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
@@ -51,13 +50,13 @@
%v2float = OpTypeVector %float 2
%31 = OpConstantNull %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %34 = OpTypeFunction %void %v4float
+ %34 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_2ecd8f = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -65,26 +64,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %v4float
- %37 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %34
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureSampleGrad_2ecd8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%39 = OpLabel
- OpStore %tint_pointsize %float_1
- %41 = OpFunctionCall %void %textureSampleGrad_2ecd8f
- %42 = OpFunctionCall %void %tint_symbol_2 %14
+ %40 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleGrad_2ecd8f
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleGrad_2ecd8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleGrad_2ecd8f
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleGrad_2ecd8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/468f88.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/468f88.wgsl.expected.spvasm
index 9d30fbc..9caa2c3 100644
--- a/test/intrinsics/gen/textureSampleGrad/468f88.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/468f88.wgsl.expected.spvasm
@@ -1,87 +1,85 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_468f88 "textureSampleGrad_468f88"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%28 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %31 = OpTypeFunction %void %v4float
+ %31 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_468f88 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Grad|ConstOffset %25 %25 %28
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %31
-%tint_symbol = OpFunctionParameter %v4float
- %34 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %31
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureSampleGrad_468f88
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%36 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleGrad_468f88
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %37 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %37
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleGrad_468f88
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleGrad_468f88
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleGrad_468f88
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleGrad_468f88
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/521263.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/521263.wgsl.expected.spvasm
index 415b703..ac43905 100644
--- a/test/intrinsics/gen/textureSampleGrad/521263.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/521263.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_521263 "textureSampleGrad_521263"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_521263 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Grad %25 %25
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureSampleGrad_521263
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleGrad_521263
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleGrad_521263
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleGrad_521263
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleGrad_521263
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleGrad_521263
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/5312f4.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/5312f4.wgsl.expected.spvasm
index 0cc1c9a..19283ee 100644
--- a/test/intrinsics/gen/textureSampleGrad/5312f4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/5312f4.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_5312f4 "textureSampleGrad_5312f4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %28 = OpTypeFunction %void %v4float
+ %28 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_5312f4 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Grad %25 %25
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %28
-%tint_symbol = OpFunctionParameter %v4float
- %31 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %28
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureSampleGrad_5312f4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleGrad_5312f4
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %34 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleGrad_5312f4
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleGrad_5312f4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleGrad_5312f4
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleGrad_5312f4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/872f00.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/872f00.wgsl.expected.spvasm
index 4cb56d1..8fb8f21 100644
--- a/test/intrinsics/gen/textureSampleGrad/872f00.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/872f00.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_872f00 "textureSampleGrad_872f00"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
@@ -53,13 +52,13 @@
%v2int = OpTypeVector %int 2
%33 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %36 = OpTypeFunction %void %v4float
+ %36 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_872f00 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -67,26 +66,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %v4float
- %39 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %36
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureSampleGrad_872f00
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%41 = OpLabel
- OpStore %tint_pointsize %float_1
- %43 = OpFunctionCall %void %textureSampleGrad_872f00
- %44 = OpFunctionCall %void %tint_symbol_2 %14
+ %42 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %42
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %46 = OpLabel
- %47 = OpFunctionCall %void %textureSampleGrad_872f00
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %textureSampleGrad_872f00
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %49 = OpLabel
- %50 = OpFunctionCall %void %textureSampleGrad_872f00
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %textureSampleGrad_872f00
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/e383db.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/e383db.wgsl.expected.spvasm
index 6a84f1f..a5cff35 100644
--- a/test/intrinsics/gen/textureSampleGrad/e383db.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/e383db.wgsl.expected.spvasm
@@ -1,63 +1,62 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_e383db "textureSampleGrad_e383db"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v3float = OpTypeVector %float 3
%30 = OpConstantNull %v3float
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_e383db = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%25 = OpConvertSToF %float %int_1
%28 = OpCompositeConstruct %v4float %float_0 %float_0 %float_0 %25
@@ -65,26 +64,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureSampleGrad_e383db
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %40 = OpFunctionCall %void %textureSampleGrad_e383db
- %41 = OpFunctionCall %void %tint_symbol_2 %14
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %43 = OpLabel
- %44 = OpFunctionCall %void %textureSampleGrad_e383db
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %textureSampleGrad_e383db
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %46 = OpLabel
- %47 = OpFunctionCall %void %textureSampleGrad_e383db
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %textureSampleGrad_e383db
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleGrad/e9a2f7.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleGrad/e9a2f7.wgsl.expected.spvasm
index b13faa0..a54c398 100644
--- a/test/intrinsics/gen/textureSampleGrad/e9a2f7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleGrad/e9a2f7.wgsl.expected.spvasm
@@ -1,87 +1,85 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleGrad_e9a2f7 "textureSampleGrad_e9a2f7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%28 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %31 = OpTypeFunction %void %v4float
+ %31 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleGrad_e9a2f7 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Grad|ConstOffset %25 %25 %28
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %31
-%tint_symbol = OpFunctionParameter %v4float
- %34 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %31
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureSampleGrad_e9a2f7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%36 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleGrad_e9a2f7
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %37 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %37
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleGrad_e9a2f7
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleGrad_e9a2f7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleGrad_e9a2f7
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleGrad_e9a2f7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/02be59.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
index d43aedf..b8fed20 100644
--- a/test/intrinsics/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/02be59.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_02be59 "textureSampleLevel_02be59"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%26 = OpConstantNull %v2float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_float = OpTypePointer Function %float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_02be59 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%27 = OpConvertSToF %float %int_0
%20 = OpImageSampleExplicitLod %v4float %24 %26 Lod %27
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleLevel_02be59
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpFunctionCall %void %textureSampleLevel_02be59
- %40 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleLevel_02be59
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleLevel_02be59
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleLevel_02be59
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleLevel_02be59
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/0bdd9a.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/0bdd9a.wgsl.expected.spvasm
index 5d4ebad..6c66663 100644
--- a/test/intrinsics/gen/textureSampleLevel/0bdd9a.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/0bdd9a.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_0bdd9a "textureSampleLevel_0bdd9a"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%textureSampleLevel_0bdd9a = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%25 = OpConvertSToF %float %int_1
%28 = OpCompositeConstruct %v4float %float_0 %float_0 %float_0 %25
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleLevel_0bdd9a
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleLevel_0bdd9a
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_0bdd9a
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_0bdd9a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_0bdd9a
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_0bdd9a
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
index 35cdc08..38d4e45 100644
--- a/test/intrinsics/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/1b0291.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_1b0291 "textureSampleLevel_1b0291"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%26 = OpConstantNull %v3float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_float = OpTypePointer Function %float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_1b0291 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%27 = OpConvertSToF %float %int_0
%20 = OpImageSampleExplicitLod %v4float %24 %26 Lod %27
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleLevel_1b0291
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpFunctionCall %void %textureSampleLevel_1b0291
- %40 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleLevel_1b0291
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleLevel_1b0291
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleLevel_1b0291
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleLevel_1b0291
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
index 541d6be..8be8c18 100644
--- a/test/intrinsics/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/1bf73e.wgsl.expected.spvasm
@@ -1,62 +1,61 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_1bf73e "textureSampleLevel_1bf73e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%int_0 = OpConstant %int 0
%_ptr_Function_float = OpTypePointer Function %float
- %35 = OpTypeFunction %void %v4float
+ %35 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_1bf73e = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%27 = OpConvertSToF %float %int_1
%30 = OpCompositeConstruct %v3float %float_0 %float_0 %27
@@ -66,26 +65,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %v4float
- %38 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %35
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleLevel_1bf73e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%40 = OpLabel
- OpStore %tint_pointsize %float_1
- %42 = OpFunctionCall %void %textureSampleLevel_1bf73e
- %43 = OpFunctionCall %void %tint_symbol_2 %14
+ %41 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleLevel_1bf73e
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleLevel_1bf73e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %48 = OpLabel
- %49 = OpFunctionCall %void %textureSampleLevel_1bf73e
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %textureSampleLevel_1bf73e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/302be4.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/302be4.wgsl.expected.spvasm
index febef40..19dc29b 100644
--- a/test/intrinsics/gen/textureSampleLevel/302be4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/302be4.wgsl.expected.spvasm
@@ -1,61 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_302be4 "textureSampleLevel_302be4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %33 = OpTypeFunction %void %v4float
+ %33 = OpTypeFunction %v4float
%textureSampleLevel_302be4 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -63,26 +62,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %v4float
- %36 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %33
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureSampleLevel_302be4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%38 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpFunctionCall %void %textureSampleLevel_302be4
- %40 = OpFunctionCall %void %tint_symbol_2 %14
+ %39 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleLevel_302be4
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleLevel_302be4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %45 = OpLabel
- %46 = OpFunctionCall %void %textureSampleLevel_302be4
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %textureSampleLevel_302be4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
index 6e8d81b..4a78cb0 100644
--- a/test/intrinsics/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/47daa4.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_47daa4 "textureSampleLevel_47daa4"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%26 = OpConstantNull %v2float
%int = OpTypeInt 32 1
@@ -51,13 +50,13 @@
%v2int = OpTypeVector %int 2
%31 = OpConstantNull %v2int
%_ptr_Function_float = OpTypePointer Function %float
- %34 = OpTypeFunction %void %v4float
+ %34 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_47daa4 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%27 = OpConvertSToF %float %int_0
%20 = OpImageSampleExplicitLod %v4float %24 %26 Lod|ConstOffset %27 %31
@@ -65,26 +64,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %v4float
- %37 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %34
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureSampleLevel_47daa4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%39 = OpLabel
- OpStore %tint_pointsize %float_1
- %41 = OpFunctionCall %void %textureSampleLevel_47daa4
- %42 = OpFunctionCall %void %tint_symbol_2 %14
+ %40 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_47daa4
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_47daa4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleLevel_47daa4
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleLevel_47daa4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/690d95.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/690d95.wgsl.expected.spvasm
index 4c6afe0..50a4990 100644
--- a/test/intrinsics/gen/textureSampleLevel/690d95.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/690d95.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_690d95 "textureSampleLevel_690d95"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
@@ -51,37 +50,36 @@
%v2int = OpTypeVector %int 2
%29 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%textureSampleLevel_690d95 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod|ConstOffset %float_1 %29
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleLevel_690d95
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleLevel_690d95
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_690d95
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_690d95
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_690d95
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_690d95
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/979816.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/979816.wgsl.expected.spvasm
index c8f76e0..6420fc9 100644
--- a/test/intrinsics/gen/textureSampleLevel/979816.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/979816.wgsl.expected.spvasm
@@ -1,85 +1,83 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_979816 "textureSampleLevel_979816"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%float_0 = OpConstant %float 0
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %29 = OpTypeFunction %void %v4float
+ %29 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_979816 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod %float_0
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %v4float
- %32 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %29
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureSampleLevel_979816
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%34 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpFunctionCall %void %textureSampleLevel_979816
- %37 = OpFunctionCall %void %tint_symbol_2 %14
+ %35 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %35
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureSampleLevel_979816
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureSampleLevel_979816
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %42 = OpLabel
- %43 = OpFunctionCall %void %textureSampleLevel_979816
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %textureSampleLevel_979816
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/9bd37b.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/9bd37b.wgsl.expected.spvasm
index bbb579d..6618133 100644
--- a/test/intrinsics/gen/textureSampleLevel/9bd37b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/9bd37b.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_9bd37b "textureSampleLevel_9bd37b"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
@@ -51,37 +50,36 @@
%v3int = OpTypeVector %int 3
%29 = OpConstantNull %v3int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %32 = OpTypeFunction %void %v4float
+ %32 = OpTypeFunction %v4float
%textureSampleLevel_9bd37b = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod|ConstOffset %float_1 %29
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %v4float
- %35 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %32
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureSampleLevel_9bd37b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%37 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpFunctionCall %void %textureSampleLevel_9bd37b
- %39 = OpFunctionCall %void %tint_symbol_2 %14
+ %38 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_9bd37b
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_9bd37b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_9bd37b
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_9bd37b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/a4af26.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/a4af26.wgsl.expected.spvasm
index 188ce07..ddb13a5 100644
--- a/test/intrinsics/gen/textureSampleLevel/a4af26.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/a4af26.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_a4af26 "textureSampleLevel_a4af26"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
@@ -52,12 +51,12 @@
%v2int = OpTypeVector %int 2
%32 = OpConstantNull %v2int
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %35 = OpTypeFunction %void %v4float
+ %35 = OpTypeFunction %v4float
%textureSampleLevel_a4af26 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v3float %float_0 %float_0 %26
@@ -65,26 +64,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %v4float
- %38 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %35
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleLevel_a4af26
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%40 = OpLabel
- OpStore %tint_pointsize %float_1
- %41 = OpFunctionCall %void %textureSampleLevel_a4af26
- %42 = OpFunctionCall %void %tint_symbol_2 %14
+ %41 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_a4af26
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_a4af26
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleLevel_a4af26
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleLevel_a4af26
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/abfcc0.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/abfcc0.wgsl.expected.spvasm
index 3b16f62..e86f2fb 100644
--- a/test/intrinsics/gen/textureSampleLevel/abfcc0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/abfcc0.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_abfcc0 "textureSampleLevel_abfcc0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %29 = OpTypeFunction %void %v4float
+ %29 = OpTypeFunction %v4float
%textureSampleLevel_abfcc0 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod %float_1
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %v4float
- %32 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %29
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureSampleLevel_abfcc0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%34 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleLevel_abfcc0
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %35 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %35
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleLevel_abfcc0
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleLevel_abfcc0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_abfcc0
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_abfcc0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
index 9d7251c..50ca7f9 100644
--- a/test/intrinsics/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/ae5e39.wgsl.expected.spvasm
@@ -1,62 +1,61 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpCapability SampledCubeArray
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_ae5e39 "textureSampleLevel_ae5e39"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%int_0 = OpConstant %int 0
%_ptr_Function_float = OpTypePointer Function %float
- %34 = OpTypeFunction %void %v4float
+ %34 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_ae5e39 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%26 = OpConvertSToF %float %int_1
%29 = OpCompositeConstruct %v4float %float_0 %float_0 %float_0 %26
@@ -66,26 +65,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %v4float
- %37 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %34
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureSampleLevel_ae5e39
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%39 = OpLabel
- OpStore %tint_pointsize %float_1
- %41 = OpFunctionCall %void %textureSampleLevel_ae5e39
- %42 = OpFunctionCall %void %tint_symbol_2 %14
+ %40 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %44 = OpLabel
- %45 = OpFunctionCall %void %textureSampleLevel_ae5e39
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %textureSampleLevel_ae5e39
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleLevel_ae5e39
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleLevel_ae5e39
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
index c0c4f79..605376e 100644
--- a/test/intrinsics/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/ba93b3.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 51
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_ba93b3 "textureSampleLevel_ba93b3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 1 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 1 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %23 = OpTypeSampledImage %7
+ %23 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%float_0 = OpConstant %float 0
%int = OpTypeInt 32 1
@@ -52,13 +51,13 @@
%v2int = OpTypeVector %int 2
%34 = OpConstantNull %v2int
%_ptr_Function_float = OpTypePointer Function %float
- %37 = OpTypeFunction %void %v4float
+ %37 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureSampleLevel_ba93b3 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
- %21 = OpLoad %10 %arg_1
- %22 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_float Function %8
+ %21 = OpLoad %14 %arg_1
+ %22 = OpLoad %11 %arg_0
%24 = OpSampledImage %23 %22 %21
%27 = OpConvertSToF %float %int_1
%30 = OpCompositeConstruct %v3float %float_0 %float_0 %27
@@ -68,26 +67,25 @@
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %37
-%tint_symbol = OpFunctionParameter %v4float
- %40 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %37
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %textureSampleLevel_ba93b3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%42 = OpLabel
- OpStore %tint_pointsize %float_1
- %44 = OpFunctionCall %void %textureSampleLevel_ba93b3
- %45 = OpFunctionCall %void %tint_symbol_2 %14
+ %43 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %43
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %47 = OpLabel
- %48 = OpFunctionCall %void %textureSampleLevel_ba93b3
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %textureSampleLevel_ba93b3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %50 = OpLabel
- %51 = OpFunctionCall %void %textureSampleLevel_ba93b3
+ %49 = OpLabel
+ %50 = OpFunctionCall %void %textureSampleLevel_ba93b3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/c32df7.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/c32df7.wgsl.expected.spvasm
index 0f377ee..5daeeb2 100644
--- a/test/intrinsics/gen/textureSampleLevel/c32df7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/c32df7.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_c32df7 "textureSampleLevel_c32df7"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float Cube 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float Cube 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v3float = OpTypeVector %float 3
%25 = OpConstantNull %v3float
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %29 = OpTypeFunction %void %v4float
+ %29 = OpTypeFunction %v4float
%textureSampleLevel_c32df7 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod %float_1
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %v4float
- %32 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %29
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureSampleLevel_c32df7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%34 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleLevel_c32df7
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %35 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %35
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleLevel_c32df7
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleLevel_c32df7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_c32df7
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_c32df7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureSampleLevel/c6aca6.wgsl.expected.spvasm b/test/intrinsics/gen/textureSampleLevel/c6aca6.wgsl.expected.spvasm
index 3c7813d..7a94097 100644
--- a/test/intrinsics/gen/textureSampleLevel/c6aca6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureSampleLevel/c6aca6.wgsl.expected.spvasm
@@ -1,84 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %arg_1 "arg_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureSampleLevel_c6aca6 "textureSampleLevel_c6aca6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
OpDecorate %arg_1 DescriptorSet 1
OpDecorate %arg_1 Binding 1
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
- %10 = OpTypeSampler
-%_ptr_UniformConstant_10 = OpTypePointer UniformConstant %10
- %arg_1 = OpVariable %_ptr_UniformConstant_10 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %14 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %14 = OpTypeSampler
+%_ptr_UniformConstant_14 = OpTypePointer UniformConstant %14
+ %arg_1 = OpVariable %_ptr_UniformConstant_14 UniformConstant
%void = OpTypeVoid
%15 = OpTypeFunction %void
- %22 = OpTypeSampledImage %7
+ %22 = OpTypeSampledImage %11
%v2float = OpTypeVector %float 2
%25 = OpConstantNull %v2float
%float_1 = OpConstant %float 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %29 = OpTypeFunction %void %v4float
+ %29 = OpTypeFunction %v4float
%textureSampleLevel_c6aca6 = OpFunction %void None %15
%18 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %14
- %20 = OpLoad %10 %arg_1
- %21 = OpLoad %7 %arg_0
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %20 = OpLoad %14 %arg_1
+ %21 = OpLoad %11 %arg_0
%23 = OpSampledImage %22 %21 %20
%19 = OpImageSampleExplicitLod %v4float %23 %25 Lod %float_1
OpStore %res %19
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %v4float
- %32 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %29
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureSampleLevel_c6aca6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %15
%34 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %void %textureSampleLevel_c6aca6
- %36 = OpFunctionCall %void %tint_symbol_2 %14
+ %35 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %35
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %15
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureSampleLevel_c6aca6
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureSampleLevel_c6aca6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %15
- %41 = OpLabel
- %42 = OpFunctionCall %void %textureSampleLevel_c6aca6
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %textureSampleLevel_c6aca6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/05ce15.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/05ce15.wgsl.expected.spvasm
index ee23e7f..d7dca2f 100644
--- a/test/intrinsics/gen/textureStore/05ce15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/05ce15.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_05ce15 "textureStore_05ce15"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_05ce15 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_05ce15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_05ce15
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_05ce15
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_05ce15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_05ce15
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_05ce15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/064c7f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/064c7f.wgsl.expected.spvasm
index b4bba70..4e3a756 100644
--- a/test/intrinsics/gen/textureStore/064c7f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/064c7f.wgsl.expected.spvasm
@@ -1,74 +1,72 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_064c7f "textureStore_064c7f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_064c7f = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_064c7f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_064c7f
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_064c7f
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_064c7f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_064c7f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_064c7f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/068641.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/068641.wgsl.expected.spvasm
index ad9d55c..7f48b8b 100644
--- a/test/intrinsics/gen/textureStore/068641.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/068641.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_068641 "textureStore_068641"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v3int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_068641 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_068641
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_068641
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_068641
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_068641
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_068641
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_068641
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/0af6b5.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/0af6b5.wgsl.expected.spvasm
index d83c8d9..33b4e6a 100644
--- a/test/intrinsics/gen/textureStore/0af6b5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/0af6b5.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_0af6b5 "textureStore_0af6b5"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_0af6b5 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_0af6b5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_0af6b5
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_0af6b5
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_0af6b5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_0af6b5
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_0af6b5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/0c3dff.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/0c3dff.wgsl.expected.spvasm
index 0bc05e8..c8544d0 100644
--- a/test/intrinsics/gen/textureStore/0c3dff.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/0c3dff.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_0c3dff "textureStore_0c3dff"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v2int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_0c3dff = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_0c3dff
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_0c3dff
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_0c3dff
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_0c3dff
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_0c3dff
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_0c3dff
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/102722.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/102722.wgsl.expected.spvasm
index 1fc763e..f1a4f4f 100644
--- a/test/intrinsics/gen/textureStore/102722.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/102722.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_102722 "textureStore_102722"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v4uint = OpTypeVector %uint 4
%22 = OpConstantNull %v4uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_102722 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_102722
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_102722
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_102722
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_102722
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_102722
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_102722
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/1bbd08.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/1bbd08.wgsl.expected.spvasm
index f177c1b..f1316a5 100644
--- a/test/intrinsics/gen/textureStore/1bbd08.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/1bbd08.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_1bbd08 "textureStore_1bbd08"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_1bbd08 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_1bbd08
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_1bbd08
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_1bbd08
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_1bbd08
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_1bbd08
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_1bbd08
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/1c02e7.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/1c02e7.wgsl.expected.spvasm
index 6f3cf7b..320d4a9 100644
--- a/test/intrinsics/gen/textureStore/1c02e7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/1c02e7.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_1c02e7 "textureStore_1c02e7"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
@@ -44,34 +43,33 @@
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4int = OpTypeVector %int 4
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_1c02e7 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %22 %24
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureStore_1c02e7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureStore_1c02e7
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_1c02e7
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_1c02e7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureStore_1c02e7
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureStore_1c02e7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/22d955.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/22d955.wgsl.expected.spvasm
index bde9762..ac3fcad 100644
--- a/test/intrinsics/gen/textureStore/22d955.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/22d955.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_22d955 "textureStore_22d955"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,34 +44,33 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4uint = OpTypeVector %uint 4
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_22d955 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %23 %25
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureStore_22d955
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureStore_22d955
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_22d955
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_22d955
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureStore_22d955
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureStore_22d955
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/26bf70.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/26bf70.wgsl.expected.spvasm
index ba254cc..4040d99 100644
--- a/test/intrinsics/gen/textureStore/26bf70.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/26bf70.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_26bf70 "textureStore_26bf70"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v2int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_26bf70 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_26bf70
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_26bf70
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_26bf70
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_26bf70
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_26bf70
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_26bf70
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/2796b4.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/2796b4.wgsl.expected.spvasm
index 3c77ab2..1c76893 100644
--- a/test/intrinsics/gen/textureStore/2796b4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/2796b4.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_2796b4 "textureStore_2796b4"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_2796b4 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_2796b4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_2796b4
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_2796b4
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_2796b4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_2796b4
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_2796b4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/2ac6c7.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/2ac6c7.wgsl.expected.spvasm
index ae33248..0440137 100644
--- a/test/intrinsics/gen/textureStore/2ac6c7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/2ac6c7.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_2ac6c7 "textureStore_2ac6c7"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_2ac6c7 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_2ac6c7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_2ac6c7
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_2ac6c7
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_2ac6c7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_2ac6c7
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_2ac6c7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/2eb2a4.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/2eb2a4.wgsl.expected.spvasm
index 01255a8..24d2ecd 100644
--- a/test/intrinsics/gen/textureStore/2eb2a4.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/2eb2a4.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_2eb2a4 "textureStore_2eb2a4"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v4uint = OpTypeVector %uint 4
%22 = OpConstantNull %v4uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_2eb2a4 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_2eb2a4
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_2eb2a4
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_2eb2a4
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_2eb2a4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_2eb2a4
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_2eb2a4
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/2ed2a3.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/2ed2a3.wgsl.expected.spvasm
index e517f8c..d529e14 100644
--- a/test/intrinsics/gen/textureStore/2ed2a3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/2ed2a3.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_2ed2a3 "textureStore_2ed2a3"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_2ed2a3 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_2ed2a3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_2ed2a3
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_2ed2a3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_2ed2a3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_2ed2a3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_2ed2a3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/31745b.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/31745b.wgsl.expected.spvasm
index d2216e9..d401580 100644
--- a/test/intrinsics/gen/textureStore/31745b.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/31745b.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_31745b "textureStore_31745b"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_31745b = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_31745b
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_31745b
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_31745b
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_31745b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_31745b
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_31745b
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/32f368.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/32f368.wgsl.expected.spvasm
index 9c38831..0990ac0 100644
--- a/test/intrinsics/gen/textureStore/32f368.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/32f368.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_32f368 "textureStore_32f368"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,34 +41,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_32f368 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_32f368
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_32f368
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_32f368
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_32f368
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_32f368
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_32f368
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/331aee.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/331aee.wgsl.expected.spvasm
index d6ba273..e27f41a 100644
--- a/test/intrinsics/gen/textureStore/331aee.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/331aee.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_331aee "textureStore_331aee"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_331aee = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_331aee
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_331aee
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_331aee
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_331aee
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_331aee
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_331aee
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/38e8d7.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/38e8d7.wgsl.expected.spvasm
index 1a7da57..5bf4b4a 100644
--- a/test/intrinsics/gen/textureStore/38e8d7.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/38e8d7.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_38e8d7 "textureStore_38e8d7"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,34 +44,33 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4uint = OpTypeVector %uint 4
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_38e8d7 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %23 %25
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureStore_38e8d7
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureStore_38e8d7
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_38e8d7
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_38e8d7
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureStore_38e8d7
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureStore_38e8d7
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/3a52ac.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/3a52ac.wgsl.expected.spvasm
index 04f98b5..2208840 100644
--- a/test/intrinsics/gen/textureStore/3a52ac.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/3a52ac.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_3a52ac "textureStore_3a52ac"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
@@ -44,34 +43,33 @@
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4int = OpTypeVector %int 4
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_3a52ac = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %22 %24
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureStore_3a52ac
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureStore_3a52ac
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_3a52ac
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_3a52ac
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureStore_3a52ac
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureStore_3a52ac
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/3bb7a1.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/3bb7a1.wgsl.expected.spvasm
index 4c4f9d4..042c17d 100644
--- a/test/intrinsics/gen/textureStore/3bb7a1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/3bb7a1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_3bb7a1 "textureStore_3bb7a1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,34 +41,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_3bb7a1 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_3bb7a1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_3bb7a1
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_3bb7a1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_3bb7a1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_3bb7a1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_3bb7a1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/3bec15.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/3bec15.wgsl.expected.spvasm
index fcd3c0c..617f660 100644
--- a/test/intrinsics/gen/textureStore/3bec15.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/3bec15.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_3bec15 "textureStore_3bec15"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v4uint = OpTypeVector %uint 4
%22 = OpConstantNull %v4uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_3bec15 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_3bec15
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_3bec15
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_3bec15
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_3bec15
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_3bec15
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_3bec15
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/441ba8.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/441ba8.wgsl.expected.spvasm
index 68e35fc..f90cc46 100644
--- a/test/intrinsics/gen/textureStore/441ba8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/441ba8.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_441ba8 "textureStore_441ba8"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v3int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_441ba8 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_441ba8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_441ba8
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_441ba8
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_441ba8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_441ba8
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_441ba8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/4fc057.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/4fc057.wgsl.expected.spvasm
index bc26ddc..22d3d46 100644
--- a/test/intrinsics/gen/textureStore/4fc057.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/4fc057.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_4fc057 "textureStore_4fc057"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,34 +41,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_4fc057 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_4fc057
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_4fc057
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_4fc057
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_4fc057
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_4fc057
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_4fc057
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/5a2f8f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/5a2f8f.wgsl.expected.spvasm
index fb58460..83dac17 100644
--- a/test/intrinsics/gen/textureStore/5a2f8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/5a2f8f.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_5a2f8f "textureStore_5a2f8f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%v4int = OpTypeVector %int 4
%21 = OpConstantNull %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_5a2f8f = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %21
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureStore_5a2f8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureStore_5a2f8f
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureStore_5a2f8f
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureStore_5a2f8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_5a2f8f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_5a2f8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/60975f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/60975f.wgsl.expected.spvasm
index c05e714..fb1d691 100644
--- a/test/intrinsics/gen/textureStore/60975f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/60975f.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_60975f "textureStore_60975f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,34 +41,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_60975f = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_60975f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_60975f
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_60975f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_60975f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_60975f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_60975f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/682fd6.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/682fd6.wgsl.expected.spvasm
index 6ba0216..420e450 100644
--- a/test/intrinsics/gen/textureStore/682fd6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/682fd6.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_682fd6 "textureStore_682fd6"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,34 +43,33 @@
%21 = OpConstantNull %v2int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_682fd6 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_682fd6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_682fd6
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_682fd6
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_682fd6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_682fd6
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_682fd6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/6b75c3.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/6b75c3.wgsl.expected.spvasm
index d373c99..1c3b265 100644
--- a/test/intrinsics/gen/textureStore/6b75c3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/6b75c3.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_6b75c3 "textureStore_6b75c3"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_6b75c3 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_6b75c3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_6b75c3
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_6b75c3
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_6b75c3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_6b75c3
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_6b75c3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/6b80d2.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/6b80d2.wgsl.expected.spvasm
index 87ed017..f5112ee 100644
--- a/test/intrinsics/gen/textureStore/6b80d2.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/6b80d2.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_6b80d2 "textureStore_6b80d2"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%v4int = OpTypeVector %int 4
%21 = OpConstantNull %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_6b80d2 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %21
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureStore_6b80d2
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureStore_6b80d2
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureStore_6b80d2
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureStore_6b80d2
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_6b80d2
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_6b80d2
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/6cff2e.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/6cff2e.wgsl.expected.spvasm
index 30fbe9b..8e80a59 100644
--- a/test/intrinsics/gen/textureStore/6cff2e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/6cff2e.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_6cff2e "textureStore_6cff2e"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v2int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_6cff2e = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_6cff2e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_6cff2e
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_6cff2e
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_6cff2e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_6cff2e
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_6cff2e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/6da692.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/6da692.wgsl.expected.spvasm
index 6fd25b4..d1101ca 100644
--- a/test/intrinsics/gen/textureStore/6da692.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/6da692.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_6da692 "textureStore_6da692"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba16ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,34 +44,33 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4uint = OpTypeVector %uint 4
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_6da692 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %23 %25
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureStore_6da692
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureStore_6da692
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_6da692
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_6da692
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureStore_6da692
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureStore_6da692
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/731349.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/731349.wgsl.expected.spvasm
index 58b625f..8649d67 100644
--- a/test/intrinsics/gen/textureStore/731349.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/731349.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_731349 "textureStore_731349"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_731349 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_731349
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_731349
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_731349
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_731349
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_731349
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_731349
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/752da6.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/752da6.wgsl.expected.spvasm
index 6aa38f4..35b57fb 100644
--- a/test/intrinsics/gen/textureStore/752da6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/752da6.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_752da6 "textureStore_752da6"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_752da6 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_752da6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_752da6
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_752da6
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_752da6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_752da6
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_752da6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/77c0ae.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/77c0ae.wgsl.expected.spvasm
index 22b93d4..7af51d4 100644
--- a/test/intrinsics/gen/textureStore/77c0ae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/77c0ae.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_77c0ae "textureStore_77c0ae"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v2int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_77c0ae = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_77c0ae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_77c0ae
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_77c0ae
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_77c0ae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_77c0ae
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_77c0ae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/7cec8d.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/7cec8d.wgsl.expected.spvasm
index 47d10a8..5ad44d2 100644
--- a/test/intrinsics/gen/textureStore/7cec8d.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/7cec8d.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_7cec8d "textureStore_7cec8d"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
@@ -44,34 +43,33 @@
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4int = OpTypeVector %int 4
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_7cec8d = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %22 %24
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureStore_7cec8d
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureStore_7cec8d
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_7cec8d
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_7cec8d
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureStore_7cec8d
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureStore_7cec8d
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/7f7fae.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/7f7fae.wgsl.expected.spvasm
index d8b70fe..d1ac585 100644
--- a/test/intrinsics/gen/textureStore/7f7fae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/7f7fae.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_7f7fae "textureStore_7f7fae"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_7f7fae = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_7f7fae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_7f7fae
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_7f7fae
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_7f7fae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_7f7fae
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_7f7fae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/804942.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/804942.wgsl.expected.spvasm
index f7b77bb..dc2c206 100644
--- a/test/intrinsics/gen/textureStore/804942.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/804942.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_804942 "textureStore_804942"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_804942 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_804942
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_804942
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_804942
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_804942
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_804942
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_804942
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/805dae.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/805dae.wgsl.expected.spvasm
index 6a2d386..55b1d44 100644
--- a/test/intrinsics/gen/textureStore/805dae.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/805dae.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_805dae "textureStore_805dae"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_805dae = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_805dae
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_805dae
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_805dae
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_805dae
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_805dae
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_805dae
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/83bcc1.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/83bcc1.wgsl.expected.spvasm
index 7165fd8..666ea11 100644
--- a/test/intrinsics/gen/textureStore/83bcc1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/83bcc1.wgsl.expected.spvasm
@@ -1,77 +1,75 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_83bcc1 "textureStore_83bcc1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v4uint = OpTypeVector %uint 4
%22 = OpConstantNull %v4uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_83bcc1 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_83bcc1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_83bcc1
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_83bcc1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_83bcc1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_83bcc1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_83bcc1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/872747.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/872747.wgsl.expected.spvasm
index a6fa3f3..844f37d 100644
--- a/test/intrinsics/gen/textureStore/872747.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/872747.wgsl.expected.spvasm
@@ -1,74 +1,72 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_872747 "textureStore_872747"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_872747 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_872747
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_872747
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_872747
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_872747
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_872747
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_872747
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/8e0479.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/8e0479.wgsl.expected.spvasm
index 5db1630..000407d 100644
--- a/test/intrinsics/gen/textureStore/8e0479.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/8e0479.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_8e0479 "textureStore_8e0479"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -45,34 +44,33 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4uint = OpTypeVector %uint 4
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_8e0479 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %23 %25
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureStore_8e0479
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureStore_8e0479
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_8e0479
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_8e0479
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureStore_8e0479
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureStore_8e0479
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/8f71a1.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/8f71a1.wgsl.expected.spvasm
index 4380aac..c903b5c 100644
--- a/test/intrinsics/gen/textureStore/8f71a1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/8f71a1.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_8f71a1 "textureStore_8f71a1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_8f71a1 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_8f71a1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_8f71a1
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_8f71a1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_8f71a1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_8f71a1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_8f71a1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/969534.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/969534.wgsl.expected.spvasm
index bd8a1cc..aab85aa 100644
--- a/test/intrinsics/gen/textureStore/969534.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/969534.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_969534 "textureStore_969534"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%v4int = OpTypeVector %int 4
%21 = OpConstantNull %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_969534 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %21
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureStore_969534
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureStore_969534
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureStore_969534
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureStore_969534
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_969534
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_969534
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/9a3ecc.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/9a3ecc.wgsl.expected.spvasm
index 65be593..6ca3785 100644
--- a/test/intrinsics/gen/textureStore/9a3ecc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/9a3ecc.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_9a3ecc "textureStore_9a3ecc"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_9a3ecc = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_9a3ecc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_9a3ecc
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_9a3ecc
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_9a3ecc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_9a3ecc
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_9a3ecc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/9d9cd5.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/9d9cd5.wgsl.expected.spvasm
index 52c2c66..3b2ba58 100644
--- a/test/intrinsics/gen/textureStore/9d9cd5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/9d9cd5.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_9d9cd5 "textureStore_9d9cd5"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rgba32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,34 +41,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_9d9cd5 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_9d9cd5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_9d9cd5
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_9d9cd5
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_9d9cd5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_9d9cd5
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_9d9cd5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/9e3ec5.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/9e3ec5.wgsl.expected.spvasm
index 660a80b..5293d47 100644
--- a/test/intrinsics/gen/textureStore/9e3ec5.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/9e3ec5.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_9e3ec5 "textureStore_9e3ec5"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba16i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_9e3ec5 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_9e3ec5
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_9e3ec5
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_9e3ec5
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_9e3ec5
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_9e3ec5
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_9e3ec5
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/ac67aa.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/ac67aa.wgsl.expected.spvasm
index 2df2253..e18042c 100644
--- a/test/intrinsics/gen/textureStore/ac67aa.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/ac67aa.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_ac67aa "textureStore_ac67aa"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -44,34 +43,33 @@
%21 = OpConstantNull %v3int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_ac67aa = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_ac67aa
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_ac67aa
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_ac67aa
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_ac67aa
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_ac67aa
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_ac67aa
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/b706b1.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/b706b1.wgsl.expected.spvasm
index e8ce299..659af46 100644
--- a/test/intrinsics/gen/textureStore/b706b1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/b706b1.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_b706b1 "textureStore_b706b1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_b706b1 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_b706b1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_b706b1
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_b706b1
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_b706b1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_b706b1
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_b706b1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/bbcb7f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/bbcb7f.wgsl.expected.spvasm
index 488c2b5..7a21498 100644
--- a/test/intrinsics/gen/textureStore/bbcb7f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/bbcb7f.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_bbcb7f "textureStore_bbcb7f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_bbcb7f = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_bbcb7f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_bbcb7f
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_bbcb7f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_bbcb7f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_bbcb7f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_bbcb7f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/be6e30.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/be6e30.wgsl.expected.spvasm
index 0ad6a57..0a47c20 100644
--- a/test/intrinsics/gen/textureStore/be6e30.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/be6e30.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_be6e30 "textureStore_be6e30"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%20 = OpConstantNull %v2int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_be6e30 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_be6e30
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_be6e30
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_be6e30
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_be6e30
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_be6e30
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_be6e30
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/bf775c.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/bf775c.wgsl.expected.spvasm
index ad9491a..34825d5 100644
--- a/test/intrinsics/gen/textureStore/bf775c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/bf775c.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_bf775c "textureStore_bf775c"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%v4int = OpTypeVector %int 4
%21 = OpConstantNull %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_bf775c = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %21
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureStore_bf775c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureStore_bf775c
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureStore_bf775c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureStore_bf775c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_bf775c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_bf775c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/c5af1e.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/c5af1e.wgsl.expected.spvasm
index 88bfeb1..415c2a8 100644
--- a/test/intrinsics/gen/textureStore/c5af1e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/c5af1e.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_c5af1e "textureStore_c5af1e"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_c5af1e = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_c5af1e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_c5af1e
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_c5af1e
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_c5af1e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_c5af1e
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_c5af1e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/c863be.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/c863be.wgsl.expected.spvasm
index e93580e..711b604 100644
--- a/test/intrinsics/gen/textureStore/c863be.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/c863be.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_c863be "textureStore_c863be"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 0 1 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 0 1 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_c863be = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %22 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %22 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_c863be
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_c863be
- %31 = OpFunctionCall %void %tint_symbol_2 %11
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_c863be
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_c863be
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_c863be
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_c863be
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/d73b5c.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/d73b5c.wgsl.expected.spvasm
index d9b7315..b2c5b3a 100644
--- a/test/intrinsics/gen/textureStore/d73b5c.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/d73b5c.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_d73b5c "textureStore_d73b5c"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 1D 0 0 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 1D 0 0 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%v4int = OpTypeVector %int 4
%21 = OpConstantNull %v4int
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_d73b5c = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %21
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %textureStore_d73b5c
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %textureStore_d73b5c
- %30 = OpFunctionCall %void %tint_symbol_2 %12
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %32 = OpLabel
- %33 = OpFunctionCall %void %textureStore_d73b5c
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %textureStore_d73b5c
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_d73b5c
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_d73b5c
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/dd7d81.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/dd7d81.wgsl.expected.spvasm
index 7dacd3f..205afdd 100644
--- a/test/intrinsics/gen/textureStore/dd7d81.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/dd7d81.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_dd7d81 "textureStore_dd7d81"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rgba8Snorm
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_dd7d81 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_dd7d81
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_dd7d81
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_dd7d81
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_dd7d81
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_dd7d81
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_dd7d81
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/dde364.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/dde364.wgsl.expected.spvasm
index 918c322..02a9709 100644
--- a/test/intrinsics/gen/textureStore/dde364.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/dde364.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_dde364 "textureStore_dde364"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 2D 0 1 0 2 Rg32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -46,34 +45,33 @@
%23 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4uint = OpTypeVector %uint 4
%25 = OpConstantNull %v4uint
- %26 = OpTypeFunction %void %v4float
+ %26 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_dde364 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %23 %25
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %26
-%tint_symbol = OpFunctionParameter %v4float
- %29 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %26
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %textureStore_dde364
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%31 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpFunctionCall %void %textureStore_dde364
- %34 = OpFunctionCall %void %tint_symbol_2 %12
+ %32 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_dde364
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_dde364
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %39 = OpLabel
- %40 = OpFunctionCall %void %textureStore_dde364
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %textureStore_dde364
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/e885e8.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/e885e8.wgsl.expected.spvasm
index db9ea1d..4e0f0a3 100644
--- a/test/intrinsics/gen/textureStore/e885e8.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/e885e8.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_e885e8 "textureStore_e885e8"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 1D 0 0 0 2 Rgba16f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
- %20 = OpTypeFunction %void %v4float
+ %20 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_e885e8 = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %int_1 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %int_1 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %20
+ %22 = OpLabel
+ %23 = OpFunctionCall %void %textureStore_e885e8
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%25 = OpLabel
- OpStore %tint_pointsize %float_1
- %27 = OpFunctionCall %void %textureStore_e885e8
- %28 = OpFunctionCall %void %tint_symbol_2 %11
+ %26 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %26
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %30 = OpLabel
- %31 = OpFunctionCall %void %textureStore_e885e8
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %textureStore_e885e8
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_e885e8
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_e885e8
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/eb702f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/eb702f.wgsl.expected.spvasm
index a33b490..8e0f51a 100644
--- a/test/intrinsics/gen/textureStore/eb702f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/eb702f.wgsl.expected.spvasm
@@ -1,73 +1,71 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_eb702f "textureStore_eb702f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 R32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 R32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_eb702f = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_eb702f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_eb702f
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_eb702f
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_eb702f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_eb702f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_eb702f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/eb78b9.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/eb78b9.wgsl.expected.spvasm
index fec7f88..fd0eaa0 100644
--- a/test/intrinsics/gen/textureStore/eb78b9.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/eb78b9.wgsl.expected.spvasm
@@ -1,75 +1,73 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_eb78b9 "textureStore_eb78b9"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 3D 0 0 0 2 R32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 3D 0 0 0 2 R32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
%v4int = OpTypeVector %int 4
%22 = OpConstantNull %v4int
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_eb78b9 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %20 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_eb78b9
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_eb78b9
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_eb78b9
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_eb78b9
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_eb78b9
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_eb78b9
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/ee6acc.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/ee6acc.wgsl.expected.spvasm
index 5a8e5203..3a82903 100644
--- a/test/intrinsics/gen/textureStore/ee6acc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/ee6acc.wgsl.expected.spvasm
@@ -1,74 +1,72 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_ee6acc "textureStore_ee6acc"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 3D 0 0 0 2 Rg32f
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 3D 0 0 0 2 Rg32f
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%20 = OpConstantNull %v3int
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_ee6acc = OpFunction %void None %12
%15 = OpLabel
- %17 = OpLoad %7 %arg_0
- OpImageWrite %17 %20 %11
+ %17 = OpLoad %11 %arg_0
+ OpImageWrite %17 %20 %5
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %textureStore_ee6acc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %12
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %textureStore_ee6acc
- %29 = OpFunctionCall %void %tint_symbol_2 %11
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %12
- %31 = OpLabel
- %32 = OpFunctionCall %void %textureStore_ee6acc
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %textureStore_ee6acc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %12
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_ee6acc
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_ee6acc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/ef9f2f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/ef9f2f.wgsl.expected.spvasm
index 0d35fe8..1398642 100644
--- a/test/intrinsics/gen/textureStore/ef9f2f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/ef9f2f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_ef9f2f "textureStore_ef9f2f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 R32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 R32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v3int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_ef9f2f = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_ef9f2f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_ef9f2f
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_ef9f2f
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_ef9f2f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_ef9f2f
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_ef9f2f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/f8dead.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/f8dead.wgsl.expected.spvasm
index 382a8c1..9ac9d9f 100644
--- a/test/intrinsics/gen/textureStore/f8dead.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/f8dead.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_f8dead "textureStore_f8dead"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 3D 0 0 0 2 Rgba8ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,34 +42,33 @@
%21 = OpConstantNull %v3int
%v4uint = OpTypeVector %uint 4
%23 = OpConstantNull %v4uint
- %24 = OpTypeFunction %void %v4float
+ %24 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_f8dead = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %21 %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %27 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %textureStore_f8dead
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpFunctionCall %void %textureStore_f8dead
- %32 = OpFunctionCall %void %tint_symbol_2 %12
+ %30 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %34 = OpLabel
- %35 = OpFunctionCall %void %textureStore_f8dead
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %textureStore_f8dead
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %37 = OpLabel
- %38 = OpFunctionCall %void %textureStore_f8dead
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %textureStore_f8dead
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/f9be83.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/f9be83.wgsl.expected.spvasm
index af3adfc..525247c 100644
--- a/test/intrinsics/gen/textureStore/f9be83.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/f9be83.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpCapability StorageImageExtendedFormats
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_f9be83 "textureStore_f9be83"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rg32i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rg32i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
@@ -45,34 +44,33 @@
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4int = OpTypeVector %int 4
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_f9be83 = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %22 %24
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureStore_f9be83
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureStore_f9be83
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_f9be83
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_f9be83
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureStore_f9be83
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureStore_f9be83
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/fb9a8f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/fb9a8f.wgsl.expected.spvasm
index 414eb1c..9a0f947 100644
--- a/test/intrinsics/gen/textureStore/fb9a8f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/fb9a8f.wgsl.expected.spvasm
@@ -1,76 +1,74 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability Image1D
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_fb9a8f "textureStore_fb9a8f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
- %7 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %uint = OpTypeInt 32 0
+ %11 = OpTypeImage %uint 1D 0 0 0 2 Rgba32ui
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%v4uint = OpTypeVector %uint 4
%22 = OpConstantNull %v4uint
- %23 = OpTypeFunction %void %v4float
+ %23 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_fb9a8f = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %int_1 %22
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %v4float
- %26 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %23
+ %25 = OpLabel
+ %26 = OpFunctionCall %void %textureStore_fb9a8f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpFunctionCall %void %textureStore_fb9a8f
- %31 = OpFunctionCall %void %tint_symbol_2 %12
+ %29 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %29
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %33 = OpLabel
- %34 = OpFunctionCall %void %textureStore_fb9a8f
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %textureStore_fb9a8f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %36 = OpLabel
- %37 = OpFunctionCall %void %textureStore_fb9a8f
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %textureStore_fb9a8f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/textureStore/fbf53f.wgsl.expected.spvasm b/test/intrinsics/gen/textureStore/fbf53f.wgsl.expected.spvasm
index 3ac4b4d..a037be9 100644
--- a/test/intrinsics/gen/textureStore/fbf53f.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/textureStore/fbf53f.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 39
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %textureStore_fbf53f "textureStore_fbf53f"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 NonReadable
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
- %7 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %int = OpTypeInt 32 1
+ %11 = OpTypeImage %int 2D 0 1 0 2 Rgba8i
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
%void = OpTypeVoid
%13 = OpTypeFunction %void
%v3int = OpTypeVector %int 3
@@ -44,34 +43,33 @@
%22 = OpConstantComposite %v3int %int_0 %int_0 %int_1
%v4int = OpTypeVector %int 4
%24 = OpConstantNull %v4int
- %25 = OpTypeFunction %void %v4float
+ %25 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%textureStore_fbf53f = OpFunction %void None %13
%16 = OpLabel
- %18 = OpLoad %7 %arg_0
+ %18 = OpLoad %11 %arg_0
OpImageWrite %18 %22 %24
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %25
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %textureStore_fbf53f
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %13
%30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %textureStore_fbf53f
- %33 = OpFunctionCall %void %tint_symbol_2 %12
+ %31 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %31
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %13
- %35 = OpLabel
- %36 = OpFunctionCall %void %textureStore_fbf53f
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %textureStore_fbf53f
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %13
- %38 = OpLabel
- %39 = OpFunctionCall %void %textureStore_fbf53f
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %textureStore_fbf53f
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/2585cd.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/2585cd.wgsl.expected.spvasm
index fc0fd44..b91c1a9 100644
--- a/test/intrinsics/gen/transpose/2585cd.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/2585cd.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_2585cd "transpose_2585cd"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%mat3v4float = OpTypeMatrix %v4float 3
@@ -37,7 +36,7 @@
%17 = OpConstantNull %mat4v3float
%_ptr_Function_mat3v4float = OpTypePointer Function %mat3v4float
%20 = OpConstantNull %mat3v4float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_2585cd = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %transpose_2585cd
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %transpose_2585cd
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %transpose_2585cd
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %transpose_2585cd
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %transpose_2585cd
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %transpose_2585cd
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/31d679.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/31d679.wgsl.expected.spvasm
index 1ee07f7..c6e3c94 100644
--- a/test/intrinsics/gen/transpose/31d679.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/31d679.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_31d679 "transpose_31d679"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
%16 = OpConstantNull %mat2v2float
%_ptr_Function_mat2v2float = OpTypePointer Function %mat2v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_31d679 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %transpose_31d679
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %transpose_31d679
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %transpose_31d679
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %transpose_31d679
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %transpose_31d679
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %transpose_31d679
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/31e37e.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/31e37e.wgsl.expected.spvasm
index 158422f..3b97b35 100644
--- a/test/intrinsics/gen/transpose/31e37e.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/31e37e.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_31e37e "transpose_31e37e"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%mat2v4float = OpTypeMatrix %v4float 2
@@ -37,7 +36,7 @@
%17 = OpConstantNull %mat4v2float
%_ptr_Function_mat2v4float = OpTypePointer Function %mat2v4float
%20 = OpConstantNull %mat2v4float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_31e37e = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %transpose_31e37e
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %transpose_31e37e
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %transpose_31e37e
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %transpose_31e37e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %transpose_31e37e
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %transpose_31e37e
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/4ce359.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/4ce359.wgsl.expected.spvasm
index fdf46e0..4324939 100644
--- a/test/intrinsics/gen/transpose/4ce359.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/4ce359.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_4ce359 "transpose_4ce359"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -37,7 +36,7 @@
%17 = OpConstantNull %mat2v4float
%_ptr_Function_mat4v2float = OpTypePointer Function %mat4v2float
%20 = OpConstantNull %mat4v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_4ce359 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %transpose_4ce359
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %transpose_4ce359
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %transpose_4ce359
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %transpose_4ce359
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %transpose_4ce359
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %transpose_4ce359
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/4dc9a1.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/4dc9a1.wgsl.expected.spvasm
index 6d64c76..a67bcff 100644
--- a/test/intrinsics/gen/transpose/4dc9a1.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/4dc9a1.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_4dc9a1 "transpose_4dc9a1"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -38,7 +37,7 @@
%18 = OpConstantNull %mat2v3float
%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
%21 = OpConstantNull %mat3v2float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_4dc9a1 = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %transpose_4dc9a1
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %transpose_4dc9a1
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %transpose_4dc9a1
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %transpose_4dc9a1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %transpose_4dc9a1
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %transpose_4dc9a1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/854336.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/854336.wgsl.expected.spvasm
index b00b2ce..21308c0 100644
--- a/test/intrinsics/gen/transpose/854336.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/854336.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_854336 "transpose_854336"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%mat3v3float = OpTypeMatrix %v3float 3
%16 = OpConstantNull %mat3v3float
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_854336 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %transpose_854336
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %transpose_854336
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %transpose_854336
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %transpose_854336
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %transpose_854336
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %transpose_854336
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/c1b600.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/c1b600.wgsl.expected.spvasm
index 4608d07..cb8a504 100644
--- a/test/intrinsics/gen/transpose/c1b600.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/c1b600.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_c1b600 "transpose_c1b600"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
%15 = OpConstantNull %mat4v4float
%_ptr_Function_mat4v4float = OpTypePointer Function %mat4v4float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_c1b600 = OpFunction %void None %9
%12 = OpLabel
@@ -43,26 +42,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %transpose_c1b600
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %25 = OpFunctionCall %void %transpose_c1b600
- %26 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %28 = OpLabel
- %29 = OpFunctionCall %void %transpose_c1b600
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %transpose_c1b600
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %transpose_c1b600
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %transpose_c1b600
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/d8f8ba.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/d8f8ba.wgsl.expected.spvasm
index 4d2ce13..e28c4ff 100644
--- a/test/intrinsics/gen/transpose/d8f8ba.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/d8f8ba.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_d8f8ba "transpose_d8f8ba"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -37,7 +36,7 @@
%17 = OpConstantNull %mat3v4float
%_ptr_Function_mat4v3float = OpTypePointer Function %mat4v3float
%20 = OpConstantNull %mat4v3float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_d8f8ba = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %transpose_d8f8ba
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %transpose_d8f8ba
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %transpose_d8f8ba
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %transpose_d8f8ba
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %transpose_d8f8ba
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %transpose_d8f8ba
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/transpose/ed4bdc.wgsl.expected.spvasm b/test/intrinsics/gen/transpose/ed4bdc.wgsl.expected.spvasm
index d6ed5c4..d413d04 100644
--- a/test/intrinsics/gen/transpose/ed4bdc.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/transpose/ed4bdc.wgsl.expected.spvasm
@@ -1,34 +1,33 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %transpose_ed4bdc "transpose_ed4bdc"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -38,7 +37,7 @@
%18 = OpConstantNull %mat3v2float
%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
%21 = OpConstantNull %mat2v3float
- %22 = OpTypeFunction %void %v4float
+ %22 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%transpose_ed4bdc = OpFunction %void None %9
%12 = OpLabel
@@ -47,26 +46,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %22
-%tint_symbol = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %22
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %transpose_ed4bdc
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %transpose_ed4bdc
- %30 = OpFunctionCall %void %tint_symbol_2 %8
+ %28 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %transpose_ed4bdc
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %transpose_ed4bdc
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %35 = OpLabel
- %36 = OpFunctionCall %void %transpose_ed4bdc
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %transpose_ed4bdc
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/trunc/562d05.wgsl.expected.spvasm b/test/intrinsics/gen/trunc/562d05.wgsl.expected.spvasm
index adf112b..afd4688 100644
--- a/test/intrinsics/gen/trunc/562d05.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/trunc/562d05.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %trunc_562d05 "trunc_562d05"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%trunc_562d05 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %trunc_562d05
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %trunc_562d05
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %trunc_562d05
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %trunc_562d05
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %trunc_562d05
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %trunc_562d05
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/trunc/e183aa.wgsl.expected.spvasm b/test/intrinsics/gen/trunc/e183aa.wgsl.expected.spvasm
index fb0d60a..c435014 100644
--- a/test/intrinsics/gen/trunc/e183aa.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/trunc/e183aa.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %trunc_e183aa "trunc_e183aa"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %17 = OpTypeFunction %void %v4float
+ %17 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%trunc_e183aa = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
- %13 = OpExtInst %v4float %14 Trunc %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
+ %13 = OpExtInst %v4float %14 Trunc %5
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %v4float
- %20 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %17
+ %19 = OpLabel
+ %20 = OpFunctionCall %void %trunc_e183aa
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %trunc_e183aa
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %23 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %trunc_e183aa
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %trunc_e183aa
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %trunc_e183aa
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %trunc_e183aa
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/trunc/eb83df.wgsl.expected.spvasm b/test/intrinsics/gen/trunc/eb83df.wgsl.expected.spvasm
index f950d5d..2152182 100644
--- a/test/intrinsics/gen/trunc/eb83df.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/trunc/eb83df.wgsl.expected.spvasm
@@ -1,67 +1,65 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %trunc_eb83df "trunc_eb83df"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
- %18 = OpTypeFunction %void %v4float
+ %18 = OpTypeFunction %v4float
%trunc_eb83df = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
%13 = OpExtInst %float %14 Trunc %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %v4float
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %18
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %trunc_eb83df
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %trunc_eb83df
- %25 = OpFunctionCall %void %tint_symbol_2 %8
+ %24 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %27 = OpLabel
- %28 = OpFunctionCall %void %trunc_eb83df
+ %26 = OpLabel
+ %27 = OpFunctionCall %void %trunc_eb83df
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %30 = OpLabel
- %31 = OpFunctionCall %void %trunc_eb83df
+ %29 = OpLabel
+ %30 = OpFunctionCall %void %trunc_eb83df
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/trunc/f370d3.wgsl.expected.spvasm b/test/intrinsics/gen/trunc/f370d3.wgsl.expected.spvasm
index 7736f48..f02cd4c 100644
--- a/test/intrinsics/gen/trunc/f370d3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/trunc/f370d3.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %trunc_f370d3 "trunc_f370d3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%trunc_f370d3 = OpFunction %void None %9
%12 = OpLabel
@@ -44,26 +43,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %trunc_f370d3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %trunc_f370d3
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %trunc_f370d3
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %trunc_f370d3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %trunc_f370d3
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %trunc_f370d3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/unpack2x16float/32a5cf.wgsl.expected.spvasm b/test/intrinsics/gen/unpack2x16float/32a5cf.wgsl.expected.spvasm
index f094822..93ec857 100644
--- a/test/intrinsics/gen/unpack2x16float/32a5cf.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/unpack2x16float/32a5cf.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %unpack2x16float_32a5cf "unpack2x16float_32a5cf"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -37,7 +36,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%20 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%unpack2x16float_32a5cf = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %unpack2x16float_32a5cf
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %unpack2x16float_32a5cf
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %unpack2x16float_32a5cf
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %unpack2x16float_32a5cf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %unpack2x16float_32a5cf
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %unpack2x16float_32a5cf
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/unpack2x16snorm/b4aea6.wgsl.expected.spvasm b/test/intrinsics/gen/unpack2x16snorm/b4aea6.wgsl.expected.spvasm
index 9dcabf8..74d879c 100644
--- a/test/intrinsics/gen/unpack2x16snorm/b4aea6.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/unpack2x16snorm/b4aea6.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %unpack2x16snorm_b4aea6 "unpack2x16snorm_b4aea6"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -37,7 +36,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%20 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%unpack2x16snorm_b4aea6 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %unpack2x16snorm_b4aea6
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %unpack2x16snorm_b4aea6
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %unpack2x16snorm_b4aea6
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %unpack2x16snorm_b4aea6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %unpack2x16snorm_b4aea6
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %unpack2x16snorm_b4aea6
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/unpack2x16unorm/7699c0.wgsl.expected.spvasm b/test/intrinsics/gen/unpack2x16unorm/7699c0.wgsl.expected.spvasm
index e36eed5..17378db 100644
--- a/test/intrinsics/gen/unpack2x16unorm/7699c0.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/unpack2x16unorm/7699c0.wgsl.expected.spvasm
@@ -1,35 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %unpack2x16unorm_7699c0 "unpack2x16unorm_7699c0"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -37,7 +36,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%20 = OpConstantNull %v2float
- %21 = OpTypeFunction %void %v4float
+ %21 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%unpack2x16unorm_7699c0 = OpFunction %void None %9
%12 = OpLabel
@@ -46,26 +45,25 @@
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %v4float
- %24 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %21
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %unpack2x16unorm_7699c0
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %unpack2x16unorm_7699c0
- %29 = OpFunctionCall %void %tint_symbol_2 %8
+ %27 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %31 = OpLabel
- %32 = OpFunctionCall %void %unpack2x16unorm_7699c0
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %unpack2x16unorm_7699c0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %34 = OpLabel
- %35 = OpFunctionCall %void %unpack2x16unorm_7699c0
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %unpack2x16unorm_7699c0
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/unpack4x8snorm/523fb3.wgsl.expected.spvasm b/test/intrinsics/gen/unpack4x8snorm/523fb3.wgsl.expected.spvasm
index 1b26065..d8e904a 100644
--- a/test/intrinsics/gen/unpack4x8snorm/523fb3.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/unpack4x8snorm/523fb3.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %unpack4x8snorm_523fb3 "unpack4x8snorm_523fb3"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%unpack4x8snorm_523fb3 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
%13 = OpExtInst %v4float %14 UnpackSnorm4x8 %uint_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %unpack4x8snorm_523fb3
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %unpack4x8snorm_523fb3
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %unpack4x8snorm_523fb3
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %unpack4x8snorm_523fb3
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %unpack4x8snorm_523fb3
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %unpack4x8snorm_523fb3
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/gen/unpack4x8unorm/750c74.wgsl.expected.spvasm b/test/intrinsics/gen/unpack4x8unorm/750c74.wgsl.expected.spvasm
index c61f7da..d251b3b 100644
--- a/test/intrinsics/gen/unpack4x8unorm/750c74.wgsl.expected.spvasm
+++ b/test/intrinsics/gen/unpack4x8unorm/750c74.wgsl.expected.spvasm
@@ -1,69 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
+ OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %unpack4x8unorm_750c74 "unpack4x8unorm_750c74"
OpName %res "res"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
- %19 = OpTypeFunction %void %v4float
+ %19 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%unpack4x8unorm_750c74 = OpFunction %void None %9
%12 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %res = OpVariable %_ptr_Function_v4float Function %5
%13 = OpExtInst %v4float %14 UnpackUnorm4x8 %uint_1
OpStore %res %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %v4float
- %22 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%vertex_main_inner = OpFunction %v4float None %19
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %unpack4x8unorm_750c74
+ OpReturnValue %5
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %unpack4x8unorm_750c74
- %27 = OpFunctionCall %void %tint_symbol_2 %8
+ %25 = OpFunctionCall %v4float %vertex_main_inner
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
- %29 = OpLabel
- %30 = OpFunctionCall %void %unpack4x8unorm_750c74
+ %28 = OpLabel
+ %29 = OpFunctionCall %void %unpack4x8unorm_750c74
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
- %32 = OpLabel
- %33 = OpFunctionCall %void %unpack4x8unorm_750c74
+ %31 = OpLabel
+ %32 = OpFunctionCall %void %unpack4x8unorm_750c74
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.spvasm b/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.spvasm
index 9f80aa2..3e9f5e3 100644
--- a/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.spvasm
+++ b/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.spvasm
@@ -1,20 +1,20 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_4
+ OpEntryPoint Vertex %vertex_main "vertex_main" %tint_symbol_1_1_1 %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %tint_symbol_1_1_1 "tint_symbol_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %textureDimensions_f60bdb "textureDimensions_f60bdb"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
@@ -22,33 +22,32 @@
OpName %vertex_main_1 "vertex_main_1"
OpName %vertex_main_out "vertex_main_out"
OpMemberName %vertex_main_out 0 "tint_symbol_1_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main_1 "fragment_main_1"
OpName %fragment_main "fragment_main"
OpName %compute_main_1 "compute_main_1"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %tint_symbol_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_4 BuiltIn Position
OpMemberDecorate %vertex_main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
- %float_0 = OpConstant %float 0
- %10 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
-%_ptr_Private_v4float = OpTypePointer Private %v4float
-%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %10
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %15 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %15
+ %5 = OpConstantNull %v4float
+%tint_symbol_1_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %float_0 = OpConstant %float 0
+ %13 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %13
%void = OpTypeVoid
%16 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,13 +58,13 @@
%26 = OpConstantNull %v2int
%30 = OpTypeFunction %void %v4float
%vertex_main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %vertex_main_out
+ %38 = OpTypeFunction %vertex_main_out
%float_1 = OpConstant %float 1
%textureDimensions_f60bdb = OpFunction %void None %16
%19 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %26
OpStore %res %23
- %29 = OpLoad %7 %arg_0
+ %29 = OpLoad %11 %arg_0
%28 = OpImageQuerySize %v2int %29
OpStore %res %28
OpReturn
@@ -79,42 +78,41 @@
%vertex_main_1 = OpFunction %void None %16
%35 = OpLabel
%36 = OpFunctionCall %void %textureDimensions_f60bdb
- %37 = OpFunctionCall %void %tint_symbol_2 %10
+ %37 = OpFunctionCall %void %tint_symbol_2 %13
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %38
-%tint_symbol_3 = OpFunctionParameter %vertex_main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol_3 0
- OpStore %tint_symbol_4 %43
- OpReturn
+%vertex_main_inner = OpFunction %vertex_main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %vertex_main_1
+ %43 = OpLoad %v4float %tint_symbol_1
+ %44 = OpCompositeConstruct %vertex_main_out %43
+ OpReturnValue %44
OpFunctionEnd
%vertex_main = OpFunction %void None %16
- %45 = OpLabel
- OpStore %tint_pointsize %float_1
- %47 = OpFunctionCall %void %vertex_main_1
- %49 = OpLoad %v4float %tint_symbol_1
- %50 = OpCompositeConstruct %vertex_main_out %49
- %48 = OpFunctionCall %void %tint_symbol_5 %50
+ %46 = OpLabel
+ %47 = OpFunctionCall %vertex_main_out %vertex_main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %tint_symbol_1_1_1 %48
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main_1 = OpFunction %void None %16
- %52 = OpLabel
- %53 = OpFunctionCall %void %textureDimensions_f60bdb
+ %51 = OpLabel
+ %52 = OpFunctionCall %void %textureDimensions_f60bdb
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %16
- %55 = OpLabel
- %56 = OpFunctionCall %void %fragment_main_1
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %fragment_main_1
OpReturn
OpFunctionEnd
%compute_main_1 = OpFunction %void None %16
- %58 = OpLabel
- %59 = OpFunctionCall %void %textureDimensions_f60bdb
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %textureDimensions_f60bdb
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %16
- %61 = OpLabel
- %62 = OpFunctionCall %void %compute_main_1
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %compute_main_1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/textureLoad/depth_ms.spvasm.expected.spvasm b/test/intrinsics/textureLoad/depth_ms.spvasm.expected.spvasm
index 4a5da4d..94ddf71 100644
--- a/test/intrinsics/textureLoad/depth_ms.spvasm.expected.spvasm
+++ b/test/intrinsics/textureLoad/depth_ms.spvasm.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_4
+ OpEntryPoint Vertex %vertex_main "vertex_main" %tint_symbol_1_1_1 %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %tint_symbol_1_1_1 "tint_symbol_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %textureLoad_6273b1 "textureLoad_6273b1"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
@@ -21,33 +21,32 @@
OpName %vertex_main_1 "vertex_main_1"
OpName %vertex_main_out "vertex_main_out"
OpMemberName %vertex_main_out 0 "tint_symbol_1_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main_1 "fragment_main_1"
OpName %fragment_main "fragment_main"
OpName %compute_main_1 "compute_main_1"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %tint_symbol_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_4 BuiltIn Position
OpMemberDecorate %vertex_main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
- %float_0 = OpConstant %float 0
- %10 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
-%_ptr_Private_v4float = OpTypePointer Private %v4float
-%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %10
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %15 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %15
+ %5 = OpConstantNull %v4float
+%tint_symbol_1_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %float_0 = OpConstant %float 0
+ %13 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %13
%void = OpTypeVoid
%16 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -58,13 +57,13 @@
%int_1 = OpConstant %int 1
%32 = OpTypeFunction %void %v4float
%vertex_main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %vertex_main_out
+ %40 = OpTypeFunction %vertex_main_out
%float_1 = OpConstant %float 1
%textureLoad_6273b1 = OpFunction %void None %16
%19 = OpLabel
- %res = OpVariable %_ptr_Function_float Function %4
+ %res = OpVariable %_ptr_Function_float Function %8
OpStore %res %float_0
- %24 = OpLoad %7 %arg_0
+ %24 = OpLoad %11 %arg_0
%23 = OpImageFetch %v4float %24 %28 Sample %int_1
%22 = OpCompositeExtract %float %23 0
%30 = OpCompositeConstruct %v4float %22 %float_0 %float_0 %float_0
@@ -81,42 +80,41 @@
%vertex_main_1 = OpFunction %void None %16
%37 = OpLabel
%38 = OpFunctionCall %void %textureLoad_6273b1
- %39 = OpFunctionCall %void %tint_symbol_2 %10
+ %39 = OpFunctionCall %void %tint_symbol_2 %13
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %40
-%tint_symbol_3 = OpFunctionParameter %vertex_main_out
- %44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol_3 0
- OpStore %tint_symbol_4 %45
- OpReturn
+%vertex_main_inner = OpFunction %vertex_main_out None %40
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %vertex_main_1
+ %45 = OpLoad %v4float %tint_symbol_1
+ %46 = OpCompositeConstruct %vertex_main_out %45
+ OpReturnValue %46
OpFunctionEnd
%vertex_main = OpFunction %void None %16
- %47 = OpLabel
- OpStore %tint_pointsize %float_1
- %49 = OpFunctionCall %void %vertex_main_1
- %51 = OpLoad %v4float %tint_symbol_1
- %52 = OpCompositeConstruct %vertex_main_out %51
- %50 = OpFunctionCall %void %tint_symbol_5 %52
+ %48 = OpLabel
+ %49 = OpFunctionCall %vertex_main_out %vertex_main_inner
+ %50 = OpCompositeExtract %v4float %49 0
+ OpStore %tint_symbol_1_1_1 %50
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main_1 = OpFunction %void None %16
- %54 = OpLabel
- %55 = OpFunctionCall %void %textureLoad_6273b1
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %textureLoad_6273b1
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %16
- %57 = OpLabel
- %58 = OpFunctionCall %void %fragment_main_1
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %fragment_main_1
OpReturn
OpFunctionEnd
%compute_main_1 = OpFunction %void None %16
- %60 = OpLabel
- %61 = OpFunctionCall %void %textureLoad_6273b1
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %textureLoad_6273b1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %16
- %63 = OpLabel
- %64 = OpFunctionCall %void %compute_main_1
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %compute_main_1
OpReturn
OpFunctionEnd
diff --git a/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.spvasm b/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.spvasm
index 5cda796..14bc9db 100644
--- a/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.spvasm
+++ b/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.spvasm
@@ -1,20 +1,20 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 60
+; Bound: 59
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_4
+ OpEntryPoint Vertex %vertex_main "vertex_main" %tint_symbol_1_1_1 %vertex_point_size
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
+ OpName %tint_symbol_1_1_1 "tint_symbol_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %arg_0 "arg_0"
OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %textureNumSamples_a3c8a0 "textureNumSamples_a3c8a0"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
@@ -22,33 +22,32 @@
OpName %vertex_main_1 "vertex_main_1"
OpName %vertex_main_out "vertex_main_out"
OpMemberName %vertex_main_out 0 "tint_symbol_1_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %vertex_main_inner "vertex_main_inner"
OpName %vertex_main "vertex_main"
OpName %fragment_main_1 "fragment_main_1"
OpName %fragment_main "fragment_main"
OpName %compute_main_1 "compute_main_1"
OpName %compute_main "compute_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %tint_symbol_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %arg_0 DescriptorSet 1
OpDecorate %arg_0 Binding 0
- OpDecorate %tint_symbol_4 BuiltIn Position
OpMemberDecorate %vertex_main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %7 = OpTypeImage %float 2D 1 0 1 1 Unknown
-%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
- %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
%v4float = OpTypeVector %float 4
- %float_0 = OpConstant %float 0
- %10 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
-%_ptr_Private_v4float = OpTypePointer Private %v4float
-%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %10
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %15 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %15
+ %5 = OpConstantNull %v4float
+%tint_symbol_1_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %11 = OpTypeImage %float 2D 1 0 1 1 Unknown
+%_ptr_UniformConstant_11 = OpTypePointer UniformConstant %11
+ %arg_0 = OpVariable %_ptr_UniformConstant_11 UniformConstant
+ %float_0 = OpConstant %float 0
+ %13 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%tint_symbol_1 = OpVariable %_ptr_Private_v4float Private %13
%void = OpTypeVoid
%16 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -57,13 +56,13 @@
%24 = OpConstantNull %int
%27 = OpTypeFunction %void %v4float
%vertex_main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %vertex_main_out
+ %35 = OpTypeFunction %vertex_main_out
%float_1 = OpConstant %float 1
%textureNumSamples_a3c8a0 = OpFunction %void None %16
%19 = OpLabel
%res = OpVariable %_ptr_Function_int Function %24
OpStore %res %int_0
- %26 = OpLoad %7 %arg_0
+ %26 = OpLoad %11 %arg_0
%25 = OpImageQuerySamples %int %26
OpStore %res %25
OpReturn
@@ -77,42 +76,41 @@
%vertex_main_1 = OpFunction %void None %16
%32 = OpLabel
%33 = OpFunctionCall %void %textureNumSamples_a3c8a0
- %34 = OpFunctionCall %void %tint_symbol_2 %10
+ %34 = OpFunctionCall %void %tint_symbol_2 %13
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %35
-%tint_symbol_3 = OpFunctionParameter %vertex_main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol_3 0
- OpStore %tint_symbol_4 %40
- OpReturn
+%vertex_main_inner = OpFunction %vertex_main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %vertex_main_1
+ %40 = OpLoad %v4float %tint_symbol_1
+ %41 = OpCompositeConstruct %vertex_main_out %40
+ OpReturnValue %41
OpFunctionEnd
%vertex_main = OpFunction %void None %16
- %42 = OpLabel
- OpStore %tint_pointsize %float_1
- %44 = OpFunctionCall %void %vertex_main_1
- %46 = OpLoad %v4float %tint_symbol_1
- %47 = OpCompositeConstruct %vertex_main_out %46
- %45 = OpFunctionCall %void %tint_symbol_5 %47
+ %43 = OpLabel
+ %44 = OpFunctionCall %vertex_main_out %vertex_main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %tint_symbol_1_1_1 %45
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%fragment_main_1 = OpFunction %void None %16
- %49 = OpLabel
- %50 = OpFunctionCall %void %textureNumSamples_a3c8a0
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %textureNumSamples_a3c8a0
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %16
- %52 = OpLabel
- %53 = OpFunctionCall %void %fragment_main_1
+ %51 = OpLabel
+ %52 = OpFunctionCall %void %fragment_main_1
OpReturn
OpFunctionEnd
%compute_main_1 = OpFunction %void None %16
- %55 = OpLabel
- %56 = OpFunctionCall %void %textureNumSamples_a3c8a0
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %textureNumSamples_a3c8a0
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %16
- %58 = OpLabel
- %59 = OpFunctionCall %void %compute_main_1
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %compute_main_1
OpReturn
OpFunctionEnd
diff --git a/test/ptr_ref/load/local/ptr_workgroup.wgsl.expected.spvasm b/test/ptr_ref/load/local/ptr_workgroup.wgsl.expected.spvasm
index 16569a9..35e8457 100644
--- a/test/ptr_ref/load/local/ptr_workgroup.wgsl.expected.spvasm
+++ b/test/ptr_ref/load/local/ptr_workgroup.wgsl.expected.spvasm
@@ -1,35 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 19
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %i "i"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%i = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %7 = OpTypeFunction %void
- %11 = OpConstantNull %int
+ %7 = OpTypeFunction %void %uint
+ %12 = OpConstantNull %int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%int_123 = OpConstant %int 123
%int_1 = OpConstant %int 1
- %main = OpFunction %void None %7
- %10 = OpLabel
- OpStore %i %11
+ %20 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %7
+%local_invocation_index = OpFunctionParameter %uint
+ %11 = OpLabel
+ OpStore %i %12
OpControlBarrier %uint_2 %uint_2 %uint_264
OpStore %i %int_123
- %16 = OpLoad %int %i
- %18 = OpIAdd %int %16 %int_1
+ %17 = OpLoad %int %i
+ %19 = OpIAdd %int %17 %int_1
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %20
+ %22 = OpLabel
+ %24 = OpLoad %uint %local_invocation_index_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/samples/compute_boids.wgsl.expected.spvasm b/test/samples/compute_boids.wgsl.expected.spvasm
index 0ff734e..e6305a7 100644
--- a/test/samples/compute_boids.wgsl.expected.spvasm
+++ b/test/samples/compute_boids.wgsl.expected.spvasm
@@ -1,22 +1,23 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 279
+; Bound: 280
; Schema: 0
OpCapability Shader
- %40 = OpExtInstImport "GLSL.std.450"
+ %37 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vert_main "vert_main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol %tint_symbol_4
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_7
- OpEntryPoint GLCompute %comp_main "comp_main" %tint_symbol_9
+ OpEntryPoint Vertex %vert_main "vert_main" %a_particlePos_1 %a_particleVel_1 %a_pos_1 %value %vertex_point_size
+ OpEntryPoint Fragment %frag_main "frag_main" %value_1
+ OpEntryPoint GLCompute %comp_main "comp_main" %gl_GlobalInvocationID_1
OpExecutionMode %frag_main OriginUpperLeft
OpExecutionMode %comp_main LocalSize 1 1 1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_7 "tint_symbol_7"
+ OpName %a_particlePos_1 "a_particlePos_1"
+ OpName %a_particleVel_1 "a_particleVel_1"
+ OpName %a_pos_1 "a_pos_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %value_1 "value_1"
+ OpName %gl_GlobalInvocationID_1 "gl_GlobalInvocationID_1"
OpName %SimParams "SimParams"
OpMemberName %SimParams 0 "deltaT"
OpMemberName %SimParams 1 "rule1Distance"
@@ -33,16 +34,17 @@
OpMemberName %Particle 1 "vel"
OpName %particlesA "particlesA"
OpName %particlesB "particlesB"
- OpName %tint_symbol_9 "tint_symbol_9"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %vert_main "vert_main"
+ OpName %vert_main_inner "vert_main_inner"
+ OpName %a_particlePos "a_particlePos"
+ OpName %a_particleVel "a_particleVel"
+ OpName %a_pos "a_pos"
OpName %angle "angle"
OpName %pos "pos"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %vert_main "vert_main"
+ OpName %frag_main_inner "frag_main_inner"
OpName %frag_main "frag_main"
- OpName %comp_main "comp_main"
+ OpName %comp_main_inner "comp_main_inner"
+ OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
OpName %index "index"
OpName %vPos "vPos"
OpName %vVel "vVel"
@@ -54,12 +56,14 @@
OpName %pos_0 "pos"
OpName %vel "vel"
OpName %i "i"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_4 BuiltIn Position
- OpDecorate %tint_symbol_7 Location 0
+ OpName %comp_main "comp_main"
+ OpDecorate %a_particlePos_1 Location 0
+ OpDecorate %a_particleVel_1 Location 1
+ OpDecorate %a_pos_1 Location 2
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %value_1 Location 0
+ OpDecorate %gl_GlobalInvocationID_1 BuiltIn GlobalInvocationId
OpDecorate %SimParams Block
OpMemberDecorate %SimParams 0 Offset 0
OpMemberDecorate %SimParams 1 Offset 4
@@ -80,57 +84,56 @@
OpDecorate %particlesA DescriptorSet 0
OpDecorate %particlesB Binding 2
OpDecorate %particlesB DescriptorSet 0
- OpDecorate %tint_symbol_9 BuiltIn GlobalInvocationId
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v2float = OpTypeVector %float 2
%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v2float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v2float Input
+%a_particlePos_1 = OpVariable %_ptr_Input_v2float Input
+%a_particleVel_1 = OpVariable %_ptr_Input_v2float Input
+ %a_pos_1 = OpVariable %_ptr_Input_v2float Input
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %13 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %13
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %13
+ %10 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %10
+%_ptr_Output_float = OpTypePointer Output %float
+ %13 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %13
+ %value_1 = OpVariable %_ptr_Output_v4float Output %10
+ %uint = OpTypeInt 32 0
+ %v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_GlobalInvocationID_1 = OpVariable %_ptr_Input_v3uint Input
%SimParams = OpTypeStruct %float %float %float %float %float %float %float
%_ptr_Uniform_SimParams = OpTypePointer Uniform %SimParams
%params = OpVariable %_ptr_Uniform_SimParams Uniform
%Particle = OpTypeStruct %v2float %v2float
- %uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_Particle_uint_5 = OpTypeArray %Particle %uint_5
%Particles = OpTypeStruct %_arr_Particle_uint_5
%_ptr_StorageBuffer_Particles = OpTypePointer StorageBuffer %Particles
%particlesA = OpVariable %_ptr_StorageBuffer_Particles StorageBuffer
%particlesB = OpVariable %_ptr_StorageBuffer_Particles StorageBuffer
- %v3uint = OpTypeVector %uint 3
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol_9 = OpVariable %_ptr_Input_v3uint Input
- %void = OpTypeVoid
- %29 = OpTypeFunction %void %v4float
- %34 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
- %uint_0 = OpConstant %uint 0
-%_ptr_Input_float = OpTypePointer Input %float
- %uint_1 = OpConstant %uint 1
+ %29 = OpTypeFunction %v4float %v2float %v2float %v2float
%_ptr_Function_float = OpTypePointer Function %float
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %75 = OpConstantNull %v2float
+ %63 = OpConstantNull %v2float
%float_0 = OpConstant %float 0
- %90 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
-%_ptr_Input_uint = OpTypePointer Input %uint
+ %float_1 = OpConstant %float 1
+ %void = OpTypeVoid
+ %71 = OpTypeFunction %void
+ %79 = OpTypeFunction %v4float
+ %82 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
+ %86 = OpTypeFunction %void %v3uint
%_ptr_Function_uint = OpTypePointer Function %uint
- %98 = OpConstantNull %uint
+ %93 = OpConstantNull %uint
%bool = OpTypeBool
+ %uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v2float = OpTypePointer StorageBuffer %v2float
- %113 = OpConstantComposite %v2float %float_0 %float_0
+ %uint_1 = OpConstant %uint 1
+ %110 = OpConstantComposite %v2float %float_0 %float_0
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Function_int = OpTypePointer Function %int
- %121 = OpConstantNull %int
+ %118 = OpConstantNull %int
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%uint_2 = OpConstant %uint 2
@@ -139,306 +142,309 @@
%uint_6 = OpConstant %uint 6
%float_0_100000001 = OpConstant %float 0.100000001
%float_n1 = OpConstant %float -1
-%tint_symbol_5 = OpFunction %void None %29
-%tint_symbol_3 = OpFunctionParameter %v4float
- %33 = OpLabel
- OpStore %tint_symbol_4 %tint_symbol_3
- OpReturn
- OpFunctionEnd
- %vert_main = OpFunction %void None %34
- %36 = OpLabel
- %angle = OpVariable %_ptr_Function_float Function %4
- %pos = OpVariable %_ptr_Function_v2float Function %75
- OpStore %tint_pointsize %float_1
- %43 = OpAccessChain %_ptr_Input_float %tint_symbol_1 %uint_0
- %44 = OpLoad %float %43
- %46 = OpAccessChain %_ptr_Input_float %tint_symbol_1 %uint_1
- %47 = OpLoad %float %46
- %39 = OpExtInst %float %40 Atan2 %44 %47
- %38 = OpFNegate %float %39
- OpStore %angle %38
- %50 = OpAccessChain %_ptr_Input_float %tint_symbol_2 %uint_0
- %51 = OpLoad %float %50
+%vert_main_inner = OpFunction %v4float None %29
+%a_particlePos = OpFunctionParameter %v2float
+%a_particleVel = OpFunctionParameter %v2float
+ %a_pos = OpFunctionParameter %v2float
+ %34 = OpLabel
+ %angle = OpVariable %_ptr_Function_float Function %13
+ %pos = OpVariable %_ptr_Function_v2float Function %63
+ %38 = OpCompositeExtract %float %a_particleVel 0
+ %39 = OpCompositeExtract %float %a_particleVel 1
+ %36 = OpExtInst %float %37 Atan2 %38 %39
+ %35 = OpFNegate %float %36
+ OpStore %angle %35
+ %42 = OpCompositeExtract %float %a_pos 0
+ %44 = OpLoad %float %angle
+ %43 = OpExtInst %float %37 Cos %44
+ %45 = OpFMul %float %42 %43
+ %46 = OpCompositeExtract %float %a_pos 1
+ %48 = OpLoad %float %angle
+ %47 = OpExtInst %float %37 Sin %48
+ %49 = OpFMul %float %46 %47
+ %50 = OpFSub %float %45 %49
+ %51 = OpCompositeExtract %float %a_pos 0
%53 = OpLoad %float %angle
- %52 = OpExtInst %float %40 Cos %53
+ %52 = OpExtInst %float %37 Sin %53
%54 = OpFMul %float %51 %52
- %55 = OpAccessChain %_ptr_Input_float %tint_symbol_2 %uint_1
- %56 = OpLoad %float %55
- %58 = OpLoad %float %angle
- %57 = OpExtInst %float %40 Sin %58
- %59 = OpFMul %float %56 %57
- %60 = OpFSub %float %54 %59
- %61 = OpAccessChain %_ptr_Input_float %tint_symbol_2 %uint_0
- %62 = OpLoad %float %61
- %64 = OpLoad %float %angle
- %63 = OpExtInst %float %40 Sin %64
- %65 = OpFMul %float %62 %63
- %66 = OpAccessChain %_ptr_Input_float %tint_symbol_2 %uint_1
- %67 = OpLoad %float %66
- %69 = OpLoad %float %angle
- %68 = OpExtInst %float %40 Cos %69
- %70 = OpFMul %float %67 %68
- %71 = OpFAdd %float %65 %70
- %72 = OpCompositeConstruct %v2float %60 %71
- OpStore %pos %72
- %77 = OpLoad %v2float %pos
- %78 = OpLoad %v2float %tint_symbol
- %79 = OpFAdd %v2float %77 %78
- %80 = OpCompositeExtract %float %79 0
- %81 = OpCompositeExtract %float %79 1
- %83 = OpCompositeConstruct %v4float %80 %81 %float_0 %float_1
- %76 = OpFunctionCall %void %tint_symbol_5 %83
+ %55 = OpCompositeExtract %float %a_pos 1
+ %57 = OpLoad %float %angle
+ %56 = OpExtInst %float %37 Cos %57
+ %58 = OpFMul %float %55 %56
+ %59 = OpFAdd %float %54 %58
+ %60 = OpCompositeConstruct %v2float %50 %59
+ OpStore %pos %60
+ %64 = OpLoad %v2float %pos
+ %65 = OpFAdd %v2float %64 %a_particlePos
+ %66 = OpCompositeExtract %float %65 0
+ %67 = OpCompositeExtract %float %65 1
+ %70 = OpCompositeConstruct %v4float %66 %67 %float_0 %float_1
+ OpReturnValue %70
+ OpFunctionEnd
+ %vert_main = OpFunction %void None %71
+ %74 = OpLabel
+ %76 = OpLoad %v2float %a_particlePos_1
+ %77 = OpLoad %v2float %a_particleVel_1
+ %78 = OpLoad %v2float %a_pos_1
+ %75 = OpFunctionCall %v4float %vert_main_inner %76 %77 %78
+ OpStore %value %75
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %29
-%tint_symbol_6 = OpFunctionParameter %v4float
- %86 = OpLabel
- OpStore %tint_symbol_7 %tint_symbol_6
+%frag_main_inner = OpFunction %v4float None %79
+ %81 = OpLabel
+ OpReturnValue %82
+ OpFunctionEnd
+ %frag_main = OpFunction %void None %71
+ %84 = OpLabel
+ %85 = OpFunctionCall %v4float %frag_main_inner
+ OpStore %value_1 %85
OpReturn
OpFunctionEnd
- %frag_main = OpFunction %void None %34
- %88 = OpLabel
- %89 = OpFunctionCall %void %tint_symbol_8 %90
+%comp_main_inner = OpFunction %void None %86
+%gl_GlobalInvocationID = OpFunctionParameter %v3uint
+ %89 = OpLabel
+ %index = OpVariable %_ptr_Function_uint Function %93
+ %vPos = OpVariable %_ptr_Function_v2float Function %63
+ %vVel = OpVariable %_ptr_Function_v2float Function %63
+ %cMass = OpVariable %_ptr_Function_v2float Function %63
+ %cVel = OpVariable %_ptr_Function_v2float Function %63
+ %colVel = OpVariable %_ptr_Function_v2float Function %63
+ %cMassCount = OpVariable %_ptr_Function_int Function %118
+ %cVelCount = OpVariable %_ptr_Function_int Function %118
+ %pos_0 = OpVariable %_ptr_Function_v2float Function %63
+ %vel = OpVariable %_ptr_Function_v2float Function %63
+ %i = OpVariable %_ptr_Function_uint Function %93
+ %90 = OpCompositeExtract %uint %gl_GlobalInvocationID 0
+ OpStore %index %90
+ %94 = OpLoad %uint %index
+ %95 = OpUGreaterThanEqual %bool %94 %uint_5
+ OpSelectionMerge %97 None
+ OpBranchConditional %95 %98 %97
+ %98 = OpLabel
OpReturn
- OpFunctionEnd
- %comp_main = OpFunction %void None %34
- %92 = OpLabel
- %index = OpVariable %_ptr_Function_uint Function %98
- %vPos = OpVariable %_ptr_Function_v2float Function %75
- %vVel = OpVariable %_ptr_Function_v2float Function %75
- %cMass = OpVariable %_ptr_Function_v2float Function %75
- %cVel = OpVariable %_ptr_Function_v2float Function %75
- %colVel = OpVariable %_ptr_Function_v2float Function %75
- %cMassCount = OpVariable %_ptr_Function_int Function %121
- %cVelCount = OpVariable %_ptr_Function_int Function %121
- %pos_0 = OpVariable %_ptr_Function_v2float Function %75
- %vel = OpVariable %_ptr_Function_v2float Function %75
- %i = OpVariable %_ptr_Function_uint Function %98
- %94 = OpAccessChain %_ptr_Input_uint %tint_symbol_9 %uint_0
- %95 = OpLoad %uint %94
- OpStore %index %95
- %99 = OpLoad %uint %index
- %100 = OpUGreaterThanEqual %bool %99 %uint_5
- OpSelectionMerge %102 None
- OpBranchConditional %100 %103 %102
- %103 = OpLabel
- OpReturn
- %102 = OpLabel
- %104 = OpLoad %uint %index
- %106 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %104 %uint_0
- %107 = OpLoad %v2float %106
- OpStore %vPos %107
- %109 = OpLoad %uint %index
- %110 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %109 %uint_1
- %111 = OpLoad %v2float %110
- OpStore %vVel %111
- OpStore %cMass %113
- OpStore %cVel %113
- OpStore %colVel %113
+ %97 = OpLabel
+ %100 = OpLoad %uint %index
+ %102 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %100 %uint_0
+ %103 = OpLoad %v2float %102
+ OpStore %vPos %103
+ %105 = OpLoad %uint %index
+ %107 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %105 %uint_1
+ %108 = OpLoad %v2float %107
+ OpStore %vVel %108
+ OpStore %cMass %110
+ OpStore %cVel %110
+ OpStore %colVel %110
OpStore %cMassCount %int_0
OpStore %cVelCount %int_0
OpStore %i %uint_0
+ OpBranch %123
+ %123 = OpLabel
+ OpLoopMerge %124 %125 None
OpBranch %126
%126 = OpLabel
- OpLoopMerge %127 %128 None
- OpBranch %129
- %129 = OpLabel
- %131 = OpLoad %uint %i
- %132 = OpULessThan %bool %131 %uint_5
- %130 = OpLogicalNot %bool %132
- OpSelectionMerge %133 None
- OpBranchConditional %130 %134 %133
- %134 = OpLabel
- OpBranch %127
- %133 = OpLabel
- %135 = OpLoad %uint %i
- %136 = OpLoad %uint %index
- %137 = OpIEqual %bool %135 %136
- OpSelectionMerge %138 None
- OpBranchConditional %137 %139 %138
- %139 = OpLabel
- OpBranch %128
- %138 = OpLabel
- %140 = OpLoad %uint %i
- %141 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %140 %uint_0
- %142 = OpLoad %v2float %141
- %143 = OpVectorShuffle %v2float %142 %142 0 1
- OpStore %pos_0 %143
- %144 = OpLoad %uint %i
- %145 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %144 %uint_1
- %146 = OpLoad %v2float %145
- %147 = OpVectorShuffle %v2float %146 %146 0 1
- OpStore %vel %147
- %149 = OpLoad %v2float %pos_0
- %150 = OpLoad %v2float %vPos
- %148 = OpExtInst %float %40 Distance %149 %150
- %152 = OpAccessChain %_ptr_Uniform_float %params %uint_1
- %153 = OpLoad %float %152
- %154 = OpFOrdLessThan %bool %148 %153
- OpSelectionMerge %155 None
- OpBranchConditional %154 %156 %155
- %156 = OpLabel
- %157 = OpLoad %v2float %cMass
- %158 = OpLoad %v2float %pos_0
- %159 = OpFAdd %v2float %157 %158
- OpStore %cMass %159
- %160 = OpLoad %int %cMassCount
- %162 = OpIAdd %int %160 %int_1
- OpStore %cMassCount %162
- OpBranch %155
- %155 = OpLabel
- %164 = OpLoad %v2float %pos_0
- %165 = OpLoad %v2float %vPos
- %163 = OpExtInst %float %40 Distance %164 %165
- %167 = OpAccessChain %_ptr_Uniform_float %params %uint_2
- %168 = OpLoad %float %167
- %169 = OpFOrdLessThan %bool %163 %168
- OpSelectionMerge %170 None
- OpBranchConditional %169 %171 %170
- %171 = OpLabel
- %172 = OpLoad %v2float %colVel
- %173 = OpLoad %v2float %pos_0
- %174 = OpLoad %v2float %vPos
- %175 = OpFSub %v2float %173 %174
- %176 = OpFSub %v2float %172 %175
- OpStore %colVel %176
- OpBranch %170
- %170 = OpLabel
- %178 = OpLoad %v2float %pos_0
- %179 = OpLoad %v2float %vPos
- %177 = OpExtInst %float %40 Distance %178 %179
- %181 = OpAccessChain %_ptr_Uniform_float %params %uint_3
- %182 = OpLoad %float %181
- %183 = OpFOrdLessThan %bool %177 %182
- OpSelectionMerge %184 None
- OpBranchConditional %183 %185 %184
- %185 = OpLabel
- %186 = OpLoad %v2float %cVel
- %187 = OpLoad %v2float %vel
- %188 = OpFAdd %v2float %186 %187
- OpStore %cVel %188
- %189 = OpLoad %int %cVelCount
- %190 = OpIAdd %int %189 %int_1
- OpStore %cVelCount %190
- OpBranch %184
- %184 = OpLabel
- OpBranch %128
- %128 = OpLabel
- %191 = OpLoad %uint %i
- %192 = OpIAdd %uint %191 %uint_1
- OpStore %i %192
- OpBranch %126
- %127 = OpLabel
- %193 = OpLoad %int %cMassCount
- %194 = OpSGreaterThan %bool %193 %int_0
- OpSelectionMerge %195 None
- OpBranchConditional %194 %196 %195
- %196 = OpLabel
- %197 = OpLoad %v2float %cMass
- %199 = OpLoad %int %cMassCount
- %198 = OpConvertSToF %float %199
- %201 = OpLoad %int %cMassCount
- %200 = OpConvertSToF %float %201
- %202 = OpCompositeConstruct %v2float %198 %200
- %203 = OpFDiv %v2float %197 %202
- %204 = OpLoad %v2float %vPos
- %205 = OpFSub %v2float %203 %204
- OpStore %cMass %205
- OpBranch %195
- %195 = OpLabel
- %206 = OpLoad %int %cVelCount
- %207 = OpSGreaterThan %bool %206 %int_0
- OpSelectionMerge %208 None
- OpBranchConditional %207 %209 %208
- %209 = OpLabel
- %210 = OpLoad %v2float %cVel
- %212 = OpLoad %int %cVelCount
- %211 = OpConvertSToF %float %212
- %214 = OpLoad %int %cVelCount
- %213 = OpConvertSToF %float %214
- %215 = OpCompositeConstruct %v2float %211 %213
- %216 = OpFDiv %v2float %210 %215
- OpStore %cVel %216
- OpBranch %208
- %208 = OpLabel
- %217 = OpLoad %v2float %vVel
- %218 = OpLoad %v2float %cMass
- %220 = OpAccessChain %_ptr_Uniform_float %params %uint_4
- %221 = OpLoad %float %220
- %222 = OpVectorTimesScalar %v2float %218 %221
- %223 = OpFAdd %v2float %217 %222
- %224 = OpLoad %v2float %colVel
- %225 = OpAccessChain %_ptr_Uniform_float %params %uint_5
- %226 = OpLoad %float %225
- %227 = OpVectorTimesScalar %v2float %224 %226
- %228 = OpFAdd %v2float %223 %227
- %229 = OpLoad %v2float %cVel
- %231 = OpAccessChain %_ptr_Uniform_float %params %uint_6
- %232 = OpLoad %float %231
- %233 = OpVectorTimesScalar %v2float %229 %232
- %234 = OpFAdd %v2float %228 %233
- OpStore %vVel %234
+ %128 = OpLoad %uint %i
+ %129 = OpULessThan %bool %128 %uint_5
+ %127 = OpLogicalNot %bool %129
+ OpSelectionMerge %130 None
+ OpBranchConditional %127 %131 %130
+ %131 = OpLabel
+ OpBranch %124
+ %130 = OpLabel
+ %132 = OpLoad %uint %i
+ %133 = OpLoad %uint %index
+ %134 = OpIEqual %bool %132 %133
+ OpSelectionMerge %135 None
+ OpBranchConditional %134 %136 %135
+ %136 = OpLabel
+ OpBranch %125
+ %135 = OpLabel
+ %137 = OpLoad %uint %i
+ %138 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %137 %uint_0
+ %139 = OpLoad %v2float %138
+ %140 = OpVectorShuffle %v2float %139 %139 0 1
+ OpStore %pos_0 %140
+ %141 = OpLoad %uint %i
+ %142 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesA %uint_0 %141 %uint_1
+ %143 = OpLoad %v2float %142
+ %144 = OpVectorShuffle %v2float %143 %143 0 1
+ OpStore %vel %144
+ %146 = OpLoad %v2float %pos_0
+ %147 = OpLoad %v2float %vPos
+ %145 = OpExtInst %float %37 Distance %146 %147
+ %149 = OpAccessChain %_ptr_Uniform_float %params %uint_1
+ %150 = OpLoad %float %149
+ %151 = OpFOrdLessThan %bool %145 %150
+ OpSelectionMerge %152 None
+ OpBranchConditional %151 %153 %152
+ %153 = OpLabel
+ %154 = OpLoad %v2float %cMass
+ %155 = OpLoad %v2float %pos_0
+ %156 = OpFAdd %v2float %154 %155
+ OpStore %cMass %156
+ %157 = OpLoad %int %cMassCount
+ %159 = OpIAdd %int %157 %int_1
+ OpStore %cMassCount %159
+ OpBranch %152
+ %152 = OpLabel
+ %161 = OpLoad %v2float %pos_0
+ %162 = OpLoad %v2float %vPos
+ %160 = OpExtInst %float %37 Distance %161 %162
+ %164 = OpAccessChain %_ptr_Uniform_float %params %uint_2
+ %165 = OpLoad %float %164
+ %166 = OpFOrdLessThan %bool %160 %165
+ OpSelectionMerge %167 None
+ OpBranchConditional %166 %168 %167
+ %168 = OpLabel
+ %169 = OpLoad %v2float %colVel
+ %170 = OpLoad %v2float %pos_0
+ %171 = OpLoad %v2float %vPos
+ %172 = OpFSub %v2float %170 %171
+ %173 = OpFSub %v2float %169 %172
+ OpStore %colVel %173
+ OpBranch %167
+ %167 = OpLabel
+ %175 = OpLoad %v2float %pos_0
+ %176 = OpLoad %v2float %vPos
+ %174 = OpExtInst %float %37 Distance %175 %176
+ %178 = OpAccessChain %_ptr_Uniform_float %params %uint_3
+ %179 = OpLoad %float %178
+ %180 = OpFOrdLessThan %bool %174 %179
+ OpSelectionMerge %181 None
+ OpBranchConditional %180 %182 %181
+ %182 = OpLabel
+ %183 = OpLoad %v2float %cVel
+ %184 = OpLoad %v2float %vel
+ %185 = OpFAdd %v2float %183 %184
+ OpStore %cVel %185
+ %186 = OpLoad %int %cVelCount
+ %187 = OpIAdd %int %186 %int_1
+ OpStore %cVelCount %187
+ OpBranch %181
+ %181 = OpLabel
+ OpBranch %125
+ %125 = OpLabel
+ %188 = OpLoad %uint %i
+ %189 = OpIAdd %uint %188 %uint_1
+ OpStore %i %189
+ OpBranch %123
+ %124 = OpLabel
+ %190 = OpLoad %int %cMassCount
+ %191 = OpSGreaterThan %bool %190 %int_0
+ OpSelectionMerge %192 None
+ OpBranchConditional %191 %193 %192
+ %193 = OpLabel
+ %194 = OpLoad %v2float %cMass
+ %196 = OpLoad %int %cMassCount
+ %195 = OpConvertSToF %float %196
+ %198 = OpLoad %int %cMassCount
+ %197 = OpConvertSToF %float %198
+ %199 = OpCompositeConstruct %v2float %195 %197
+ %200 = OpFDiv %v2float %194 %199
+ %201 = OpLoad %v2float %vPos
+ %202 = OpFSub %v2float %200 %201
+ OpStore %cMass %202
+ OpBranch %192
+ %192 = OpLabel
+ %203 = OpLoad %int %cVelCount
+ %204 = OpSGreaterThan %bool %203 %int_0
+ OpSelectionMerge %205 None
+ OpBranchConditional %204 %206 %205
+ %206 = OpLabel
+ %207 = OpLoad %v2float %cVel
+ %209 = OpLoad %int %cVelCount
+ %208 = OpConvertSToF %float %209
+ %211 = OpLoad %int %cVelCount
+ %210 = OpConvertSToF %float %211
+ %212 = OpCompositeConstruct %v2float %208 %210
+ %213 = OpFDiv %v2float %207 %212
+ OpStore %cVel %213
+ OpBranch %205
+ %205 = OpLabel
+ %214 = OpLoad %v2float %vVel
+ %215 = OpLoad %v2float %cMass
+ %217 = OpAccessChain %_ptr_Uniform_float %params %uint_4
+ %218 = OpLoad %float %217
+ %219 = OpVectorTimesScalar %v2float %215 %218
+ %220 = OpFAdd %v2float %214 %219
+ %221 = OpLoad %v2float %colVel
+ %222 = OpAccessChain %_ptr_Uniform_float %params %uint_5
+ %223 = OpLoad %float %222
+ %224 = OpVectorTimesScalar %v2float %221 %223
+ %225 = OpFAdd %v2float %220 %224
+ %226 = OpLoad %v2float %cVel
+ %228 = OpAccessChain %_ptr_Uniform_float %params %uint_6
+ %229 = OpLoad %float %228
+ %230 = OpVectorTimesScalar %v2float %226 %229
+ %231 = OpFAdd %v2float %225 %230
+ OpStore %vVel %231
+ %233 = OpLoad %v2float %vVel
+ %232 = OpExtInst %v2float %37 Normalize %233
%236 = OpLoad %v2float %vVel
- %235 = OpExtInst %v2float %40 Normalize %236
- %239 = OpLoad %v2float %vVel
- %238 = OpExtInst %float %40 Length %239
- %237 = OpExtInst %float %40 NClamp %238 %float_0 %float_0_100000001
- %241 = OpVectorTimesScalar %v2float %235 %237
- OpStore %vVel %241
- %242 = OpLoad %v2float %vPos
- %243 = OpLoad %v2float %vVel
- %244 = OpAccessChain %_ptr_Uniform_float %params %uint_0
- %245 = OpLoad %float %244
- %246 = OpVectorTimesScalar %v2float %243 %245
- %247 = OpFAdd %v2float %242 %246
- OpStore %vPos %247
- %248 = OpAccessChain %_ptr_Function_float %vPos %uint_0
- %249 = OpLoad %float %248
- %251 = OpFOrdLessThan %bool %249 %float_n1
- OpSelectionMerge %252 None
- OpBranchConditional %251 %253 %252
- %253 = OpLabel
- %254 = OpAccessChain %_ptr_Function_float %vPos %uint_0
- OpStore %254 %float_1
- OpBranch %252
- %252 = OpLabel
- %255 = OpAccessChain %_ptr_Function_float %vPos %uint_0
- %256 = OpLoad %float %255
- %257 = OpFOrdGreaterThan %bool %256 %float_1
- OpSelectionMerge %258 None
- OpBranchConditional %257 %259 %258
- %259 = OpLabel
- %260 = OpAccessChain %_ptr_Function_float %vPos %uint_0
- OpStore %260 %float_n1
- OpBranch %258
- %258 = OpLabel
- %261 = OpAccessChain %_ptr_Function_float %vPos %uint_1
- %262 = OpLoad %float %261
- %263 = OpFOrdLessThan %bool %262 %float_n1
- OpSelectionMerge %264 None
- OpBranchConditional %263 %265 %264
- %265 = OpLabel
- %266 = OpAccessChain %_ptr_Function_float %vPos %uint_1
- OpStore %266 %float_1
- OpBranch %264
- %264 = OpLabel
- %267 = OpAccessChain %_ptr_Function_float %vPos %uint_1
- %268 = OpLoad %float %267
- %269 = OpFOrdGreaterThan %bool %268 %float_1
- OpSelectionMerge %270 None
- OpBranchConditional %269 %271 %270
- %271 = OpLabel
- %272 = OpAccessChain %_ptr_Function_float %vPos %uint_1
- OpStore %272 %float_n1
- OpBranch %270
- %270 = OpLabel
+ %235 = OpExtInst %float %37 Length %236
+ %234 = OpExtInst %float %37 NClamp %235 %float_0 %float_0_100000001
+ %238 = OpVectorTimesScalar %v2float %232 %234
+ OpStore %vVel %238
+ %239 = OpLoad %v2float %vPos
+ %240 = OpLoad %v2float %vVel
+ %241 = OpAccessChain %_ptr_Uniform_float %params %uint_0
+ %242 = OpLoad %float %241
+ %243 = OpVectorTimesScalar %v2float %240 %242
+ %244 = OpFAdd %v2float %239 %243
+ OpStore %vPos %244
+ %245 = OpAccessChain %_ptr_Function_float %vPos %uint_0
+ %246 = OpLoad %float %245
+ %248 = OpFOrdLessThan %bool %246 %float_n1
+ OpSelectionMerge %249 None
+ OpBranchConditional %248 %250 %249
+ %250 = OpLabel
+ %251 = OpAccessChain %_ptr_Function_float %vPos %uint_0
+ OpStore %251 %float_1
+ OpBranch %249
+ %249 = OpLabel
+ %252 = OpAccessChain %_ptr_Function_float %vPos %uint_0
+ %253 = OpLoad %float %252
+ %254 = OpFOrdGreaterThan %bool %253 %float_1
+ OpSelectionMerge %255 None
+ OpBranchConditional %254 %256 %255
+ %256 = OpLabel
+ %257 = OpAccessChain %_ptr_Function_float %vPos %uint_0
+ OpStore %257 %float_n1
+ OpBranch %255
+ %255 = OpLabel
+ %258 = OpAccessChain %_ptr_Function_float %vPos %uint_1
+ %259 = OpLoad %float %258
+ %260 = OpFOrdLessThan %bool %259 %float_n1
+ OpSelectionMerge %261 None
+ OpBranchConditional %260 %262 %261
+ %262 = OpLabel
+ %263 = OpAccessChain %_ptr_Function_float %vPos %uint_1
+ OpStore %263 %float_1
+ OpBranch %261
+ %261 = OpLabel
+ %264 = OpAccessChain %_ptr_Function_float %vPos %uint_1
+ %265 = OpLoad %float %264
+ %266 = OpFOrdGreaterThan %bool %265 %float_1
+ OpSelectionMerge %267 None
+ OpBranchConditional %266 %268 %267
+ %268 = OpLabel
+ %269 = OpAccessChain %_ptr_Function_float %vPos %uint_1
+ OpStore %269 %float_n1
+ OpBranch %267
+ %267 = OpLabel
+ %270 = OpLoad %uint %index
+ %271 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesB %uint_0 %270 %uint_0
+ %272 = OpLoad %v2float %vPos
+ OpStore %271 %272
%273 = OpLoad %uint %index
- %274 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesB %uint_0 %273 %uint_0
- %275 = OpLoad %v2float %vPos
+ %274 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesB %uint_0 %273 %uint_1
+ %275 = OpLoad %v2float %vVel
OpStore %274 %275
- %276 = OpLoad %uint %index
- %277 = OpAccessChain %_ptr_StorageBuffer_v2float %particlesB %uint_0 %276 %uint_1
- %278 = OpLoad %v2float %vVel
- OpStore %277 %278
+ OpReturn
+ OpFunctionEnd
+ %comp_main = OpFunction %void None %71
+ %277 = OpLabel
+ %279 = OpLoad %v3uint %gl_GlobalInvocationID_1
+ %278 = OpFunctionCall %void %comp_main_inner %279
OpReturn
OpFunctionEnd
diff --git a/test/samples/cube.wgsl.expected.spvasm b/test/samples/cube.wgsl.expected.spvasm
index 0e22c2b..cbbf88e 100644
--- a/test/samples/cube.wgsl.expected.spvasm
+++ b/test/samples/cube.wgsl.expected.spvasm
@@ -5,33 +5,39 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vtx_main "vtx_main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_4 %tint_symbol_5
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_7 %tint_symbol_9
+ OpEntryPoint Vertex %vtx_main "vtx_main" %cur_position_1 %color_1 %vtxFragColor_1 %Position_1 %vertex_point_size
+ OpEntryPoint Fragment %frag_main "frag_main" %fragColor_1 %value
OpExecutionMode %frag_main OriginUpperLeft
- OpName %tint_pointsize "tint_pointsize"
+ OpName %cur_position_1 "cur_position_1"
+ OpName %color_1 "color_1"
+ OpName %vtxFragColor_1 "vtxFragColor_1"
+ OpName %Position_1 "Position_1"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %fragColor_1 "fragColor_1"
+ OpName %value "value"
OpName %Uniforms "Uniforms"
OpMemberName %Uniforms 0 "modelViewProjectionMatrix"
OpName %uniforms "uniforms"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_9 "tint_symbol_9"
OpName %VertexOutput "VertexOutput"
OpMemberName %VertexOutput 0 "vtxFragColor"
OpMemberName %VertexOutput 1 "Position"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %vtx_main "vtx_main"
OpName %VertexInput "VertexInput"
OpMemberName %VertexInput 0 "cur_position"
OpMemberName %VertexInput 1 "color"
+ OpName %vtx_main_inner "vtx_main_inner"
+ OpName %input "input"
OpName %output "output"
- OpName %tint_symbol_10 "tint_symbol_10"
- OpName %tint_symbol_8 "tint_symbol_8"
+ OpName %vtx_main "vtx_main"
+ OpName %frag_main_inner "frag_main_inner"
+ OpName %fragColor "fragColor"
OpName %frag_main "frag_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %cur_position_1 Location 0
+ OpDecorate %color_1 Location 1
+ OpDecorate %vtxFragColor_1 Location 0
+ OpDecorate %Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %fragColor_1 Location 0
+ OpDecorate %value Location 0
OpDecorate %Uniforms Block
OpMemberDecorate %Uniforms 0 Offset 0
OpMemberDecorate %Uniforms 0 ColMajor
@@ -39,86 +45,80 @@
OpDecorate %uniforms NonWritable
OpDecorate %uniforms Binding 0
OpDecorate %uniforms DescriptorSet 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_4 Location 0
- OpDecorate %tint_symbol_5 BuiltIn Position
- OpDecorate %tint_symbol_7 Location 0
- OpDecorate %tint_symbol_9 Location 0
OpMemberDecorate %VertexOutput 0 Offset 0
OpMemberDecorate %VertexOutput 1 Offset 16
OpMemberDecorate %VertexInput 0 Offset 0
OpMemberDecorate %VertexInput 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%cur_position_1 = OpVariable %_ptr_Input_v4float Input
+ %color_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %8 = OpConstantNull %v4float
+%vtxFragColor_1 = OpVariable %_ptr_Output_v4float Output %8
+ %Position_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
+%fragColor_1 = OpVariable %_ptr_Input_v4float Input
+ %value = OpVariable %_ptr_Output_v4float Output %8
%mat4v4float = OpTypeMatrix %v4float 4
%Uniforms = OpTypeStruct %mat4v4float
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %15 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %15
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %15
-%tint_symbol_7 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_9 = OpVariable %_ptr_Output_v4float Output %15
- %void = OpTypeVoid
%VertexOutput = OpTypeStruct %v4float %v4float
- %19 = OpTypeFunction %void %VertexOutput
- %27 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
%VertexInput = OpTypeStruct %v4float %v4float
+ %19 = OpTypeFunction %VertexOutput %VertexInput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
- %37 = OpConstantNull %VertexOutput
+ %27 = OpConstantNull %VertexOutput
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_v4float = OpTypePointer Function %v4float
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float
- %52 = OpTypeFunction %void %v4float
-%tint_symbol_6 = OpFunction %void None %19
-%tint_symbol_3 = OpFunctionParameter %VertexOutput
+ %void = OpTypeVoid
+ %41 = OpTypeFunction %void
+ %float_1 = OpConstant %float 1
+ %52 = OpTypeFunction %v4float %v4float
+%vtx_main_inner = OpFunction %VertexOutput None %19
+ %input = OpFunctionParameter %VertexInput
%24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol_3 0
- OpStore %tint_symbol_4 %25
- %26 = OpCompositeExtract %v4float %tint_symbol_3 1
- OpStore %tint_symbol_5 %26
+ %output = OpVariable %_ptr_Function_VertexOutput Function %27
+ %31 = OpAccessChain %_ptr_Function_v4float %output %uint_1
+ %34 = OpAccessChain %_ptr_Uniform_mat4v4float %uniforms %uint_0
+ %35 = OpLoad %mat4v4float %34
+ %36 = OpCompositeExtract %v4float %input 0
+ %37 = OpMatrixTimesVector %v4float %35 %36
+ OpStore %31 %37
+ %38 = OpAccessChain %_ptr_Function_v4float %output %uint_0
+ %39 = OpCompositeExtract %v4float %input 1
+ OpStore %38 %39
+ %40 = OpLoad %VertexOutput %output
+ OpReturnValue %40
+ OpFunctionEnd
+ %vtx_main = OpFunction %void None %41
+ %44 = OpLabel
+ %46 = OpLoad %v4float %cur_position_1
+ %47 = OpLoad %v4float %color_1
+ %48 = OpCompositeConstruct %VertexInput %46 %47
+ %45 = OpFunctionCall %VertexOutput %vtx_main_inner %48
+ %49 = OpCompositeExtract %v4float %45 0
+ OpStore %vtxFragColor_1 %49
+ %50 = OpCompositeExtract %v4float %45 1
+ OpStore %Position_1 %50
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
- %vtx_main = OpFunction %void None %27
- %29 = OpLabel
- %output = OpVariable %_ptr_Function_VertexOutput Function %37
- OpStore %tint_pointsize %float_1
- %32 = OpLoad %v4float %tint_symbol
- %33 = OpLoad %v4float %tint_symbol_1
- %34 = OpCompositeConstruct %VertexInput %32 %33
- %41 = OpAccessChain %_ptr_Function_v4float %output %uint_1
- %44 = OpAccessChain %_ptr_Uniform_mat4v4float %uniforms %uint_0
- %45 = OpLoad %mat4v4float %44
- %46 = OpCompositeExtract %v4float %34 0
- %47 = OpMatrixTimesVector %v4float %45 %46
- OpStore %41 %47
- %48 = OpAccessChain %_ptr_Function_v4float %output %uint_0
- %49 = OpCompositeExtract %v4float %34 1
- OpStore %48 %49
- %51 = OpLoad %VertexOutput %output
- %50 = OpFunctionCall %void %tint_symbol_6 %51
- OpReturn
- OpFunctionEnd
-%tint_symbol_10 = OpFunction %void None %52
-%tint_symbol_8 = OpFunctionParameter %v4float
+%frag_main_inner = OpFunction %v4float None %52
+ %fragColor = OpFunctionParameter %v4float
%55 = OpLabel
- OpStore %tint_symbol_9 %tint_symbol_8
- OpReturn
+ OpReturnValue %fragColor
OpFunctionEnd
- %frag_main = OpFunction %void None %27
+ %frag_main = OpFunction %void None %41
%57 = OpLabel
- %59 = OpLoad %v4float %tint_symbol_7
- %58 = OpFunctionCall %void %tint_symbol_10 %59
+ %59 = OpLoad %v4float %fragColor_1
+ %58 = OpFunctionCall %v4float %frag_main_inner %59
+ OpStore %value %58
OpReturn
OpFunctionEnd
diff --git a/test/samples/simple.wgsl.expected.spvasm b/test/samples/simple.wgsl.expected.spvasm
index ac34752..f07e733 100644
--- a/test/samples/simple.wgsl.expected.spvasm
+++ b/test/samples/simple.wgsl.expected.spvasm
@@ -1,49 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %value
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
OpName %bar "bar"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
- OpName %main "main"
+ OpName %main_inner "main_inner"
OpName %a "a"
- OpDecorate %tint_symbol_1 Location 0
+ OpName %main "main"
+ OpDecorate %value Location 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %value = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%6 = OpTypeFunction %void
- %10 = OpTypeFunction %void %v4float
+ %10 = OpTypeFunction %v4float
%v2float = OpTypeVector %float 2
- %17 = OpConstantNull %v2float
+ %14 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
%float_0_400000006 = OpConstant %float 0.400000006
%float_0_800000012 = OpConstant %float 0.800000012
%float_1 = OpConstant %float 1
- %25 = OpConstantComposite %v4float %float_0_400000006 %float_0_400000006 %float_0_800000012 %float_1
+ %21 = OpConstantComposite %v4float %float_0_400000006 %float_0_400000006 %float_0_800000012 %float_1
%bar = OpFunction %void None %6
%9 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %10
-%tint_symbol = OpFunctionParameter %v4float
- %13 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %main_inner = OpFunction %v4float None %10
+ %12 = OpLabel
+ %a = OpVariable %_ptr_Function_v2float Function %14
+ OpStore %a %14
+ %17 = OpFunctionCall %void %bar
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %6
- %15 = OpLabel
- %a = OpVariable %_ptr_Function_v2float Function %17
- OpStore %a %17
- %20 = OpFunctionCall %void %bar
- %21 = OpFunctionCall %void %tint_symbol_2 %25
+ %23 = OpLabel
+ %24 = OpFunctionCall %v4float %main_inner
+ OpStore %value %24
OpReturn
OpFunctionEnd
diff --git a/test/samples/simple_vertex.spvasm.expected.spvasm b/test/samples/simple_vertex.spvasm.expected.spvasm
index e96f80d..0a7c17b 100644
--- a/test/samples/simple_vertex.spvasm.expected.spvasm
+++ b/test/samples/simple_vertex.spvasm.expected.spvasm
@@ -1,58 +1,56 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%16 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %17 = OpTypeFunction %void %main_out
+ %17 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpStore %gl_Position %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %main_out
- %21 = OpLabel
- %22 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %22
- OpReturn
+ %main_inner = OpFunction %main_out None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %gl_Position
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %main_1
- %28 = OpLoad %v4float %gl_Position
- %29 = OpCompositeConstruct %main_out %28
- %27 = OpFunctionCall %void %tint_symbol_2 %29
+ %25 = OpLabel
+ %26 = OpFunctionCall %main_out %main_inner
+ %27 = OpCompositeExtract %v4float %26 0
+ OpStore %gl_Position_1 %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/samples/triangle.wgsl.expected.spvasm b/test/samples/triangle.wgsl.expected.spvasm
index 7618650..3d2c238 100644
--- a/test/samples/triangle.wgsl.expected.spvasm
+++ b/test/samples/triangle.wgsl.expected.spvasm
@@ -5,83 +5,82 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vtx_main "vtx_main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_5
+ OpEntryPoint Vertex %vtx_main "vtx_main" %VertexIndex_1 %value %vertex_point_size
+ OpEntryPoint Fragment %frag_main "frag_main" %value_1
OpExecutionMode %frag_main OriginUpperLeft
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %vtx_main "vtx_main"
+ OpName %VertexIndex_1 "VertexIndex_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %value_1 "value_1"
+ OpName %vtx_main_inner "vtx_main_inner"
+ OpName %VertexIndex "VertexIndex"
OpName %pos "pos"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpName %vtx_main "vtx_main"
+ OpName %frag_main_inner "frag_main_inner"
OpName %frag_main "frag_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_5 Location 0
+ OpDecorate %VertexIndex_1 BuiltIn VertexIndex
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %value_1 Location 0
OpDecorate %_arr_v2float_uint_3 ArrayStride 8
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%VertexIndex_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %11 = OpConstantNull %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %11
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %11
- %void = OpTypeVoid
- %13 = OpTypeFunction %void %v4float
- %18 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %8 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %value_1 = OpVariable %_ptr_Output_v4float Output %8
+ %13 = OpTypeFunction %v4float %uint
%v2float = OpTypeVector %float 2
%uint_3 = OpConstant %uint 3
%_arr_v2float_uint_3 = OpTypeArray %v2float %uint_3
%float_0 = OpConstant %float 0
%float_0_5 = OpConstant %float 0.5
- %27 = OpConstantComposite %v2float %float_0 %float_0_5
+ %22 = OpConstantComposite %v2float %float_0 %float_0_5
%float_n0_5 = OpConstant %float -0.5
- %29 = OpConstantComposite %v2float %float_n0_5 %float_n0_5
- %30 = OpConstantComposite %v2float %float_0_5 %float_n0_5
- %31 = OpConstantComposite %_arr_v2float_uint_3 %27 %29 %30
+ %24 = OpConstantComposite %v2float %float_n0_5 %float_n0_5
+ %25 = OpConstantComposite %v2float %float_0_5 %float_n0_5
+ %26 = OpConstantComposite %_arr_v2float_uint_3 %22 %24 %25
%_ptr_Function__arr_v2float_uint_3 = OpTypePointer Function %_arr_v2float_uint_3
- %34 = OpConstantNull %_arr_v2float_uint_3
+ %29 = OpConstantNull %_arr_v2float_uint_3
%_ptr_Function_v2float = OpTypePointer Function %v2float
- %49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
-%tint_symbol_3 = OpFunction %void None %13
-%tint_symbol_1 = OpFunctionParameter %v4float
- %17 = OpLabel
- OpStore %tint_symbol_2 %tint_symbol_1
+ %float_1 = OpConstant %float 1
+ %void = OpTypeVoid
+ %37 = OpTypeFunction %void
+ %43 = OpTypeFunction %v4float
+ %46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
+%vtx_main_inner = OpFunction %v4float None %13
+%VertexIndex = OpFunctionParameter %uint
+ %16 = OpLabel
+ %pos = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %29
+ OpStore %pos %26
+ %31 = OpAccessChain %_ptr_Function_v2float %pos %VertexIndex
+ %32 = OpLoad %v2float %31
+ %33 = OpCompositeExtract %float %32 0
+ %34 = OpCompositeExtract %float %32 1
+ %36 = OpCompositeConstruct %v4float %33 %34 %float_0 %float_1
+ OpReturnValue %36
+ OpFunctionEnd
+ %vtx_main = OpFunction %void None %37
+ %40 = OpLabel
+ %42 = OpLoad %uint %VertexIndex_1
+ %41 = OpFunctionCall %v4float %vtx_main_inner %42
+ OpStore %value %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
- %vtx_main = OpFunction %void None %18
- %20 = OpLabel
- %pos = OpVariable %_ptr_Function__arr_v2float_uint_3 Function %34
- OpStore %tint_pointsize %float_1
- OpStore %pos %31
- %36 = OpLoad %uint %tint_symbol
- %38 = OpAccessChain %_ptr_Function_v2float %pos %36
- %39 = OpLoad %v2float %38
- %40 = OpCompositeExtract %float %39 0
- %41 = OpCompositeExtract %float %39 1
- %42 = OpCompositeConstruct %v4float %40 %41 %float_0 %float_1
- %35 = OpFunctionCall %void %tint_symbol_3 %42
- OpReturn
- OpFunctionEnd
-%tint_symbol_6 = OpFunction %void None %13
-%tint_symbol_4 = OpFunctionParameter %v4float
+%frag_main_inner = OpFunction %v4float None %43
%45 = OpLabel
- OpStore %tint_symbol_5 %tint_symbol_4
- OpReturn
+ OpReturnValue %46
OpFunctionEnd
- %frag_main = OpFunction %void None %18
- %47 = OpLabel
- %48 = OpFunctionCall %void %tint_symbol_6 %49
+ %frag_main = OpFunction %void None %37
+ %48 = OpLabel
+ %49 = OpFunctionCall %v4float %frag_main_inner
+ OpStore %value_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/compute_input_builtins.wgsl.expected.spvasm b/test/shader_io/compute_input_builtins.wgsl.expected.spvasm
index b47c180..a1dddd0 100644
--- a/test/shader_io/compute_input_builtins.wgsl.expected.spvasm
+++ b/test/shader_io/compute_input_builtins.wgsl.expected.spvasm
@@ -1,43 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint GLCompute %main "main" %local_invocation_id_1 %local_invocation_index_1 %global_invocation_id_1 %workgroup_id_1
OpExecutionMode %main LocalSize 1 1 1
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %local_invocation_id_1 "local_invocation_id_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
+ OpName %global_invocation_id_1 "global_invocation_id_1"
+ OpName %workgroup_id_1 "workgroup_id_1"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_id "local_invocation_id"
+ OpName %local_invocation_index "local_invocation_index"
+ OpName %global_invocation_id "global_invocation_id"
+ OpName %workgroup_id "workgroup_id"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_1 BuiltIn LocalInvocationIndex
- OpDecorate %tint_symbol_2 BuiltIn GlobalInvocationId
- OpDecorate %tint_symbol_3 BuiltIn WorkgroupId
+ OpDecorate %local_invocation_id_1 BuiltIn LocalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ OpDecorate %global_invocation_id_1 BuiltIn GlobalInvocationId
+ OpDecorate %workgroup_id_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
+%global_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
+%workgroup_id_1 = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
- %uint_0 = OpConstant %uint 0
- %main = OpFunction %void None %9
- %12 = OpLabel
- %14 = OpAccessChain %_ptr_Input_uint %tint_symbol %uint_0
- %15 = OpLoad %uint %14
- %16 = OpLoad %uint %tint_symbol_1
- %17 = OpIAdd %uint %15 %16
- %18 = OpAccessChain %_ptr_Input_uint %tint_symbol_2 %uint_0
- %19 = OpLoad %uint %18
- %20 = OpIAdd %uint %17 %19
- %21 = OpAccessChain %_ptr_Input_uint %tint_symbol_3 %uint_0
- %22 = OpLoad %uint %21
- %23 = OpIAdd %uint %20 %22
+ %9 = OpTypeFunction %void %v3uint %uint %v3uint %v3uint
+ %23 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+%local_invocation_id = OpFunctionParameter %v3uint
+%local_invocation_index = OpFunctionParameter %uint
+%global_invocation_id = OpFunctionParameter %v3uint
+%workgroup_id = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ %17 = OpCompositeExtract %uint %local_invocation_id 0
+ %18 = OpIAdd %uint %17 %local_invocation_index
+ %19 = OpCompositeExtract %uint %global_invocation_id 0
+ %20 = OpIAdd %uint %18 %19
+ %21 = OpCompositeExtract %uint %workgroup_id 0
+ %22 = OpIAdd %uint %20 %21
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %23
+ %25 = OpLabel
+ %27 = OpLoad %v3uint %local_invocation_id_1
+ %28 = OpLoad %uint %local_invocation_index_1
+ %29 = OpLoad %v3uint %global_invocation_id_1
+ %30 = OpLoad %v3uint %workgroup_id_1
+ %26 = OpFunctionCall %void %main_inner %27 %28 %29 %30
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/compute_input_builtins_struct.wgsl.expected.spvasm b/test/shader_io/compute_input_builtins_struct.wgsl.expected.spvasm
index f54703d..d270e75 100644
--- a/test/shader_io/compute_input_builtins_struct.wgsl.expected.spvasm
+++ b/test/shader_io/compute_input_builtins_struct.wgsl.expected.spvasm
@@ -1,26 +1,28 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 29
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint GLCompute %main "main" %local_invocation_id_1 %local_invocation_index_1 %global_invocation_id_1 %workgroup_id_1
OpExecutionMode %main LocalSize 1 1 1
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %main "main"
+ OpName %local_invocation_id_1 "local_invocation_id_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
+ OpName %global_invocation_id_1 "global_invocation_id_1"
+ OpName %workgroup_id_1 "workgroup_id_1"
OpName %ComputeInputs "ComputeInputs"
OpMemberName %ComputeInputs 0 "local_invocation_id"
OpMemberName %ComputeInputs 1 "local_invocation_index"
OpMemberName %ComputeInputs 2 "global_invocation_id"
OpMemberName %ComputeInputs 3 "workgroup_id"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_1 BuiltIn LocalInvocationIndex
- OpDecorate %tint_symbol_2 BuiltIn GlobalInvocationId
- OpDecorate %tint_symbol_3 BuiltIn WorkgroupId
+ OpName %main_inner "main_inner"
+ OpName %inputs "inputs"
+ OpName %main "main"
+ OpDecorate %local_invocation_id_1 BuiltIn LocalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ OpDecorate %global_invocation_id_1 BuiltIn GlobalInvocationId
+ OpDecorate %workgroup_id_1 BuiltIn WorkgroupId
OpMemberDecorate %ComputeInputs 0 Offset 0
OpMemberDecorate %ComputeInputs 1 Offset 12
OpMemberDecorate %ComputeInputs 2 Offset 16
@@ -28,30 +30,37 @@
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
+%global_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
+%workgroup_id_1 = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
%ComputeInputs = OpTypeStruct %v3uint %uint %v3uint %v3uint
- %main = OpFunction %void None %9
- %12 = OpLabel
- %14 = OpLoad %v3uint %tint_symbol
- %15 = OpLoad %uint %tint_symbol_1
- %16 = OpLoad %v3uint %tint_symbol_2
- %17 = OpLoad %v3uint %tint_symbol_3
- %18 = OpCompositeConstruct %ComputeInputs %14 %15 %16 %17
- %19 = OpCompositeExtract %v3uint %18 0
+ %9 = OpTypeFunction %void %ComputeInputs
+ %25 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+ %inputs = OpFunctionParameter %ComputeInputs
+ %14 = OpLabel
+ %15 = OpCompositeExtract %v3uint %inputs 0
+ %16 = OpCompositeExtract %uint %15 0
+ %17 = OpCompositeExtract %uint %inputs 1
+ %18 = OpIAdd %uint %16 %17
+ %19 = OpCompositeExtract %v3uint %inputs 2
%20 = OpCompositeExtract %uint %19 0
- %21 = OpCompositeExtract %uint %18 1
- %22 = OpIAdd %uint %20 %21
- %23 = OpCompositeExtract %v3uint %18 2
- %24 = OpCompositeExtract %uint %23 0
- %25 = OpIAdd %uint %22 %24
- %26 = OpCompositeExtract %v3uint %18 3
- %27 = OpCompositeExtract %uint %26 0
- %28 = OpIAdd %uint %25 %27
+ %21 = OpIAdd %uint %18 %20
+ %22 = OpCompositeExtract %v3uint %inputs 3
+ %23 = OpCompositeExtract %uint %22 0
+ %24 = OpIAdd %uint %21 %23
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %25
+ %27 = OpLabel
+ %29 = OpLoad %v3uint %local_invocation_id_1
+ %30 = OpLoad %uint %local_invocation_index_1
+ %31 = OpLoad %v3uint %global_invocation_id_1
+ %32 = OpLoad %v3uint %workgroup_id_1
+ %33 = OpCompositeConstruct %ComputeInputs %29 %30 %31 %32
+ %28 = OpFunctionCall %void %main_inner %33
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/compute_input_mixed.wgsl.expected.spvasm b/test/shader_io/compute_input_mixed.wgsl.expected.spvasm
index 145635e..a81762d 100644
--- a/test/shader_io/compute_input_mixed.wgsl.expected.spvasm
+++ b/test/shader_io/compute_input_mixed.wgsl.expected.spvasm
@@ -1,55 +1,69 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 37
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol %tint_symbol_4 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint GLCompute %main "main" %local_invocation_id_1 %local_invocation_index_1 %global_invocation_id_1 %workgroup_id_1
OpExecutionMode %main LocalSize 1 1 1
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %main "main"
+ OpName %local_invocation_id_1 "local_invocation_id_1"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
+ OpName %global_invocation_id_1 "global_invocation_id_1"
+ OpName %workgroup_id_1 "workgroup_id_1"
OpName %ComputeInputs0 "ComputeInputs0"
OpMemberName %ComputeInputs0 0 "local_invocation_id"
OpName %ComputeInputs1 "ComputeInputs1"
OpMemberName %ComputeInputs1 0 "workgroup_id"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- OpDecorate %tint_symbol_2 BuiltIn LocalInvocationIndex
- OpDecorate %tint_symbol_3 BuiltIn GlobalInvocationId
- OpDecorate %tint_symbol_4 BuiltIn WorkgroupId
+ OpName %main_inner "main_inner"
+ OpName %inputs0 "inputs0"
+ OpName %local_invocation_index "local_invocation_index"
+ OpName %global_invocation_id "global_invocation_id"
+ OpName %inputs1 "inputs1"
+ OpName %main "main"
+ OpDecorate %local_invocation_id_1 BuiltIn LocalInvocationId
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ OpDecorate %global_invocation_id_1 BuiltIn GlobalInvocationId
+ OpDecorate %workgroup_id_1 BuiltIn WorkgroupId
OpMemberDecorate %ComputeInputs0 0 Offset 0
OpMemberDecorate %ComputeInputs1 0 Offset 0
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v3uint Input
-%tint_symbol_4 = OpVariable %_ptr_Input_v3uint Input
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
+%global_invocation_id_1 = OpVariable %_ptr_Input_v3uint Input
+%workgroup_id_1 = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
%ComputeInputs0 = OpTypeStruct %v3uint
%ComputeInputs1 = OpTypeStruct %v3uint
- %uint_0 = OpConstant %uint 0
- %main = OpFunction %void None %9
- %12 = OpLabel
- %14 = OpLoad %v3uint %tint_symbol
- %15 = OpCompositeConstruct %ComputeInputs0 %14
- %17 = OpLoad %v3uint %tint_symbol_4
- %18 = OpCompositeConstruct %ComputeInputs1 %17
- %19 = OpCompositeExtract %v3uint %15 0
+ %9 = OpTypeFunction %void %ComputeInputs0 %uint %v3uint %ComputeInputs1
+ %27 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+ %inputs0 = OpFunctionParameter %ComputeInputs0
+%local_invocation_index = OpFunctionParameter %uint
+%global_invocation_id = OpFunctionParameter %v3uint
+ %inputs1 = OpFunctionParameter %ComputeInputs1
+ %18 = OpLabel
+ %19 = OpCompositeExtract %v3uint %inputs0 0
%20 = OpCompositeExtract %uint %19 0
- %21 = OpLoad %uint %tint_symbol_2
- %22 = OpIAdd %uint %20 %21
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol_3 %uint_0
- %25 = OpLoad %uint %24
- %26 = OpIAdd %uint %22 %25
- %27 = OpCompositeExtract %v3uint %18 0
- %28 = OpCompositeExtract %uint %27 0
- %29 = OpIAdd %uint %26 %28
+ %21 = OpIAdd %uint %20 %local_invocation_index
+ %22 = OpCompositeExtract %uint %global_invocation_id 0
+ %23 = OpIAdd %uint %21 %22
+ %24 = OpCompositeExtract %v3uint %inputs1 0
+ %25 = OpCompositeExtract %uint %24 0
+ %26 = OpIAdd %uint %23 %25
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %27
+ %29 = OpLabel
+ %31 = OpLoad %v3uint %local_invocation_id_1
+ %32 = OpCompositeConstruct %ComputeInputs0 %31
+ %33 = OpLoad %uint %local_invocation_index_1
+ %34 = OpLoad %v3uint %global_invocation_id_1
+ %35 = OpLoad %v3uint %workgroup_id_1
+ %36 = OpCompositeConstruct %ComputeInputs1 %35
+ %30 = OpFunctionCall %void %main_inner %32 %33 %34 %36
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_input_builtins.wgsl.expected.spvasm b/test/shader_io/fragment_input_builtins.wgsl.expected.spvasm
index b6e26bd..daf288b 100644
--- a/test/shader_io/fragment_input_builtins.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_input_builtins.wgsl.expected.spvasm
@@ -1,53 +1,68 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 29
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %position_1 %front_facing_1 %sample_index_1 %sample_mask_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %position_1 "position_1"
+ OpName %front_facing_1 "front_facing_1"
+ OpName %sample_index_1 "sample_index_1"
+ OpName %sample_mask_1 "sample_mask_1"
+ OpName %main_inner "main_inner"
+ OpName %position "position"
+ OpName %front_facing "front_facing"
+ OpName %sample_index "sample_index"
+ OpName %sample_mask "sample_mask"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 BuiltIn FrontFacing
- OpDecorate %tint_symbol_2 BuiltIn SampleId
+ OpDecorate %position_1 BuiltIn FragCoord
+ OpDecorate %front_facing_1 BuiltIn FrontFacing
+ OpDecorate %sample_index_1 BuiltIn SampleId
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_3 BuiltIn SampleMask
+ OpDecorate %sample_mask_1 BuiltIn SampleMask
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+ %position_1 = OpVariable %_ptr_Input_v4float Input
%bool = OpTypeBool
%_ptr_Input_bool = OpTypePointer Input %bool
-%tint_symbol_1 = OpVariable %_ptr_Input_bool Input
+%front_facing_1 = OpVariable %_ptr_Input_bool Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
+%sample_index_1 = OpVariable %_ptr_Input_uint Input
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol_3 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%sample_mask_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
%void = OpTypeVoid
- %15 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v4float %bool %uint %uint
+ %26 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
- %main = OpFunction %void None %15
- %18 = OpLabel
- %19 = OpLoad %bool %tint_symbol_1
- OpSelectionMerge %20 None
- OpBranchConditional %19 %21 %20
- %21 = OpLabel
- %22 = OpLoad %v4float %tint_symbol
- %23 = OpLoad %uint %tint_symbol_2
- %26 = OpAccessChain %_ptr_Input_uint %tint_symbol_3 %int_0
- %27 = OpLoad %uint %26
- %28 = OpIAdd %uint %23 %27
- OpBranch %20
- %20 = OpLabel
+ %main_inner = OpFunction %void None %15
+ %position = OpFunctionParameter %v4float
+%front_facing = OpFunctionParameter %bool
+%sample_index = OpFunctionParameter %uint
+%sample_mask = OpFunctionParameter %uint
+ %22 = OpLabel
+ OpSelectionMerge %23 None
+ OpBranchConditional %front_facing %24 %23
+ %24 = OpLabel
+ %25 = OpIAdd %uint %sample_index %sample_mask
+ OpBranch %23
+ %23 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %26
+ %28 = OpLabel
+ %30 = OpLoad %v4float %position_1
+ %31 = OpLoad %bool %front_facing_1
+ %32 = OpLoad %uint %sample_index_1
+ %35 = OpAccessChain %_ptr_Input_uint %sample_mask_1 %int_0
+ %36 = OpLoad %uint %35
+ %29 = OpFunctionCall %void %main_inner %30 %31 %32 %36
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_input_builtins_struct.wgsl.expected.spvasm b/test/shader_io/fragment_input_builtins_struct.wgsl.expected.spvasm
index 16ace31..a826ffb 100644
--- a/test/shader_io/fragment_input_builtins_struct.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_input_builtins_struct.wgsl.expected.spvasm
@@ -1,28 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %position_1 %front_facing_1 %sample_index_1 %sample_mask_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %main "main"
+ OpName %position_1 "position_1"
+ OpName %front_facing_1 "front_facing_1"
+ OpName %sample_index_1 "sample_index_1"
+ OpName %sample_mask_1 "sample_mask_1"
OpName %FragmentInputs "FragmentInputs"
OpMemberName %FragmentInputs 0 "position"
OpMemberName %FragmentInputs 1 "front_facing"
OpMemberName %FragmentInputs 2 "sample_index"
OpMemberName %FragmentInputs 3 "sample_mask"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 BuiltIn FrontFacing
- OpDecorate %tint_symbol_2 BuiltIn SampleId
+ OpName %main_inner "main_inner"
+ OpName %inputs "inputs"
+ OpName %main "main"
+ OpDecorate %position_1 BuiltIn FragCoord
+ OpDecorate %front_facing_1 BuiltIn FrontFacing
+ OpDecorate %sample_index_1 BuiltIn SampleId
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_3 BuiltIn SampleMask
+ OpDecorate %sample_mask_1 BuiltIn SampleMask
OpMemberDecorate %FragmentInputs 0 Offset 0
OpMemberDecorate %FragmentInputs 1 Offset 16
OpMemberDecorate %FragmentInputs 2 Offset 20
@@ -30,39 +32,46 @@
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+ %position_1 = OpVariable %_ptr_Input_v4float Input
%bool = OpTypeBool
%_ptr_Input_bool = OpTypePointer Input %bool
-%tint_symbol_1 = OpVariable %_ptr_Input_bool Input
+%front_facing_1 = OpVariable %_ptr_Input_bool Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
+%sample_index_1 = OpVariable %_ptr_Input_uint Input
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol_3 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%sample_mask_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
%void = OpTypeVoid
- %15 = OpTypeFunction %void
%FragmentInputs = OpTypeStruct %v4float %bool %uint %uint
+ %15 = OpTypeFunction %void %FragmentInputs
+ %28 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
- %main = OpFunction %void None %15
- %18 = OpLabel
- %20 = OpLoad %v4float %tint_symbol
- %21 = OpLoad %bool %tint_symbol_1
- %22 = OpLoad %uint %tint_symbol_2
- %25 = OpAccessChain %_ptr_Input_uint %tint_symbol_3 %int_0
- %26 = OpLoad %uint %25
- %27 = OpCompositeConstruct %FragmentInputs %20 %21 %22 %26
- %28 = OpCompositeExtract %bool %27 1
- OpSelectionMerge %29 None
- OpBranchConditional %28 %30 %29
+ %main_inner = OpFunction %void None %15
+ %inputs = OpFunctionParameter %FragmentInputs
+ %20 = OpLabel
+ %21 = OpCompositeExtract %bool %inputs 1
+ OpSelectionMerge %22 None
+ OpBranchConditional %21 %23 %22
+ %23 = OpLabel
+ %24 = OpCompositeExtract %v4float %inputs 0
+ %25 = OpCompositeExtract %uint %inputs 2
+ %26 = OpCompositeExtract %uint %inputs 3
+ %27 = OpIAdd %uint %25 %26
+ OpBranch %22
+ %22 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %28
%30 = OpLabel
- %31 = OpCompositeExtract %v4float %27 0
- %32 = OpCompositeExtract %uint %27 2
- %33 = OpCompositeExtract %uint %27 3
- %34 = OpIAdd %uint %32 %33
- OpBranch %29
- %29 = OpLabel
+ %32 = OpLoad %v4float %position_1
+ %33 = OpLoad %bool %front_facing_1
+ %34 = OpLoad %uint %sample_index_1
+ %37 = OpAccessChain %_ptr_Input_uint %sample_mask_1 %int_0
+ %38 = OpLoad %uint %37
+ %39 = OpCompositeConstruct %FragmentInputs %32 %33 %34 %38
+ %31 = OpFunctionCall %void %main_inner %39
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_input_locations.wgsl.expected.spvasm b/test/shader_io/fragment_input_locations.wgsl.expected.spvasm
index 0d6f926..abc2d30 100644
--- a/test/shader_io/fragment_input_locations.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_input_locations.wgsl.expected.spvasm
@@ -1,42 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 21
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %main_inner "main_inner"
+ OpName %loc0 "loc0"
+ OpName %loc1 "loc1"
+ OpName %loc2 "loc2"
+ OpName %loc3 "loc3"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol Flat
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc0_1 Flat
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc1_1 Flat
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol = OpVariable %_ptr_Input_int Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_3 = OpVariable %_ptr_Input_v4float Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%void = OpTypeVoid
- %13 = OpTypeFunction %void
- %main = OpFunction %void None %13
- %16 = OpLabel
- %17 = OpLoad %int %tint_symbol
- %18 = OpLoad %uint %tint_symbol_1
- %19 = OpLoad %float %tint_symbol_2
- %20 = OpLoad %v4float %tint_symbol_3
+ %13 = OpTypeFunction %void %int %uint %float %v4float
+ %21 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %13
+ %loc0 = OpFunctionParameter %int
+ %loc1 = OpFunctionParameter %uint
+ %loc2 = OpFunctionParameter %float
+ %loc3 = OpFunctionParameter %v4float
+ %20 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %21
+ %23 = OpLabel
+ %25 = OpLoad %int %loc0_1
+ %26 = OpLoad %uint %loc1_1
+ %27 = OpLoad %float %loc2_1
+ %28 = OpLoad %v4float %loc3_1
+ %24 = OpFunctionCall %void %main_inner %25 %26 %27 %28
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_input_locations_struct.wgsl.expected.spvasm b/test/shader_io/fragment_input_locations_struct.wgsl.expected.spvasm
index 8f22d6c..491a34f 100644
--- a/test/shader_io/fragment_input_locations_struct.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_input_locations_struct.wgsl.expected.spvasm
@@ -1,57 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %main "main"
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
OpName %FragmentInputs "FragmentInputs"
OpMemberName %FragmentInputs 0 "loc0"
OpMemberName %FragmentInputs 1 "loc1"
OpMemberName %FragmentInputs 2 "loc2"
OpMemberName %FragmentInputs 3 "loc3"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol Flat
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
+ OpName %main_inner "main_inner"
+ OpName %inputs "inputs"
+ OpName %main "main"
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc0_1 Flat
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc1_1 Flat
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
OpMemberDecorate %FragmentInputs 0 Offset 0
OpMemberDecorate %FragmentInputs 1 Offset 4
OpMemberDecorate %FragmentInputs 2 Offset 8
OpMemberDecorate %FragmentInputs 3 Offset 16
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol = OpVariable %_ptr_Input_int Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_3 = OpVariable %_ptr_Input_v4float Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%void = OpTypeVoid
- %13 = OpTypeFunction %void
%FragmentInputs = OpTypeStruct %int %uint %float %v4float
- %main = OpFunction %void None %13
- %16 = OpLabel
- %18 = OpLoad %int %tint_symbol
- %19 = OpLoad %uint %tint_symbol_1
- %20 = OpLoad %float %tint_symbol_2
- %21 = OpLoad %v4float %tint_symbol_3
- %22 = OpCompositeConstruct %FragmentInputs %18 %19 %20 %21
- %23 = OpCompositeExtract %int %22 0
- %24 = OpCompositeExtract %uint %22 1
- %25 = OpCompositeExtract %float %22 2
- %26 = OpCompositeExtract %v4float %22 3
+ %13 = OpTypeFunction %void %FragmentInputs
+ %23 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %13
+ %inputs = OpFunctionParameter %FragmentInputs
+ %18 = OpLabel
+ %19 = OpCompositeExtract %int %inputs 0
+ %20 = OpCompositeExtract %uint %inputs 1
+ %21 = OpCompositeExtract %float %inputs 2
+ %22 = OpCompositeExtract %v4float %inputs 3
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %23
+ %25 = OpLabel
+ %27 = OpLoad %int %loc0_1
+ %28 = OpLoad %uint %loc1_1
+ %29 = OpLoad %float %loc2_1
+ %30 = OpLoad %v4float %loc3_1
+ %31 = OpCompositeConstruct %FragmentInputs %27 %28 %29 %30
+ %26 = OpFunctionCall %void %main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_input_mixed.wgsl.expected.spvasm b/test/shader_io/fragment_input_mixed.wgsl.expected.spvasm
index 2bdd515..d312bcf 100644
--- a/test/shader_io/fragment_input_mixed.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_input_mixed.wgsl.expected.spvasm
@@ -1,39 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 57
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_6 %tint_symbol_7 %tint_symbol_3 %tint_symbol_5 %tint_symbol_4 %tint_symbol_9
+ OpEntryPoint Fragment %main "main" %position_1 %loc0_1 %front_facing_1 %loc1_1 %sample_index_1 %loc3_1 %sample_mask_1 %loc2_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_9 "tint_symbol_9"
- OpName %main "main"
+ OpName %position_1 "position_1"
+ OpName %loc0_1 "loc0_1"
+ OpName %front_facing_1 "front_facing_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %sample_index_1 "sample_index_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %sample_mask_1 "sample_mask_1"
+ OpName %loc2_1 "loc2_1"
OpName %FragmentInputs0 "FragmentInputs0"
OpMemberName %FragmentInputs0 0 "position"
OpMemberName %FragmentInputs0 1 "loc0"
OpName %FragmentInputs1 "FragmentInputs1"
OpMemberName %FragmentInputs1 0 "loc3"
OpMemberName %FragmentInputs1 1 "sample_mask"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 BuiltIn FrontFacing
- OpDecorate %tint_symbol_4 Location 1
- OpDecorate %tint_symbol_4 Flat
- OpDecorate %tint_symbol_5 BuiltIn SampleId
- OpDecorate %tint_symbol_6 Location 3
+ OpName %main_inner "main_inner"
+ OpName %inputs0 "inputs0"
+ OpName %front_facing "front_facing"
+ OpName %loc1 "loc1"
+ OpName %sample_index "sample_index"
+ OpName %inputs1 "inputs1"
+ OpName %loc2 "loc2"
+ OpName %main "main"
+ OpDecorate %position_1 BuiltIn FragCoord
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc0_1 Flat
+ OpDecorate %front_facing_1 BuiltIn FrontFacing
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc1_1 Flat
+ OpDecorate %sample_index_1 BuiltIn SampleId
+ OpDecorate %loc3_1 Location 3
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_7 BuiltIn SampleMask
- OpDecorate %tint_symbol_9 Location 2
+ OpDecorate %sample_mask_1 BuiltIn SampleMask
+ OpDecorate %loc2_1 Location 2
OpMemberDecorate %FragmentInputs0 0 Offset 0
OpMemberDecorate %FragmentInputs0 1 Offset 16
OpMemberDecorate %FragmentInputs1 0 Offset 0
@@ -41,51 +48,63 @@
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+ %position_1 = OpVariable %_ptr_Input_v4float Input
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
%bool = OpTypeBool
%_ptr_Input_bool = OpTypePointer Input %bool
-%tint_symbol_3 = OpVariable %_ptr_Input_bool Input
+%front_facing_1 = OpVariable %_ptr_Input_bool Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_4 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_5 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_6 = OpVariable %_ptr_Input_v4float Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
+%sample_index_1 = OpVariable %_ptr_Input_uint Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol_7 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%sample_mask_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_9 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%void = OpTypeVoid
- %22 = OpTypeFunction %void
%FragmentInputs0 = OpTypeStruct %v4float %int
%FragmentInputs1 = OpTypeStruct %v4float %uint
+ %22 = OpTypeFunction %void %FragmentInputs0 %bool %uint %uint %FragmentInputs1 %float
+ %41 = OpTypeFunction %void
%int_0 = OpConstant %int 0
- %main = OpFunction %void None %22
- %25 = OpLabel
- %27 = OpLoad %v4float %tint_symbol
- %28 = OpLoad %int %tint_symbol_1
- %29 = OpCompositeConstruct %FragmentInputs0 %27 %28
- %31 = OpLoad %v4float %tint_symbol_6
- %33 = OpAccessChain %_ptr_Input_uint %tint_symbol_7 %int_0
- %34 = OpLoad %uint %33
- %35 = OpCompositeConstruct %FragmentInputs1 %31 %34
- %36 = OpLoad %bool %tint_symbol_3
- OpSelectionMerge %37 None
- OpBranchConditional %36 %38 %37
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %29 0
- %40 = OpLoad %uint %tint_symbol_5
- %41 = OpCompositeExtract %uint %35 1
- %42 = OpIAdd %uint %40 %41
- %43 = OpCompositeExtract %int %29 1
- %44 = OpLoad %uint %tint_symbol_4
- %45 = OpLoad %float %tint_symbol_9
- %46 = OpCompositeExtract %v4float %35 0
- OpBranch %37
- %37 = OpLabel
+ %main_inner = OpFunction %void None %22
+ %inputs0 = OpFunctionParameter %FragmentInputs0
+%front_facing = OpFunctionParameter %bool
+ %loc1 = OpFunctionParameter %uint
+%sample_index = OpFunctionParameter %uint
+ %inputs1 = OpFunctionParameter %FragmentInputs1
+ %loc2 = OpFunctionParameter %float
+ %33 = OpLabel
+ OpSelectionMerge %34 None
+ OpBranchConditional %front_facing %35 %34
+ %35 = OpLabel
+ %36 = OpCompositeExtract %v4float %inputs0 0
+ %37 = OpCompositeExtract %uint %inputs1 1
+ %38 = OpIAdd %uint %sample_index %37
+ %39 = OpCompositeExtract %int %inputs0 1
+ %40 = OpCompositeExtract %v4float %inputs1 0
+ OpBranch %34
+ %34 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %41
+ %43 = OpLabel
+ %45 = OpLoad %v4float %position_1
+ %46 = OpLoad %int %loc0_1
+ %47 = OpCompositeConstruct %FragmentInputs0 %45 %46
+ %48 = OpLoad %bool %front_facing_1
+ %49 = OpLoad %uint %loc1_1
+ %50 = OpLoad %uint %sample_index_1
+ %51 = OpLoad %v4float %loc3_1
+ %53 = OpAccessChain %_ptr_Input_uint %sample_mask_1 %int_0
+ %54 = OpLoad %uint %53
+ %55 = OpCompositeConstruct %FragmentInputs1 %51 %54
+ %56 = OpLoad %float %loc2_1
+ %44 = OpFunctionCall %void %main_inner %47 %48 %49 %50 %55 %56
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_output_builtins.wgsl.expected.spvasm b/test/shader_io/fragment_output_builtins.wgsl.expected.spvasm
index cf60151..7eb37e0 100644
--- a/test/shader_io/fragment_output_builtins.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_output_builtins.wgsl.expected.spvasm
@@ -1,64 +1,60 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main1 "main1" %tint_symbol_1
- OpEntryPoint Fragment %main2 "main2" %tint_symbol_4
+ OpEntryPoint Fragment %main1 "main1" %value
+ OpEntryPoint Fragment %main2 "main2" %value_1
OpExecutionMode %main1 OriginUpperLeft
OpExecutionMode %main1 DepthReplacing
OpExecutionMode %main2 OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %value "value"
+ OpName %value_1 "value_1"
+ OpName %main1_inner "main1_inner"
OpName %main1 "main1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %main2_inner "main2_inner"
OpName %main2 "main2"
- OpDecorate %tint_symbol_1 BuiltIn FragDepth
+ OpDecorate %value BuiltIn FragDepth
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_4 BuiltIn SampleMask
+ OpDecorate %value_1 BuiltIn SampleMask
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
+ %value = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
%10 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_4 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %10
- %void = OpTypeVoid
- %11 = OpTypeFunction %void %float
- %16 = OpTypeFunction %void
+ %value_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %10
+ %11 = OpTypeFunction %float
%float_1 = OpConstant %float 1
- %21 = OpTypeFunction %void %uint
+ %void = OpTypeVoid
+ %15 = OpTypeFunction %void
+ %20 = OpTypeFunction %uint
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_2 = OpFunction %void None %11
-%tint_symbol = OpFunctionParameter %float
- %15 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+%main1_inner = OpFunction %float None %11
+ %13 = OpLabel
+ OpReturnValue %float_1
OpFunctionEnd
- %main1 = OpFunction %void None %16
+ %main1 = OpFunction %void None %15
%18 = OpLabel
- %19 = OpFunctionCall %void %tint_symbol_2 %float_1
+ %19 = OpFunctionCall %float %main1_inner
+ OpStore %value %19
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %21
-%tint_symbol_3 = OpFunctionParameter %uint
+%main2_inner = OpFunction %uint None %20
+ %22 = OpLabel
+ OpReturnValue %uint_1
+ OpFunctionEnd
+ %main2 = OpFunction %void None %15
%24 = OpLabel
- %28 = OpAccessChain %_ptr_Output_uint %tint_symbol_4 %int_0
- OpStore %28 %tint_symbol_3
- OpReturn
- OpFunctionEnd
- %main2 = OpFunction %void None %16
- %30 = OpLabel
- %31 = OpFunctionCall %void %tint_symbol_5 %uint_1
+ %25 = OpFunctionCall %uint %main2_inner
+ %29 = OpAccessChain %_ptr_Output_uint %value_1 %int_0
+ OpStore %29 %25
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_output_builtins_struct.wgsl.expected.spvasm b/test/shader_io/fragment_output_builtins_struct.wgsl.expected.spvasm
index 45f416d..b431551 100644
--- a/test/shader_io/fragment_output_builtins_struct.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_output_builtins_struct.wgsl.expected.spvasm
@@ -1,57 +1,55 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 29
+; Bound: 28
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_depth_1 %sample_mask_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %frag_depth_1 "frag_depth_1"
+ OpName %sample_mask_1 "sample_mask_1"
OpName %FragmentOutputs "FragmentOutputs"
OpMemberName %FragmentOutputs 0 "frag_depth"
OpMemberName %FragmentOutputs 1 "sample_mask"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 BuiltIn FragDepth
+ OpDecorate %frag_depth_1 BuiltIn FragDepth
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_2 BuiltIn SampleMask
+ OpDecorate %sample_mask_1 BuiltIn SampleMask
OpMemberDecorate %FragmentOutputs 0 Offset 0
OpMemberDecorate %FragmentOutputs 1 Offset 4
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
+%frag_depth_1 = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
%10 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_2 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %10
- %void = OpTypeVoid
+%sample_mask_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %10
%FragmentOutputs = OpTypeStruct %float %uint
- %11 = OpTypeFunction %void %FragmentOutputs
+ %11 = OpTypeFunction %FragmentOutputs
+ %float_1 = OpConstant %float 1
+ %16 = OpConstantComposite %FragmentOutputs %float_1 %uint_1
+ %void = OpTypeVoid
+ %17 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Output_uint = OpTypePointer Output %uint
- %23 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
- %28 = OpConstantComposite %FragmentOutputs %float_1 %uint_1
-%tint_symbol_3 = OpFunction %void None %11
-%tint_symbol = OpFunctionParameter %FragmentOutputs
- %16 = OpLabel
- %17 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %17
- %21 = OpAccessChain %_ptr_Output_uint %tint_symbol_2 %int_0
- %22 = OpCompositeExtract %uint %tint_symbol 1
- OpStore %21 %22
- OpReturn
+ %main_inner = OpFunction %FragmentOutputs None %11
+ %14 = OpLabel
+ OpReturnValue %16
OpFunctionEnd
- %main = OpFunction %void None %23
- %25 = OpLabel
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %main = OpFunction %void None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %FragmentOutputs %main_inner
+ %22 = OpCompositeExtract %float %21 0
+ OpStore %frag_depth_1 %22
+ %26 = OpAccessChain %_ptr_Output_uint %sample_mask_1 %int_0
+ %27 = OpCompositeExtract %uint %21 1
+ OpStore %26 %27
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_output_locations.wgsl.expected.spvasm b/test/shader_io/fragment_output_locations.wgsl.expected.spvasm
index ef873b5..8ac79ea 100644
--- a/test/shader_io/fragment_output_locations.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_output_locations.wgsl.expected.spvasm
@@ -1,108 +1,100 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 50
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main0 "main0" %tint_symbol_1
- OpEntryPoint Fragment %main1 "main1" %tint_symbol_4
- OpEntryPoint Fragment %main2 "main2" %tint_symbol_7
- OpEntryPoint Fragment %main3 "main3" %tint_symbol_10
+ OpEntryPoint Fragment %main0 "main0" %value
+ OpEntryPoint Fragment %main1 "main1" %value_1
+ OpEntryPoint Fragment %main2 "main2" %value_2
+ OpEntryPoint Fragment %main3 "main3" %value_3
OpExecutionMode %main0 OriginUpperLeft
OpExecutionMode %main1 OriginUpperLeft
OpExecutionMode %main2 OriginUpperLeft
OpExecutionMode %main3 OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_10 "tint_symbol_10"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %value "value"
+ OpName %value_1 "value_1"
+ OpName %value_2 "value_2"
+ OpName %value_3 "value_3"
+ OpName %main0_inner "main0_inner"
OpName %main0 "main0"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %main1_inner "main1_inner"
OpName %main1 "main1"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %main2_inner "main2_inner"
OpName %main2 "main2"
- OpName %tint_symbol_11 "tint_symbol_11"
- OpName %tint_symbol_9 "tint_symbol_9"
+ OpName %main3_inner "main3_inner"
OpName %main3 "main3"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_4 Location 1
- OpDecorate %tint_symbol_7 Location 2
- OpDecorate %tint_symbol_10 Location 3
+ OpDecorate %value Location 0
+ OpDecorate %value_1 Location 1
+ OpDecorate %value_2 Location 2
+ OpDecorate %value_3 Location 3
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
%4 = OpConstantNull %int
-%tint_symbol_1 = OpVariable %_ptr_Output_int Output %4
+ %value = OpVariable %_ptr_Output_int Output %4
%uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
%8 = OpConstantNull %uint
-%tint_symbol_4 = OpVariable %_ptr_Output_uint Output %8
+ %value_1 = OpVariable %_ptr_Output_uint Output %8
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%12 = OpConstantNull %float
-%tint_symbol_7 = OpVariable %_ptr_Output_float Output %12
+ %value_2 = OpVariable %_ptr_Output_float Output %12
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%16 = OpConstantNull %v4float
-%tint_symbol_10 = OpVariable %_ptr_Output_v4float Output %16
- %void = OpTypeVoid
- %17 = OpTypeFunction %void %int
- %22 = OpTypeFunction %void
+ %value_3 = OpVariable %_ptr_Output_v4float Output %16
+ %17 = OpTypeFunction %int
%int_1 = OpConstant %int 1
- %27 = OpTypeFunction %void %uint
+ %void = OpTypeVoid
+ %21 = OpTypeFunction %void
+ %26 = OpTypeFunction %uint
%uint_1 = OpConstant %uint 1
- %35 = OpTypeFunction %void %float
+ %33 = OpTypeFunction %float
%float_1 = OpConstant %float 1
- %43 = OpTypeFunction %void %v4float
+ %40 = OpTypeFunction %v4float
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %53 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %int
- %21 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %46 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+%main0_inner = OpFunction %int None %17
+ %19 = OpLabel
+ OpReturnValue %int_1
OpFunctionEnd
- %main0 = OpFunction %void None %22
+ %main0 = OpFunction %void None %21
%24 = OpLabel
- %25 = OpFunctionCall %void %tint_symbol_2 %int_1
+ %25 = OpFunctionCall %int %main0_inner
+ OpStore %value %25
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %27
-%tint_symbol_3 = OpFunctionParameter %uint
- %30 = OpLabel
- OpStore %tint_symbol_4 %tint_symbol_3
+%main1_inner = OpFunction %uint None %26
+ %28 = OpLabel
+ OpReturnValue %uint_1
+ OpFunctionEnd
+ %main1 = OpFunction %void None %21
+ %31 = OpLabel
+ %32 = OpFunctionCall %uint %main1_inner
+ OpStore %value_1 %32
OpReturn
OpFunctionEnd
- %main1 = OpFunction %void None %22
- %32 = OpLabel
- %33 = OpFunctionCall %void %tint_symbol_5 %uint_1
- OpReturn
+%main2_inner = OpFunction %float None %33
+ %35 = OpLabel
+ OpReturnValue %float_1
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %35
-%tint_symbol_6 = OpFunctionParameter %float
+ %main2 = OpFunction %void None %21
%38 = OpLabel
- OpStore %tint_symbol_7 %tint_symbol_6
+ %39 = OpFunctionCall %float %main2_inner
+ OpStore %value_2 %39
OpReturn
OpFunctionEnd
- %main2 = OpFunction %void None %22
- %40 = OpLabel
- %41 = OpFunctionCall %void %tint_symbol_8 %float_1
- OpReturn
+%main3_inner = OpFunction %v4float None %40
+ %42 = OpLabel
+ OpReturnValue %46
OpFunctionEnd
-%tint_symbol_11 = OpFunction %void None %43
-%tint_symbol_9 = OpFunctionParameter %v4float
- %46 = OpLabel
- OpStore %tint_symbol_10 %tint_symbol_9
- OpReturn
- OpFunctionEnd
- %main3 = OpFunction %void None %22
+ %main3 = OpFunction %void None %21
%48 = OpLabel
- %49 = OpFunctionCall %void %tint_symbol_11 %53
+ %49 = OpFunctionCall %v4float %main3_inner
+ OpStore %value_3 %49
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_output_locations_struct.wgsl.expected.spvasm b/test/shader_io/fragment_output_locations_struct.wgsl.expected.spvasm
index 9ad60b7..ee9e16b 100644
--- a/test/shader_io/fragment_output_locations_struct.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_output_locations_struct.wgsl.expected.spvasm
@@ -1,28 +1,27 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4
+ OpEntryPoint Fragment %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
OpName %FragmentOutputs "FragmentOutputs"
OpMemberName %FragmentOutputs 0 "loc0"
OpMemberName %FragmentOutputs 1 "loc1"
OpMemberName %FragmentOutputs 2 "loc2"
OpMemberName %FragmentOutputs 3 "loc3"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 Location 1
- OpDecorate %tint_symbol_3 Location 2
- OpDecorate %tint_symbol_4 Location 3
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
OpMemberDecorate %FragmentOutputs 0 Offset 0
OpMemberDecorate %FragmentOutputs 1 Offset 4
OpMemberDecorate %FragmentOutputs 2 Offset 8
@@ -30,46 +29,45 @@
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
%4 = OpConstantNull %int
-%tint_symbol_1 = OpVariable %_ptr_Output_int Output %4
+ %loc0_1 = OpVariable %_ptr_Output_int Output %4
%uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
%8 = OpConstantNull %uint
-%tint_symbol_2 = OpVariable %_ptr_Output_uint Output %8
+ %loc1_1 = OpVariable %_ptr_Output_uint Output %8
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%12 = OpConstantNull %float
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %12
+ %loc2_1 = OpVariable %_ptr_Output_float Output %12
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%16 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %16
- %void = OpTypeVoid
+ %loc3_1 = OpVariable %_ptr_Output_v4float Output %16
%FragmentOutputs = OpTypeStruct %int %uint %float %v4float
- %17 = OpTypeFunction %void %FragmentOutputs
- %27 = OpTypeFunction %void
+ %17 = OpTypeFunction %FragmentOutputs
%int_1 = OpConstant %int 1
%uint_1 = OpConstant %uint 1
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %37 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
- %38 = OpConstantComposite %FragmentOutputs %int_1 %uint_1 %float_1 %37
-%tint_symbol_5 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %FragmentOutputs
- %22 = OpLabel
- %23 = OpCompositeExtract %int %tint_symbol 0
- OpStore %tint_symbol_1 %23
- %24 = OpCompositeExtract %uint %tint_symbol 1
- OpStore %tint_symbol_2 %24
- %25 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %25
- %26 = OpCompositeExtract %v4float %tint_symbol 3
- OpStore %tint_symbol_4 %26
- OpReturn
+ %27 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %28 = OpConstantComposite %FragmentOutputs %int_1 %uint_1 %float_1 %27
+ %void = OpTypeVoid
+ %29 = OpTypeFunction %void
+ %main_inner = OpFunction %FragmentOutputs None %17
+ %20 = OpLabel
+ OpReturnValue %28
OpFunctionEnd
- %main = OpFunction %void None %27
- %29 = OpLabel
- %30 = OpFunctionCall %void %tint_symbol_5 %38
+ %main = OpFunction %void None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %FragmentOutputs %main_inner
+ %34 = OpCompositeExtract %int %33 0
+ OpStore %loc0_1 %34
+ %35 = OpCompositeExtract %uint %33 1
+ OpStore %loc1_1 %35
+ %36 = OpCompositeExtract %float %33 2
+ OpStore %loc2_1 %36
+ %37 = OpCompositeExtract %v4float %33 3
+ OpStore %loc3_1 %37
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/fragment_output_mixed.wgsl.expected.spvasm b/test/shader_io/fragment_output_mixed.wgsl.expected.spvasm
index 164fdf0..4002fe6 100644
--- a/test/shader_io/fragment_output_mixed.wgsl.expected.spvasm
+++ b/test/shader_io/fragment_output_mixed.wgsl.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_6
+ OpEntryPoint Fragment %main "main" %loc0_1 %frag_depth_1 %loc1_1 %loc2_1 %sample_mask_1 %loc3_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %loc0_1 "loc0_1"
+ OpName %frag_depth_1 "frag_depth_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %sample_mask_1 "sample_mask_1"
+ OpName %loc3_1 "loc3_1"
OpName %FragmentOutputs "FragmentOutputs"
OpMemberName %FragmentOutputs 0 "loc0"
OpMemberName %FragmentOutputs 1 "frag_depth"
@@ -21,16 +21,15 @@
OpMemberName %FragmentOutputs 3 "loc2"
OpMemberName %FragmentOutputs 4 "sample_mask"
OpMemberName %FragmentOutputs 5 "loc3"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
- OpDecorate %tint_symbol_3 Location 1
- OpDecorate %tint_symbol_4 Location 2
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %frag_depth_1 BuiltIn FragDepth
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc2_1 Location 2
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_5 BuiltIn SampleMask
- OpDecorate %tint_symbol_6 Location 3
+ OpDecorate %sample_mask_1 BuiltIn SampleMask
+ OpDecorate %loc3_1 Location 3
OpMemberDecorate %FragmentOutputs 0 Offset 0
OpMemberDecorate %FragmentOutputs 1 Offset 4
OpMemberDecorate %FragmentOutputs 2 Offset 8
@@ -40,58 +39,57 @@
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
%4 = OpConstantNull %int
-%tint_symbol_1 = OpVariable %_ptr_Output_int Output %4
+ %loc0_1 = OpVariable %_ptr_Output_int Output %4
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%8 = OpConstantNull %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
+%frag_depth_1 = OpVariable %_ptr_Output_float Output %8
%uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
%12 = OpConstantNull %uint
-%tint_symbol_3 = OpVariable %_ptr_Output_uint Output %12
-%tint_symbol_4 = OpVariable %_ptr_Output_float Output %8
+ %loc1_1 = OpVariable %_ptr_Output_uint Output %12
+ %loc2_1 = OpVariable %_ptr_Output_float Output %8
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
%18 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_5 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %18
+%sample_mask_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %18
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%22 = OpConstantNull %v4float
-%tint_symbol_6 = OpVariable %_ptr_Output_v4float Output %22
- %void = OpTypeVoid
+ %loc3_1 = OpVariable %_ptr_Output_v4float Output %22
%FragmentOutputs = OpTypeStruct %int %float %uint %float %uint %v4float
- %23 = OpTypeFunction %void %FragmentOutputs
- %int_0 = OpConstant %int 0
- %37 = OpTypeFunction %void
+ %23 = OpTypeFunction %FragmentOutputs
%int_1 = OpConstant %int 1
%float_2 = OpConstant %float 2
%float_1 = OpConstant %float 1
%uint_2 = OpConstant %uint 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %47 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
- %48 = OpConstantComposite %FragmentOutputs %int_1 %float_2 %uint_1 %float_1 %uint_2 %47
-%tint_symbol_7 = OpFunction %void None %23
-%tint_symbol = OpFunctionParameter %FragmentOutputs
- %28 = OpLabel
- %29 = OpCompositeExtract %int %tint_symbol 0
- OpStore %tint_symbol_1 %29
- %30 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %30
- %31 = OpCompositeExtract %uint %tint_symbol 2
- OpStore %tint_symbol_3 %31
- %32 = OpCompositeExtract %float %tint_symbol 3
- OpStore %tint_symbol_4 %32
- %34 = OpAccessChain %_ptr_Output_uint %tint_symbol_5 %int_0
- %35 = OpCompositeExtract %uint %tint_symbol 4
- OpStore %34 %35
- %36 = OpCompositeExtract %v4float %tint_symbol 5
- OpStore %tint_symbol_6 %36
- OpReturn
+ %33 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %34 = OpConstantComposite %FragmentOutputs %int_1 %float_2 %uint_1 %float_1 %uint_2 %33
+ %void = OpTypeVoid
+ %35 = OpTypeFunction %void
+ %int_0 = OpConstant %int 0
+ %main_inner = OpFunction %FragmentOutputs None %23
+ %26 = OpLabel
+ OpReturnValue %34
OpFunctionEnd
- %main = OpFunction %void None %37
- %39 = OpLabel
- %40 = OpFunctionCall %void %tint_symbol_7 %48
+ %main = OpFunction %void None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %FragmentOutputs %main_inner
+ %40 = OpCompositeExtract %int %39 0
+ OpStore %loc0_1 %40
+ %41 = OpCompositeExtract %float %39 1
+ OpStore %frag_depth_1 %41
+ %42 = OpCompositeExtract %uint %39 2
+ OpStore %loc1_1 %42
+ %43 = OpCompositeExtract %float %39 3
+ OpStore %loc2_1 %43
+ %45 = OpAccessChain %_ptr_Output_uint %sample_mask_1 %int_0
+ %46 = OpCompositeExtract %uint %39 4
+ OpStore %45 %46
+ %47 = OpCompositeExtract %v4float %39 5
+ OpStore %loc3_1 %47
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/interpolate_input_parameters.wgsl.expected.spvasm b/test/shader_io/interpolate_input_parameters.wgsl.expected.spvasm
index 5b0348f..9e2378a 100644
--- a/test/shader_io/interpolate_input_parameters.wgsl.expected.spvasm
+++ b/test/shader_io/interpolate_input_parameters.wgsl.expected.spvasm
@@ -1,51 +1,82 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 15
+; Bound: 35
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main"
+ OpEntryPoint Fragment %main "main" %none_1 %flat_1 %perspective_center_1 %perspective_centroid_1 %perspective_sample_1 %linear_center_1 %linear_centroid_1 %linear_sample_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
+ OpName %none_1 "none_1"
+ OpName %flat_1 "flat_1"
+ OpName %perspective_center_1 "perspective_center_1"
+ OpName %perspective_centroid_1 "perspective_centroid_1"
+ OpName %perspective_sample_1 "perspective_sample_1"
+ OpName %linear_center_1 "linear_center_1"
+ OpName %linear_centroid_1 "linear_centroid_1"
+ OpName %linear_sample_1 "linear_sample_1"
+ OpName %main_inner "main_inner"
+ OpName %none "none"
+ OpName %flat "flat"
+ OpName %perspective_center "perspective_center"
+ OpName %perspective_centroid "perspective_centroid"
+ OpName %perspective_sample "perspective_sample"
+ OpName %linear_center "linear_center"
+ OpName %linear_centroid "linear_centroid"
+ OpName %linear_sample "linear_sample"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_3 Centroid
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_4 Sample
- OpDecorate %tint_symbol_5 Location 5
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_6 Location 6
- OpDecorate %tint_symbol_6 NoPerspective
- OpDecorate %tint_symbol_6 Centroid
- OpDecorate %tint_symbol_7 Location 7
- OpDecorate %tint_symbol_7 NoPerspective
- OpDecorate %tint_symbol_7 Sample
+ OpDecorate %none_1 Location 0
+ OpDecorate %flat_1 Location 1
+ OpDecorate %flat_1 Flat
+ OpDecorate %perspective_center_1 Location 2
+ OpDecorate %perspective_centroid_1 Location 3
+ OpDecorate %perspective_centroid_1 Centroid
+ OpDecorate %perspective_sample_1 Location 4
+ OpDecorate %perspective_sample_1 Sample
+ OpDecorate %linear_center_1 Location 5
+ OpDecorate %linear_center_1 NoPerspective
+ OpDecorate %linear_centroid_1 Location 6
+ OpDecorate %linear_centroid_1 NoPerspective
+ OpDecorate %linear_centroid_1 Centroid
+ OpDecorate %linear_sample_1 Location 7
+ OpDecorate %linear_sample_1 NoPerspective
+ OpDecorate %linear_sample_1 Sample
%float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
-%tint_symbol_6 = OpVariable %_ptr_Input_float Input
-%tint_symbol_7 = OpVariable %_ptr_Input_float Input
+ %none_1 = OpVariable %_ptr_Input_float Input
+ %flat_1 = OpVariable %_ptr_Input_float Input
+%perspective_center_1 = OpVariable %_ptr_Input_float Input
+%perspective_centroid_1 = OpVariable %_ptr_Input_float Input
+%perspective_sample_1 = OpVariable %_ptr_Input_float Input
+%linear_center_1 = OpVariable %_ptr_Input_float Input
+%linear_centroid_1 = OpVariable %_ptr_Input_float Input
+%linear_sample_1 = OpVariable %_ptr_Input_float Input
%void = OpTypeVoid
- %11 = OpTypeFunction %void
- %main = OpFunction %void None %11
- %14 = OpLabel
+ %11 = OpTypeFunction %void %float %float %float %float %float %float %float %float
+ %23 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %11
+ %none = OpFunctionParameter %float
+ %flat = OpFunctionParameter %float
+%perspective_center = OpFunctionParameter %float
+%perspective_centroid = OpFunctionParameter %float
+%perspective_sample = OpFunctionParameter %float
+%linear_center = OpFunctionParameter %float
+%linear_centroid = OpFunctionParameter %float
+%linear_sample = OpFunctionParameter %float
+ %22 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %23
+ %25 = OpLabel
+ %27 = OpLoad %float %none_1
+ %28 = OpLoad %float %flat_1
+ %29 = OpLoad %float %perspective_center_1
+ %30 = OpLoad %float %perspective_centroid_1
+ %31 = OpLoad %float %perspective_sample_1
+ %32 = OpLoad %float %linear_center_1
+ %33 = OpLoad %float %linear_centroid_1
+ %34 = OpLoad %float %linear_sample_1
+ %26 = OpFunctionCall %void %main_inner %27 %28 %29 %30 %31 %32 %33 %34
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/interpolate_input_struct.wgsl.expected.spvasm b/test/shader_io/interpolate_input_struct.wgsl.expected.spvasm
index 5b0348f..a13e5d6 100644
--- a/test/shader_io/interpolate_input_struct.wgsl.expected.spvasm
+++ b/test/shader_io/interpolate_input_struct.wgsl.expected.spvasm
@@ -1,51 +1,87 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 15
+; Bound: 30
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main"
+ OpEntryPoint Fragment %main "main" %none_1 %flat_1 %perspective_center_1 %perspective_centroid_1 %perspective_sample_1 %linear_center_1 %linear_centroid_1 %linear_sample_1
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
+ OpName %none_1 "none_1"
+ OpName %flat_1 "flat_1"
+ OpName %perspective_center_1 "perspective_center_1"
+ OpName %perspective_centroid_1 "perspective_centroid_1"
+ OpName %perspective_sample_1 "perspective_sample_1"
+ OpName %linear_center_1 "linear_center_1"
+ OpName %linear_centroid_1 "linear_centroid_1"
+ OpName %linear_sample_1 "linear_sample_1"
+ OpName %In "In"
+ OpMemberName %In 0 "none"
+ OpMemberName %In 1 "flat"
+ OpMemberName %In 2 "perspective_center"
+ OpMemberName %In 3 "perspective_centroid"
+ OpMemberName %In 4 "perspective_sample"
+ OpMemberName %In 5 "linear_center"
+ OpMemberName %In 6 "linear_centroid"
+ OpMemberName %In 7 "linear_sample"
+ OpName %main_inner "main_inner"
+ OpName %in "in"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_3 Centroid
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_4 Sample
- OpDecorate %tint_symbol_5 Location 5
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_6 Location 6
- OpDecorate %tint_symbol_6 NoPerspective
- OpDecorate %tint_symbol_6 Centroid
- OpDecorate %tint_symbol_7 Location 7
- OpDecorate %tint_symbol_7 NoPerspective
- OpDecorate %tint_symbol_7 Sample
+ OpDecorate %none_1 Location 0
+ OpDecorate %flat_1 Location 1
+ OpDecorate %flat_1 Flat
+ OpDecorate %perspective_center_1 Location 2
+ OpDecorate %perspective_centroid_1 Location 3
+ OpDecorate %perspective_centroid_1 Centroid
+ OpDecorate %perspective_sample_1 Location 4
+ OpDecorate %perspective_sample_1 Sample
+ OpDecorate %linear_center_1 Location 5
+ OpDecorate %linear_center_1 NoPerspective
+ OpDecorate %linear_centroid_1 Location 6
+ OpDecorate %linear_centroid_1 NoPerspective
+ OpDecorate %linear_centroid_1 Centroid
+ OpDecorate %linear_sample_1 Location 7
+ OpDecorate %linear_sample_1 NoPerspective
+ OpDecorate %linear_sample_1 Sample
+ OpMemberDecorate %In 0 Offset 0
+ OpMemberDecorate %In 1 Offset 4
+ OpMemberDecorate %In 2 Offset 8
+ OpMemberDecorate %In 3 Offset 12
+ OpMemberDecorate %In 4 Offset 16
+ OpMemberDecorate %In 5 Offset 20
+ OpMemberDecorate %In 6 Offset 24
+ OpMemberDecorate %In 7 Offset 28
%float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
-%tint_symbol_6 = OpVariable %_ptr_Input_float Input
-%tint_symbol_7 = OpVariable %_ptr_Input_float Input
+ %none_1 = OpVariable %_ptr_Input_float Input
+ %flat_1 = OpVariable %_ptr_Input_float Input
+%perspective_center_1 = OpVariable %_ptr_Input_float Input
+%perspective_centroid_1 = OpVariable %_ptr_Input_float Input
+%perspective_sample_1 = OpVariable %_ptr_Input_float Input
+%linear_center_1 = OpVariable %_ptr_Input_float Input
+%linear_centroid_1 = OpVariable %_ptr_Input_float Input
+%linear_sample_1 = OpVariable %_ptr_Input_float Input
%void = OpTypeVoid
- %11 = OpTypeFunction %void
- %main = OpFunction %void None %11
- %14 = OpLabel
+ %In = OpTypeStruct %float %float %float %float %float %float %float %float
+ %11 = OpTypeFunction %void %In
+ %17 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %11
+ %in = OpFunctionParameter %In
+ %16 = OpLabel
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %17
+ %19 = OpLabel
+ %21 = OpLoad %float %none_1
+ %22 = OpLoad %float %flat_1
+ %23 = OpLoad %float %perspective_center_1
+ %24 = OpLoad %float %perspective_centroid_1
+ %25 = OpLoad %float %perspective_sample_1
+ %26 = OpLoad %float %linear_center_1
+ %27 = OpLoad %float %linear_centroid_1
+ %28 = OpLoad %float %linear_sample_1
+ %29 = OpCompositeConstruct %In %21 %22 %23 %24 %25 %26 %27 %28
+ %20 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/interpolate_integers.wgsl.expected.spvasm b/test/shader_io/interpolate_integers.wgsl.expected.spvasm
index 7caa7e2..8bb78a1 100644
--- a/test/shader_io/interpolate_integers.wgsl.expected.spvasm
+++ b/test/shader_io/interpolate_integers.wgsl.expected.spvasm
@@ -1,140 +1,138 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vert_main "vert_main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_7 %tint_symbol_8 %tint_symbol_9 %tint_symbol_10 %tint_symbol_11 %tint_symbol_14
+ OpEntryPoint Vertex %vert_main "vert_main" %i_1 %u_1 %vi_1 %vu_1 %pos_1 %vertex_point_size
+ OpEntryPoint Fragment %frag_main "frag_main" %i_2 %u_2 %vi_2 %vu_2 %pos_2 %value
OpExecutionMode %frag_main OriginUpperLeft
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_9 "tint_symbol_9"
- OpName %tint_symbol_10 "tint_symbol_10"
- OpName %tint_symbol_11 "tint_symbol_11"
- OpName %tint_symbol_14 "tint_symbol_14"
+ OpName %i_1 "i_1"
+ OpName %u_1 "u_1"
+ OpName %vi_1 "vi_1"
+ OpName %vu_1 "vu_1"
+ OpName %pos_1 "pos_1"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %i_2 "i_2"
+ OpName %u_2 "u_2"
+ OpName %vi_2 "vi_2"
+ OpName %vu_2 "vu_2"
+ OpName %pos_2 "pos_2"
+ OpName %value "value"
OpName %Interface "Interface"
OpMemberName %Interface 0 "i"
OpMemberName %Interface 1 "u"
OpMemberName %Interface 2 "vi"
OpMemberName %Interface 3 "vu"
OpMemberName %Interface 4 "pos"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol "tint_symbol"
+ OpName %vert_main_inner "vert_main_inner"
OpName %vert_main "vert_main"
- OpName %tint_symbol_15 "tint_symbol_15"
- OpName %tint_symbol_13 "tint_symbol_13"
+ OpName %frag_main_inner "frag_main_inner"
+ OpName %inputs "inputs"
OpName %frag_main "frag_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 1
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 Location 2
- OpDecorate %tint_symbol_3 Flat
- OpDecorate %tint_symbol_4 Location 3
- OpDecorate %tint_symbol_4 Flat
- OpDecorate %tint_symbol_5 BuiltIn Position
- OpDecorate %tint_symbol_7 Location 0
- OpDecorate %tint_symbol_7 Flat
- OpDecorate %tint_symbol_8 Location 1
- OpDecorate %tint_symbol_8 Flat
- OpDecorate %tint_symbol_9 Location 2
- OpDecorate %tint_symbol_9 Flat
- OpDecorate %tint_symbol_10 Location 3
- OpDecorate %tint_symbol_10 Flat
- OpDecorate %tint_symbol_11 BuiltIn FragCoord
- OpDecorate %tint_symbol_14 Location 0
+ OpDecorate %i_1 Location 0
+ OpDecorate %i_1 Flat
+ OpDecorate %u_1 Location 1
+ OpDecorate %u_1 Flat
+ OpDecorate %vi_1 Location 2
+ OpDecorate %vi_1 Flat
+ OpDecorate %vu_1 Location 3
+ OpDecorate %vu_1 Flat
+ OpDecorate %pos_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %i_2 Location 0
+ OpDecorate %i_2 Flat
+ OpDecorate %u_2 Location 1
+ OpDecorate %u_2 Flat
+ OpDecorate %vi_2 Location 2
+ OpDecorate %vi_2 Flat
+ OpDecorate %vu_2 Location 3
+ OpDecorate %vu_2 Flat
+ OpDecorate %pos_2 BuiltIn FragCoord
+ OpDecorate %value Location 0
OpMemberDecorate %Interface 0 Offset 0
OpMemberDecorate %Interface 1 Offset 4
OpMemberDecorate %Interface 2 Offset 16
OpMemberDecorate %Interface 3 Offset 32
OpMemberDecorate %Interface 4 Offset 48
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
- %8 = OpConstantNull %int
-%tint_symbol_1 = OpVariable %_ptr_Output_int Output %8
+ %4 = OpConstantNull %int
+ %i_1 = OpVariable %_ptr_Output_int Output %4
%uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
- %12 = OpConstantNull %uint
-%tint_symbol_2 = OpVariable %_ptr_Output_uint Output %12
+ %8 = OpConstantNull %uint
+ %u_1 = OpVariable %_ptr_Output_uint Output %8
%v4int = OpTypeVector %int 4
%_ptr_Output_v4int = OpTypePointer Output %v4int
- %16 = OpConstantNull %v4int
-%tint_symbol_3 = OpVariable %_ptr_Output_v4int Output %16
+ %12 = OpConstantNull %v4int
+ %vi_1 = OpVariable %_ptr_Output_v4int Output %12
%v4uint = OpTypeVector %uint 4
%_ptr_Output_v4uint = OpTypePointer Output %v4uint
- %20 = OpConstantNull %v4uint
-%tint_symbol_4 = OpVariable %_ptr_Output_v4uint Output %20
+ %16 = OpConstantNull %v4uint
+ %vu_1 = OpVariable %_ptr_Output_v4uint Output %16
+ %float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %24 = OpConstantNull %v4float
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %24
+ %21 = OpConstantNull %v4float
+ %pos_1 = OpVariable %_ptr_Output_v4float Output %21
+%_ptr_Output_float = OpTypePointer Output %float
+ %24 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %24
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_7 = OpVariable %_ptr_Input_int Input
+ %i_2 = OpVariable %_ptr_Input_int Input
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_8 = OpVariable %_ptr_Input_uint Input
+ %u_2 = OpVariable %_ptr_Input_uint Input
%_ptr_Input_v4int = OpTypePointer Input %v4int
-%tint_symbol_9 = OpVariable %_ptr_Input_v4int Input
+ %vi_2 = OpVariable %_ptr_Input_v4int Input
%_ptr_Input_v4uint = OpTypePointer Input %v4uint
-%tint_symbol_10 = OpVariable %_ptr_Input_v4uint Input
+ %vu_2 = OpVariable %_ptr_Input_v4uint Input
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_11 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_14 = OpVariable %_ptr_Output_int Output %8
- %void = OpTypeVoid
+ %pos_2 = OpVariable %_ptr_Input_v4float Input
+ %value = OpVariable %_ptr_Output_int Output %4
%Interface = OpTypeStruct %int %uint %v4int %v4uint %v4float
- %36 = OpTypeFunction %void %Interface
- %47 = OpTypeFunction %void
+ %36 = OpTypeFunction %Interface
+ %40 = OpConstantNull %Interface
+ %void = OpTypeVoid
+ %41 = OpTypeFunction %void
%float_1 = OpConstant %float 1
- %52 = OpConstantNull %Interface
- %53 = OpTypeFunction %void %int
-%tint_symbol_6 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %Interface
- %41 = OpLabel
- %42 = OpCompositeExtract %int %tint_symbol 0
- OpStore %tint_symbol_1 %42
- %43 = OpCompositeExtract %uint %tint_symbol 1
- OpStore %tint_symbol_2 %43
- %44 = OpCompositeExtract %v4int %tint_symbol 2
- OpStore %tint_symbol_3 %44
- %45 = OpCompositeExtract %v4uint %tint_symbol 3
- OpStore %tint_symbol_4 %45
- %46 = OpCompositeExtract %v4float %tint_symbol 4
- OpStore %tint_symbol_5 %46
+ %52 = OpTypeFunction %int %Interface
+%vert_main_inner = OpFunction %Interface None %36
+ %39 = OpLabel
+ OpReturnValue %40
+ OpFunctionEnd
+ %vert_main = OpFunction %void None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %Interface %vert_main_inner
+ %46 = OpCompositeExtract %int %45 0
+ OpStore %i_1 %46
+ %47 = OpCompositeExtract %uint %45 1
+ OpStore %u_1 %47
+ %48 = OpCompositeExtract %v4int %45 2
+ OpStore %vi_1 %48
+ %49 = OpCompositeExtract %v4uint %45 3
+ OpStore %vu_1 %49
+ %50 = OpCompositeExtract %v4float %45 4
+ OpStore %pos_1 %50
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
- %vert_main = OpFunction %void None %47
- %49 = OpLabel
- OpStore %tint_pointsize %float_1
- %51 = OpFunctionCall %void %tint_symbol_6 %52
- OpReturn
+%frag_main_inner = OpFunction %int None %52
+ %inputs = OpFunctionParameter %Interface
+ %55 = OpLabel
+ %56 = OpCompositeExtract %int %inputs 0
+ OpReturnValue %56
OpFunctionEnd
-%tint_symbol_15 = OpFunction %void None %53
-%tint_symbol_13 = OpFunctionParameter %int
- %56 = OpLabel
- OpStore %tint_symbol_14 %tint_symbol_13
- OpReturn
- OpFunctionEnd
- %frag_main = OpFunction %void None %47
+ %frag_main = OpFunction %void None %41
%58 = OpLabel
- %59 = OpLoad %int %tint_symbol_7
- %60 = OpLoad %uint %tint_symbol_8
- %61 = OpLoad %v4int %tint_symbol_9
- %62 = OpLoad %v4uint %tint_symbol_10
- %63 = OpLoad %v4float %tint_symbol_11
- %64 = OpCompositeConstruct %Interface %59 %60 %61 %62 %63
- %66 = OpCompositeExtract %int %64 0
- %65 = OpFunctionCall %void %tint_symbol_15 %66
+ %60 = OpLoad %int %i_2
+ %61 = OpLoad %uint %u_2
+ %62 = OpLoad %v4int %vi_2
+ %63 = OpLoad %v4uint %vu_2
+ %64 = OpLoad %v4float %pos_2
+ %65 = OpCompositeConstruct %Interface %60 %61 %62 %63 %64
+ %59 = OpFunctionCall %int %frag_main_inner %65
+ OpStore %value %59
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/interpolate_return_struct.wgsl.expected.spvasm b/test/shader_io/interpolate_return_struct.wgsl.expected.spvasm
index ccf9580..91b4436 100644
--- a/test/shader_io/interpolate_return_struct.wgsl.expected.spvasm
+++ b/test/shader_io/interpolate_return_struct.wgsl.expected.spvasm
@@ -1,22 +1,22 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 37
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_6 %tint_symbol_7 %tint_symbol_8 %tint_symbol_9
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_9 "tint_symbol_9"
+ OpEntryPoint Vertex %main "main" %pos_1 %none_1 %flat_1 %perspective_center_1 %perspective_centroid_1 %perspective_sample_1 %linear_center_1 %linear_centroid_1 %linear_sample_1 %vertex_point_size
+ OpName %pos_1 "pos_1"
+ OpName %none_1 "none_1"
+ OpName %flat_1 "flat_1"
+ OpName %perspective_center_1 "perspective_center_1"
+ OpName %perspective_centroid_1 "perspective_centroid_1"
+ OpName %perspective_sample_1 "perspective_sample_1"
+ OpName %linear_center_1 "linear_center_1"
+ OpName %linear_centroid_1 "linear_centroid_1"
+ OpName %linear_sample_1 "linear_sample_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Out "Out"
OpMemberName %Out 0 "pos"
OpMemberName %Out 1 "none"
@@ -27,27 +27,26 @@
OpMemberName %Out 6 "linear_center"
OpMemberName %Out 7 "linear_centroid"
OpMemberName %Out 8 "linear_sample"
- OpName %tint_symbol_10 "tint_symbol_10"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 Location 1
- OpDecorate %tint_symbol_3 Flat
- OpDecorate %tint_symbol_4 Location 2
- OpDecorate %tint_symbol_5 Location 3
- OpDecorate %tint_symbol_5 Centroid
- OpDecorate %tint_symbol_6 Location 4
- OpDecorate %tint_symbol_6 Sample
- OpDecorate %tint_symbol_7 Location 5
- OpDecorate %tint_symbol_7 NoPerspective
- OpDecorate %tint_symbol_8 Location 6
- OpDecorate %tint_symbol_8 NoPerspective
- OpDecorate %tint_symbol_8 Centroid
- OpDecorate %tint_symbol_9 Location 7
- OpDecorate %tint_symbol_9 NoPerspective
- OpDecorate %tint_symbol_9 Sample
+ OpDecorate %pos_1 BuiltIn Position
+ OpDecorate %none_1 Location 0
+ OpDecorate %flat_1 Location 1
+ OpDecorate %flat_1 Flat
+ OpDecorate %perspective_center_1 Location 2
+ OpDecorate %perspective_centroid_1 Location 3
+ OpDecorate %perspective_centroid_1 Centroid
+ OpDecorate %perspective_sample_1 Location 4
+ OpDecorate %perspective_sample_1 Sample
+ OpDecorate %linear_center_1 Location 5
+ OpDecorate %linear_center_1 NoPerspective
+ OpDecorate %linear_centroid_1 Location 6
+ OpDecorate %linear_centroid_1 NoPerspective
+ OpDecorate %linear_centroid_1 Centroid
+ OpDecorate %linear_sample_1 Location 7
+ OpDecorate %linear_sample_1 NoPerspective
+ OpDecorate %linear_sample_1 Sample
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Out 0 Offset 0
OpMemberDecorate %Out 1 Offset 16
OpMemberDecorate %Out 2 Offset 20
@@ -58,53 +57,52 @@
OpMemberDecorate %Out 7 Offset 40
OpMemberDecorate %Out 8 Offset 44
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_4 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_5 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_6 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_7 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_8 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_9 = OpVariable %_ptr_Output_float Output %4
- %void = OpTypeVoid
+ %5 = OpConstantNull %v4float
+ %pos_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+ %none_1 = OpVariable %_ptr_Output_float Output %8
+ %flat_1 = OpVariable %_ptr_Output_float Output %8
+%perspective_center_1 = OpVariable %_ptr_Output_float Output %8
+%perspective_centroid_1 = OpVariable %_ptr_Output_float Output %8
+%perspective_sample_1 = OpVariable %_ptr_Output_float Output %8
+%linear_center_1 = OpVariable %_ptr_Output_float Output %8
+%linear_centroid_1 = OpVariable %_ptr_Output_float Output %8
+%linear_sample_1 = OpVariable %_ptr_Output_float Output %8
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%Out = OpTypeStruct %v4float %float %float %float %float %float %float %float %float
- %17 = OpTypeFunction %void %Out
- %32 = OpTypeFunction %void
+ %17 = OpTypeFunction %Out
+ %21 = OpConstantNull %Out
+ %void = OpTypeVoid
+ %22 = OpTypeFunction %void
%float_1 = OpConstant %float 1
- %37 = OpConstantNull %Out
-%tint_symbol_10 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %Out
- %22 = OpLabel
- %23 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %23
- %24 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %24
- %25 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %25
- %26 = OpCompositeExtract %float %tint_symbol 3
- OpStore %tint_symbol_4 %26
- %27 = OpCompositeExtract %float %tint_symbol 4
- OpStore %tint_symbol_5 %27
- %28 = OpCompositeExtract %float %tint_symbol 5
- OpStore %tint_symbol_6 %28
- %29 = OpCompositeExtract %float %tint_symbol 6
- OpStore %tint_symbol_7 %29
- %30 = OpCompositeExtract %float %tint_symbol 7
- OpStore %tint_symbol_8 %30
- %31 = OpCompositeExtract %float %tint_symbol 8
- OpStore %tint_symbol_9 %31
- OpReturn
+ %main_inner = OpFunction %Out None %17
+ %20 = OpLabel
+ OpReturnValue %21
OpFunctionEnd
- %main = OpFunction %void None %32
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpFunctionCall %void %tint_symbol_10 %37
+ %main = OpFunction %void None %22
+ %25 = OpLabel
+ %26 = OpFunctionCall %Out %main_inner
+ %27 = OpCompositeExtract %v4float %26 0
+ OpStore %pos_1 %27
+ %28 = OpCompositeExtract %float %26 1
+ OpStore %none_1 %28
+ %29 = OpCompositeExtract %float %26 2
+ OpStore %flat_1 %29
+ %30 = OpCompositeExtract %float %26 3
+ OpStore %perspective_center_1 %30
+ %31 = OpCompositeExtract %float %26 4
+ OpStore %perspective_centroid_1 %31
+ %32 = OpCompositeExtract %float %26 5
+ OpStore %perspective_sample_1 %32
+ %33 = OpCompositeExtract %float %26 6
+ OpStore %linear_center_1 %33
+ %34 = OpCompositeExtract %float %26 7
+ OpStore %linear_centroid_1 %34
+ %35 = OpCompositeExtract %float %26 8
+ OpStore %linear_sample_1 %35
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/invariant.wgsl.expected.spvasm b/test/shader_io/invariant.wgsl.expected.spvasm
index 7759407..ac51936 100644
--- a/test/shader_io/invariant.wgsl.expected.spvasm
+++ b/test/shader_io/invariant.wgsl.expected.spvasm
@@ -1,40 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 19
+; Bound: 18
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpEntryPoint Vertex %main "main" %value %vertex_point_size
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
- OpDecorate %tint_symbol_1 Invariant
+ OpDecorate %value BuiltIn Position
+ OpDecorate %value Invariant
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %9 = OpTypeFunction %v4float
%void = OpTypeVoid
- %9 = OpTypeFunction %void %v4float
- %14 = OpTypeFunction %void
+ %12 = OpTypeFunction %void
%float_1 = OpConstant %float 1
-%tint_symbol_2 = OpFunction %void None %9
-%tint_symbol = OpFunctionParameter %v4float
- %13 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %main_inner = OpFunction %v4float None %9
+ %11 = OpLabel
+ OpReturnValue %5
OpFunctionEnd
- %main = OpFunction %void None %14
- %16 = OpLabel
- OpStore %tint_pointsize %float_1
- %18 = OpFunctionCall %void %tint_symbol_2 %8
+ %main = OpFunction %void None %12
+ %15 = OpLabel
+ %16 = OpFunctionCall %v4float %main_inner
+ OpStore %value %16
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/invariant_struct_member.wgsl.expected.spvasm b/test/shader_io/invariant_struct_member.wgsl.expected.spvasm
index b062a96..f23cb97 100644
--- a/test/shader_io/invariant_struct_member.wgsl.expected.spvasm
+++ b/test/shader_io/invariant_struct_member.wgsl.expected.spvasm
@@ -1,46 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 22
+; Bound: 21
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpEntryPoint Vertex %main "main" %pos_1 %vertex_point_size
+ OpName %pos_1 "pos_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Out "Out"
OpMemberName %Out 0 "pos"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
- OpDecorate %tint_symbol_1 Invariant
+ OpDecorate %pos_1 BuiltIn Position
+ OpDecorate %pos_1 Invariant
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
- %void = OpTypeVoid
+ %5 = OpConstantNull %v4float
+ %pos_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%Out = OpTypeStruct %v4float
- %9 = OpTypeFunction %void %Out
- %16 = OpTypeFunction %void
+ %9 = OpTypeFunction %Out
+ %13 = OpConstantNull %Out
+ %void = OpTypeVoid
+ %14 = OpTypeFunction %void
%float_1 = OpConstant %float 1
- %21 = OpConstantNull %Out
-%tint_symbol_2 = OpFunction %void None %9
-%tint_symbol = OpFunctionParameter %Out
- %14 = OpLabel
- %15 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %15
- OpReturn
+ %main_inner = OpFunction %Out None %9
+ %12 = OpLabel
+ OpReturnValue %13
OpFunctionEnd
- %main = OpFunction %void None %16
- %18 = OpLabel
- OpStore %tint_pointsize %float_1
- %20 = OpFunctionCall %void %tint_symbol_2 %21
+ %main = OpFunction %void None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %Out %main_inner
+ %19 = OpCompositeExtract %v4float %18 0
+ OpStore %pos_1 %19
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/shared_struct_different_stages.wgsl.expected.spvasm b/test/shader_io/shared_struct_different_stages.wgsl.expected.spvasm
index 9c505c1..7c933c8 100644
--- a/test/shader_io/shared_struct_different_stages.wgsl.expected.spvasm
+++ b/test/shader_io/shared_struct_different_stages.wgsl.expected.spvasm
@@ -1,85 +1,92 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vert_main "vert_main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_5 %tint_symbol_6 %tint_symbol_7
+ OpEntryPoint Vertex %vert_main "vert_main" %col1_1 %col2_1 %pos_1 %vertex_point_size
+ OpEntryPoint Fragment %frag_main "frag_main" %col1_2 %col2_2 %pos_2
OpExecutionMode %frag_main OriginUpperLeft
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
+ OpName %col1_1 "col1_1"
+ OpName %col2_1 "col2_1"
+ OpName %pos_1 "pos_1"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %col1_2 "col1_2"
+ OpName %col2_2 "col2_2"
+ OpName %pos_2 "pos_2"
OpName %Interface "Interface"
OpMemberName %Interface 0 "col1"
OpMemberName %Interface 1 "col2"
OpMemberName %Interface 2 "pos"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol "tint_symbol"
+ OpName %vert_main_inner "vert_main_inner"
OpName %vert_main "vert_main"
+ OpName %frag_main_inner "frag_main_inner"
+ OpName %colors "colors"
OpName %frag_main "frag_main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 BuiltIn Position
- OpDecorate %tint_symbol_5 Location 1
- OpDecorate %tint_symbol_6 Location 2
- OpDecorate %tint_symbol_7 BuiltIn FragCoord
+ OpDecorate %col1_1 Location 1
+ OpDecorate %col2_1 Location 2
+ OpDecorate %pos_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %col1_2 Location 1
+ OpDecorate %col2_2 Location 2
+ OpDecorate %pos_2 BuiltIn FragCoord
OpMemberDecorate %Interface 0 Offset 0
OpMemberDecorate %Interface 1 Offset 4
OpMemberDecorate %Interface 2 Offset 16
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %4
+ %col1_1 = OpVariable %_ptr_Output_float Output %4
+ %col2_1 = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %10 = OpConstantNull %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %10
+ %9 = OpConstantNull %v4float
+ %pos_1 = OpVariable %_ptr_Output_v4float Output %9
+%vertex_point_size = OpVariable %_ptr_Output_float Output %4
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
-%tint_symbol_6 = OpVariable %_ptr_Input_float Input
+ %col1_2 = OpVariable %_ptr_Input_float Input
+ %col2_2 = OpVariable %_ptr_Input_float Input
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_7 = OpVariable %_ptr_Input_v4float Input
- %void = OpTypeVoid
+ %pos_2 = OpVariable %_ptr_Input_v4float Input
%Interface = OpTypeStruct %float %float %v4float
- %16 = OpTypeFunction %void %Interface
- %25 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %16 = OpTypeFunction %Interface
%float_0_400000006 = OpConstant %float 0.400000006
%float_0_600000024 = OpConstant %float 0.600000024
- %32 = OpConstantComposite %Interface %float_0_400000006 %float_0_600000024 %10
-%tint_symbol_4 = OpFunction %void None %16
-%tint_symbol = OpFunctionParameter %Interface
- %21 = OpLabel
- %22 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %22
- %23 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %23
- %24 = OpCompositeExtract %v4float %tint_symbol 2
- OpStore %tint_symbol_3 %24
+ %22 = OpConstantComposite %Interface %float_0_400000006 %float_0_600000024 %9
+ %void = OpTypeVoid
+ %23 = OpTypeFunction %void
+ %float_1 = OpConstant %float 1
+ %32 = OpTypeFunction %void %Interface
+%vert_main_inner = OpFunction %Interface None %16
+ %19 = OpLabel
+ OpReturnValue %22
+ OpFunctionEnd
+ %vert_main = OpFunction %void None %23
+ %26 = OpLabel
+ %27 = OpFunctionCall %Interface %vert_main_inner
+ %28 = OpCompositeExtract %float %27 0
+ OpStore %col1_1 %28
+ %29 = OpCompositeExtract %float %27 1
+ OpStore %col2_1 %29
+ %30 = OpCompositeExtract %v4float %27 2
+ OpStore %pos_1 %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
- %vert_main = OpFunction %void None %25
- %27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %tint_symbol_4 %32
+%frag_main_inner = OpFunction %void None %32
+ %colors = OpFunctionParameter %Interface
+ %35 = OpLabel
+ %36 = OpCompositeExtract %float %colors 0
+ %37 = OpCompositeExtract %float %colors 1
OpReturn
OpFunctionEnd
- %frag_main = OpFunction %void None %25
- %34 = OpLabel
- %35 = OpLoad %float %tint_symbol_5
- %36 = OpLoad %float %tint_symbol_6
- %37 = OpLoad %v4float %tint_symbol_7
- %38 = OpCompositeConstruct %Interface %35 %36 %37
- %39 = OpCompositeExtract %float %38 0
- %40 = OpCompositeExtract %float %38 1
+ %frag_main = OpFunction %void None %23
+ %39 = OpLabel
+ %41 = OpLoad %float %col1_2
+ %42 = OpLoad %float %col2_2
+ %43 = OpLoad %v4float %pos_2
+ %44 = OpCompositeConstruct %Interface %41 %42 %43
+ %40 = OpFunctionCall %void %frag_main_inner %44
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/shared_struct_helper_function.wgsl.expected.spvasm b/test/shader_io/shared_struct_helper_function.wgsl.expected.spvasm
index 29b96cd..9928b83 100644
--- a/test/shader_io/shared_struct_helper_function.wgsl.expected.spvasm
+++ b/test/shader_io/shared_struct_helper_function.wgsl.expected.spvasm
@@ -1,96 +1,95 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %vert_main1 "vert_main1" %tint_pointsize %tint_symbol_1 %tint_symbol_2
- OpEntryPoint Vertex %vert_main2 "vert_main2" %tint_pointsize %tint_symbol_5 %tint_symbol_6
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpEntryPoint Vertex %vert_main1 "vert_main1" %pos_1 %loc0_1 %vertex_point_size
+ OpEntryPoint Vertex %vert_main2 "vert_main2" %pos_2 %loc0_2 %vertex_point_size_1
+ OpName %pos_1 "pos_1"
+ OpName %loc0_1 "loc0_1"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %pos_2 "pos_2"
+ OpName %loc0_2 "loc0_2"
+ OpName %vertex_point_size_1 "vertex_point_size_1"
OpName %VertexOutput "VertexOutput"
OpMemberName %VertexOutput 0 "pos"
OpMemberName %VertexOutput 1 "loc0"
OpName %foo "foo"
OpName %x "x"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %vert_main1_inner "vert_main1_inner"
OpName %vert_main1 "vert_main1"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpName %vert_main2_inner "vert_main2_inner"
OpName %vert_main2 "vert_main2"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_5 BuiltIn Position
- OpDecorate %tint_symbol_6 Location 0
- OpDecorate %tint_symbol_6 Flat
+ OpDecorate %pos_1 BuiltIn Position
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc0_1 Flat
+ OpDecorate %vertex_point_size BuiltIn PointSize
+ OpDecorate %pos_2 BuiltIn Position
+ OpDecorate %loc0_2 Location 0
+ OpDecorate %loc0_2 Flat
+ OpDecorate %vertex_point_size_1 BuiltIn PointSize
OpMemberDecorate %VertexOutput 0 Offset 0
OpMemberDecorate %VertexOutput 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %pos_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
- %12 = OpConstantNull %int
-%tint_symbol_2 = OpVariable %_ptr_Output_int Output %12
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_6 = OpVariable %_ptr_Output_int Output %12
+ %9 = OpConstantNull %int
+ %loc0_1 = OpVariable %_ptr_Output_int Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
+ %pos_2 = OpVariable %_ptr_Output_v4float Output %5
+ %loc0_2 = OpVariable %_ptr_Output_int Output %9
+%vertex_point_size_1 = OpVariable %_ptr_Output_float Output %12
%VertexOutput = OpTypeStruct %v4float %int
- %15 = OpTypeFunction %VertexOutput %float
+ %16 = OpTypeFunction %VertexOutput %float
%float_1 = OpConstant %float 1
%int_42 = OpConstant %int 42
- %void = OpTypeVoid
- %24 = OpTypeFunction %void %VertexOutput
- %31 = OpTypeFunction %void
+ %25 = OpTypeFunction %VertexOutput
%float_0_5 = OpConstant %float 0.5
+ %void = OpTypeVoid
+ %30 = OpTypeFunction %void
%float_0_25 = OpConstant %float 0.25
- %foo = OpFunction %VertexOutput None %15
+ %foo = OpFunction %VertexOutput None %16
%x = OpFunctionParameter %float
- %19 = OpLabel
- %21 = OpCompositeConstruct %v4float %x %x %x %float_1
- %23 = OpCompositeConstruct %VertexOutput %21 %int_42
- OpReturnValue %23
+ %20 = OpLabel
+ %22 = OpCompositeConstruct %v4float %x %x %x %float_1
+ %24 = OpCompositeConstruct %VertexOutput %22 %int_42
+ OpReturnValue %24
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %VertexOutput
- %28 = OpLabel
- %29 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %29
- %30 = OpCompositeExtract %int %tint_symbol 1
- OpStore %tint_symbol_2 %30
- OpReturn
+%vert_main1_inner = OpFunction %VertexOutput None %25
+ %27 = OpLabel
+ %28 = OpFunctionCall %VertexOutput %foo %float_0_5
+ OpReturnValue %28
OpFunctionEnd
- %vert_main1 = OpFunction %void None %31
+ %vert_main1 = OpFunction %void None %30
%33 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpFunctionCall %VertexOutput %foo %float_0_5
- %34 = OpFunctionCall %void %tint_symbol_3 %35
+ %34 = OpFunctionCall %VertexOutput %vert_main1_inner
+ %35 = OpCompositeExtract %v4float %34 0
+ OpStore %pos_1 %35
+ %36 = OpCompositeExtract %int %34 1
+ OpStore %loc0_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_7 = OpFunction %void None %24
-%tint_symbol_4 = OpFunctionParameter %VertexOutput
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol_4 0
- OpStore %tint_symbol_5 %40
- %41 = OpCompositeExtract %int %tint_symbol_4 1
- OpStore %tint_symbol_6 %41
- OpReturn
+%vert_main2_inner = OpFunction %VertexOutput None %25
+ %38 = OpLabel
+ %39 = OpFunctionCall %VertexOutput %foo %float_0_25
+ OpReturnValue %39
OpFunctionEnd
- %vert_main2 = OpFunction %void None %31
- %43 = OpLabel
- OpStore %tint_pointsize %float_1
- %45 = OpFunctionCall %VertexOutput %foo %float_0_25
- %44 = OpFunctionCall %void %tint_symbol_7 %45
+ %vert_main2 = OpFunction %void None %30
+ %42 = OpLabel
+ %43 = OpFunctionCall %VertexOutput %vert_main2_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %pos_2 %44
+ %45 = OpCompositeExtract %int %43 1
+ OpStore %loc0_2 %45
+ OpStore %vertex_point_size_1 %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/shared_struct_storage_buffer.wgsl.expected.spvasm b/test/shader_io/shared_struct_storage_buffer.wgsl.expected.spvasm
index 2bffafa..5f96817 100644
--- a/test/shader_io/shared_struct_storage_buffer.wgsl.expected.spvasm
+++ b/test/shader_io/shared_struct_storage_buffer.wgsl.expected.spvasm
@@ -1,21 +1,27 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %frag_main "frag_main" %f_1 %u_1 %v_1
OpExecutionMode %frag_main OriginUpperLeft
+ OpName %f_1 "f_1"
+ OpName %u_1 "u_1"
+ OpName %v_1 "v_1"
OpName %S "S"
OpMemberName %S 0 "f"
OpMemberName %S 1 "u"
OpMemberName %S 2 "v"
OpName %output "output"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %frag_main_inner "frag_main_inner"
+ OpName %input "input"
OpName %frag_main "frag_main"
+ OpDecorate %f_1 Location 0
+ OpDecorate %u_1 Location 1
+ OpDecorate %u_1 Flat
+ OpDecorate %v_1 BuiltIn FragCoord
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
@@ -23,33 +29,36 @@
OpDecorate %output NonReadable
OpDecorate %output DescriptorSet 0
OpDecorate %output Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 BuiltIn FragCoord
%float = OpTypeFloat 32
+%_ptr_Input_float = OpTypePointer Input %float
+ %f_1 = OpVariable %_ptr_Input_float Input
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+ %u_1 = OpVariable %_ptr_Input_uint Input
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+ %v_1 = OpVariable %_ptr_Input_v4float Input
%S = OpTypeStruct %float %uint %v4float
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%output = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_2 = OpVariable %_ptr_Input_v4float Input
%void = OpTypeVoid
- %13 = OpTypeFunction %void
- %frag_main = OpFunction %void None %13
- %16 = OpLabel
- %17 = OpLoad %float %tint_symbol
- %18 = OpLoad %uint %tint_symbol_1
- %19 = OpLoad %v4float %tint_symbol_2
- %20 = OpCompositeConstruct %S %17 %18 %19
- %21 = OpCompositeExtract %float %20 0
- %22 = OpCompositeExtract %uint %20 1
- %23 = OpCompositeExtract %v4float %20 2
- OpStore %output %20
+ %13 = OpTypeFunction %void %S
+ %21 = OpTypeFunction %void
+%frag_main_inner = OpFunction %void None %13
+ %input = OpFunctionParameter %S
+ %17 = OpLabel
+ %18 = OpCompositeExtract %float %input 0
+ %19 = OpCompositeExtract %uint %input 1
+ %20 = OpCompositeExtract %v4float %input 2
+ OpStore %output %input
+ OpReturn
+ OpFunctionEnd
+ %frag_main = OpFunction %void None %21
+ %23 = OpLabel
+ %25 = OpLoad %float %f_1
+ %26 = OpLoad %uint %u_1
+ %27 = OpLoad %v4float %v_1
+ %28 = OpCompositeConstruct %S %25 %26 %27
+ %24 = OpFunctionCall %void %frag_main_inner %28
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_input_builtins.wgsl.expected.spvasm b/test/shader_io/vertex_input_builtins.wgsl.expected.spvasm
index 198293c..07afe52 100644
--- a/test/shader_io/vertex_input_builtins.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_input_builtins.wgsl.expected.spvasm
@@ -1,50 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpEntryPoint Vertex %main "main" %vertex_index_1 %instance_index_1 %value %vertex_point_size
+ OpName %vertex_index_1 "vertex_index_1"
+ OpName %instance_index_1 "instance_index_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %main_inner "main_inner"
+ OpName %vertex_index "vertex_index"
+ OpName %instance_index "instance_index"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_1 BuiltIn InstanceIndex
- OpDecorate %tint_symbol_3 BuiltIn Position
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ OpDecorate %vertex_index_1 BuiltIn VertexIndex
+ OpDecorate %instance_index_1 BuiltIn InstanceIndex
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+%vertex_index_1 = OpVariable %_ptr_Input_uint Input
+%instance_index_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
+ %9 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
+ %13 = OpTypeFunction %v4float %uint %uint
%void = OpTypeVoid
- %13 = OpTypeFunction %void %v4float
- %18 = OpTypeFunction %void
+ %19 = OpTypeFunction %void
%float_1 = OpConstant %float 1
-%tint_symbol_4 = OpFunction %void None %13
-%tint_symbol_2 = OpFunctionParameter %v4float
+ %main_inner = OpFunction %v4float None %13
+%vertex_index = OpFunctionParameter %uint
+%instance_index = OpFunctionParameter %uint
%17 = OpLabel
- OpStore %tint_symbol_3 %tint_symbol_2
- OpReturn
+ %18 = OpIAdd %uint %vertex_index %instance_index
+ OpReturnValue %9
OpFunctionEnd
- %main = OpFunction %void None %18
- %20 = OpLabel
- OpStore %tint_pointsize %float_1
- %22 = OpLoad %uint %tint_symbol
- %23 = OpLoad %uint %tint_symbol_1
- %24 = OpIAdd %uint %22 %23
- %25 = OpFunctionCall %void %tint_symbol_4 %12
+ %main = OpFunction %void None %19
+ %22 = OpLabel
+ %24 = OpLoad %uint %vertex_index_1
+ %25 = OpLoad %uint %instance_index_1
+ %23 = OpFunctionCall %v4float %main_inner %24 %25
+ OpStore %value %23
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_input_builtins_struct.wgsl.expected.spvasm b/test/shader_io/vertex_input_builtins_struct.wgsl.expected.spvasm
index b2af529..07a7179 100644
--- a/test/shader_io/vertex_input_builtins_struct.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_input_builtins_struct.wgsl.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %main "main"
+ OpEntryPoint Vertex %main "main" %vertex_index_1 %instance_index_1 %value %vertex_point_size
+ OpName %vertex_index_1 "vertex_index_1"
+ OpName %instance_index_1 "instance_index_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %VertexInputs "VertexInputs"
OpMemberName %VertexInputs 0 "vertex_index"
OpMemberName %VertexInputs 1 "instance_index"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_1 BuiltIn InstanceIndex
- OpDecorate %tint_symbol_4 BuiltIn Position
+ OpName %main_inner "main_inner"
+ OpName %inputs "inputs"
+ OpName %main "main"
+ OpDecorate %vertex_index_1 BuiltIn VertexIndex
+ OpDecorate %instance_index_1 BuiltIn InstanceIndex
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %VertexInputs 0 Offset 0
OpMemberDecorate %VertexInputs 1 Offset 4
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+%vertex_index_1 = OpVariable %_ptr_Input_uint Input
+%instance_index_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %12 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %12
- %void = OpTypeVoid
- %13 = OpTypeFunction %void %v4float
- %18 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %9 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
%VertexInputs = OpTypeStruct %uint %uint
-%tint_symbol_5 = OpFunction %void None %13
-%tint_symbol_3 = OpFunctionParameter %v4float
+ %13 = OpTypeFunction %v4float %VertexInputs
+ %void = OpTypeVoid
+ %21 = OpTypeFunction %void
+ %float_1 = OpConstant %float 1
+ %main_inner = OpFunction %v4float None %13
+ %inputs = OpFunctionParameter %VertexInputs
%17 = OpLabel
- OpStore %tint_symbol_4 %tint_symbol_3
- OpReturn
+ %18 = OpCompositeExtract %uint %inputs 0
+ %19 = OpCompositeExtract %uint %inputs 1
+ %20 = OpIAdd %uint %18 %19
+ OpReturnValue %9
OpFunctionEnd
- %main = OpFunction %void None %18
- %20 = OpLabel
- OpStore %tint_pointsize %float_1
- %23 = OpLoad %uint %tint_symbol
- %24 = OpLoad %uint %tint_symbol_1
- %25 = OpCompositeConstruct %VertexInputs %23 %24
- %26 = OpCompositeExtract %uint %25 0
- %27 = OpCompositeExtract %uint %25 1
- %28 = OpIAdd %uint %26 %27
- %29 = OpFunctionCall %void %tint_symbol_5 %12
+ %main = OpFunction %void None %21
+ %24 = OpLabel
+ %26 = OpLoad %uint %vertex_index_1
+ %27 = OpLoad %uint %instance_index_1
+ %28 = OpCompositeConstruct %VertexInputs %26 %27
+ %25 = OpFunctionCall %v4float %main_inner %28
+ OpStore %value %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_input_locations.wgsl.expected.spvasm b/test/shader_io/vertex_input_locations.wgsl.expected.spvasm
index 9a0c93b..d4d8553 100644
--- a/test/shader_io/vertex_input_locations.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_input_locations.wgsl.expected.spvasm
@@ -1,61 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_5
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpEntryPoint Vertex %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1 %value %vertex_point_size
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %main_inner "main_inner"
+ OpName %loc0 "loc0"
+ OpName %loc1 "loc1"
+ OpName %loc2 "loc2"
+ OpName %loc3 "loc3"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_5 BuiltIn Position
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol = OpVariable %_ptr_Input_int Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_3 = OpVariable %_ptr_Input_v4float Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %18 = OpConstantNull %v4float
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %18
+ %15 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %15
+%_ptr_Output_float = OpTypePointer Output %float
+ %18 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %18
+ %19 = OpTypeFunction %v4float %int %uint %float %v4float
%void = OpTypeVoid
- %19 = OpTypeFunction %void %v4float
- %24 = OpTypeFunction %void
+ %26 = OpTypeFunction %void
%float_1 = OpConstant %float 1
-%tint_symbol_6 = OpFunction %void None %19
-%tint_symbol_4 = OpFunctionParameter %v4float
- %23 = OpLabel
- OpStore %tint_symbol_5 %tint_symbol_4
- OpReturn
+ %main_inner = OpFunction %v4float None %19
+ %loc0 = OpFunctionParameter %int
+ %loc1 = OpFunctionParameter %uint
+ %loc2 = OpFunctionParameter %float
+ %loc3 = OpFunctionParameter %v4float
+ %25 = OpLabel
+ OpReturnValue %15
OpFunctionEnd
- %main = OpFunction %void None %24
- %26 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpLoad %int %tint_symbol
- %29 = OpLoad %uint %tint_symbol_1
- %30 = OpLoad %float %tint_symbol_2
- %31 = OpLoad %v4float %tint_symbol_3
- %32 = OpFunctionCall %void %tint_symbol_6 %18
+ %main = OpFunction %void None %26
+ %29 = OpLabel
+ %31 = OpLoad %int %loc0_1
+ %32 = OpLoad %uint %loc1_1
+ %33 = OpLoad %float %loc2_1
+ %34 = OpLoad %v4float %loc3_1
+ %30 = OpFunctionCall %v4float %main_inner %31 %32 %33 %34
+ OpStore %value %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_input_locations_struct.wgsl.expected.spvasm b/test/shader_io/vertex_input_locations_struct.wgsl.expected.spvasm
index 3766af8..924ce71 100644
--- a/test/shader_io/vertex_input_locations_struct.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_input_locations_struct.wgsl.expected.spvasm
@@ -5,72 +5,72 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_6
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %main "main"
+ OpEntryPoint Vertex %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1 %value %vertex_point_size
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %VertexInputs "VertexInputs"
OpMemberName %VertexInputs 0 "loc0"
OpMemberName %VertexInputs 1 "loc1"
OpMemberName %VertexInputs 2 "loc2"
OpMemberName %VertexInputs 3 "loc3"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_6 BuiltIn Position
+ OpName %main_inner "main_inner"
+ OpName %inputs "inputs"
+ OpName %main "main"
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %VertexInputs 0 Offset 0
OpMemberDecorate %VertexInputs 1 Offset 4
OpMemberDecorate %VertexInputs 2 Offset 8
OpMemberDecorate %VertexInputs 3 Offset 16
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol = OpVariable %_ptr_Input_int Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_3 = OpVariable %_ptr_Input_v4float Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %18 = OpConstantNull %v4float
-%tint_symbol_6 = OpVariable %_ptr_Output_v4float Output %18
- %void = OpTypeVoid
- %19 = OpTypeFunction %void %v4float
- %24 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %15 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %15
+%_ptr_Output_float = OpTypePointer Output %float
+ %18 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %18
%VertexInputs = OpTypeStruct %int %uint %float %v4float
-%tint_symbol_7 = OpFunction %void None %19
-%tint_symbol_5 = OpFunctionParameter %v4float
+ %19 = OpTypeFunction %v4float %VertexInputs
+ %void = OpTypeVoid
+ %28 = OpTypeFunction %void
+ %float_1 = OpConstant %float 1
+ %main_inner = OpFunction %v4float None %19
+ %inputs = OpFunctionParameter %VertexInputs
%23 = OpLabel
- OpStore %tint_symbol_6 %tint_symbol_5
- OpReturn
+ %24 = OpCompositeExtract %int %inputs 0
+ %25 = OpCompositeExtract %uint %inputs 1
+ %26 = OpCompositeExtract %float %inputs 2
+ %27 = OpCompositeExtract %v4float %inputs 3
+ OpReturnValue %15
OpFunctionEnd
- %main = OpFunction %void None %24
- %26 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpLoad %int %tint_symbol
- %30 = OpLoad %uint %tint_symbol_1
- %31 = OpLoad %float %tint_symbol_2
- %32 = OpLoad %v4float %tint_symbol_3
- %33 = OpCompositeConstruct %VertexInputs %29 %30 %31 %32
- %34 = OpCompositeExtract %int %33 0
- %35 = OpCompositeExtract %uint %33 1
- %36 = OpCompositeExtract %float %33 2
- %37 = OpCompositeExtract %v4float %33 3
- %38 = OpFunctionCall %void %tint_symbol_7 %18
+ %main = OpFunction %void None %28
+ %31 = OpLabel
+ %33 = OpLoad %int %loc0_1
+ %34 = OpLoad %uint %loc1_1
+ %35 = OpLoad %float %loc2_1
+ %36 = OpLoad %v4float %loc3_1
+ %37 = OpCompositeConstruct %VertexInputs %33 %34 %35 %36
+ %32 = OpFunctionCall %v4float %main_inner %37
+ OpStore %value %32
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_input_mixed.wgsl.expected.spvasm b/test/shader_io/vertex_input_mixed.wgsl.expected.spvasm
index f930879..e59b852 100644
--- a/test/shader_io/vertex_input_mixed.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_input_mixed.wgsl.expected.spvasm
@@ -1,88 +1,94 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_5 %tint_symbol_6 %tint_symbol_4 %tint_symbol_3 %tint_symbol_9
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_9 "tint_symbol_9"
- OpName %tint_symbol_10 "tint_symbol_10"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %main "main"
+ OpEntryPoint Vertex %main "main" %vertex_index_1 %loc0_1 %loc1_1 %instance_index_1 %loc2_1 %loc3_1 %value %vertex_point_size
+ OpName %vertex_index_1 "vertex_index_1"
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %instance_index_1 "instance_index_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
OpName %VertexInputs0 "VertexInputs0"
OpMemberName %VertexInputs0 0 "vertex_index"
OpMemberName %VertexInputs0 1 "loc0"
OpName %VertexInputs1 "VertexInputs1"
OpMemberName %VertexInputs1 0 "loc2"
OpMemberName %VertexInputs1 1 "loc3"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_3 Location 1
- OpDecorate %tint_symbol_4 BuiltIn InstanceIndex
- OpDecorate %tint_symbol_5 Location 2
- OpDecorate %tint_symbol_6 Location 3
- OpDecorate %tint_symbol_9 BuiltIn Position
+ OpName %main_inner "main_inner"
+ OpName %inputs0 "inputs0"
+ OpName %loc1 "loc1"
+ OpName %instance_index "instance_index"
+ OpName %inputs1 "inputs1"
+ OpName %main "main"
+ OpDecorate %vertex_index_1 BuiltIn VertexIndex
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %instance_index_1 BuiltIn InstanceIndex
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %VertexInputs0 0 Offset 0
OpMemberDecorate %VertexInputs0 1 Offset 4
OpMemberDecorate %VertexInputs1 0 Offset 0
OpMemberDecorate %VertexInputs1 1 Offset 16
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%vertex_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
-%tint_symbol_3 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_4 = OpVariable %_ptr_Input_uint Input
+ %loc0_1 = OpVariable %_ptr_Input_int Input
+ %loc1_1 = OpVariable %_ptr_Input_uint Input
+%instance_index_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
+ %loc2_1 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_6 = OpVariable %_ptr_Input_v4float Input
+ %loc3_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %20 = OpConstantNull %v4float
-%tint_symbol_9 = OpVariable %_ptr_Output_v4float Output %20
- %void = OpTypeVoid
- %21 = OpTypeFunction %void %v4float
- %26 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %17 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %17
+%_ptr_Output_float = OpTypePointer Output %float
+ %20 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %20
%VertexInputs0 = OpTypeStruct %uint %int
%VertexInputs1 = OpTypeStruct %float %v4float
-%tint_symbol_10 = OpFunction %void None %21
-%tint_symbol_8 = OpFunctionParameter %v4float
- %25 = OpLabel
- OpStore %tint_symbol_9 %tint_symbol_8
- OpReturn
+ %21 = OpTypeFunction %v4float %VertexInputs0 %uint %uint %VertexInputs1
+ %void = OpTypeVoid
+ %35 = OpTypeFunction %void
+ %float_1 = OpConstant %float 1
+ %main_inner = OpFunction %v4float None %21
+ %inputs0 = OpFunctionParameter %VertexInputs0
+ %loc1 = OpFunctionParameter %uint
+%instance_index = OpFunctionParameter %uint
+ %inputs1 = OpFunctionParameter %VertexInputs1
+ %29 = OpLabel
+ %30 = OpCompositeExtract %uint %inputs0 0
+ %31 = OpIAdd %uint %30 %instance_index
+ %32 = OpCompositeExtract %int %inputs0 1
+ %33 = OpCompositeExtract %float %inputs1 0
+ %34 = OpCompositeExtract %v4float %inputs1 1
+ OpReturnValue %17
OpFunctionEnd
- %main = OpFunction %void None %26
- %28 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- %32 = OpLoad %int %tint_symbol_1
- %33 = OpCompositeConstruct %VertexInputs0 %31 %32
- %35 = OpLoad %float %tint_symbol_5
- %36 = OpLoad %v4float %tint_symbol_6
- %37 = OpCompositeConstruct %VertexInputs1 %35 %36
- %38 = OpCompositeExtract %uint %33 0
- %39 = OpLoad %uint %tint_symbol_4
- %40 = OpIAdd %uint %38 %39
- %41 = OpCompositeExtract %int %33 1
- %42 = OpLoad %uint %tint_symbol_3
- %43 = OpCompositeExtract %float %37 0
- %44 = OpCompositeExtract %v4float %37 1
- %45 = OpFunctionCall %void %tint_symbol_10 %20
+ %main = OpFunction %void None %35
+ %38 = OpLabel
+ %40 = OpLoad %uint %vertex_index_1
+ %41 = OpLoad %int %loc0_1
+ %42 = OpCompositeConstruct %VertexInputs0 %40 %41
+ %43 = OpLoad %uint %loc1_1
+ %44 = OpLoad %uint %instance_index_1
+ %45 = OpLoad %float %loc2_1
+ %46 = OpLoad %v4float %loc3_1
+ %47 = OpCompositeConstruct %VertexInputs1 %45 %46
+ %39 = OpFunctionCall %v4float %main_inner %42 %43 %44 %47
+ OpStore %value %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_output_builtins.wgsl.expected.spvasm b/test/shader_io/vertex_output_builtins.wgsl.expected.spvasm
index c92e684..3b4aebe 100644
--- a/test/shader_io/vertex_output_builtins.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_output_builtins.wgsl.expected.spvasm
@@ -1,43 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 23
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpEntryPoint Vertex %main "main" %value %vertex_point_size
+ OpName %value "value"
+ OpName %vertex_point_size "vertex_point_size"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %value BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
- %void = OpTypeVoid
- %9 = OpTypeFunction %void %v4float
- %14 = OpTypeFunction %void
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+ %9 = OpTypeFunction %v4float
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %22 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
-%tint_symbol_2 = OpFunction %void None %9
-%tint_symbol = OpFunctionParameter %v4float
- %13 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %16 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %void = OpTypeVoid
+ %17 = OpTypeFunction %void
+ %main_inner = OpFunction %v4float None %9
+ %11 = OpLabel
+ OpReturnValue %16
OpFunctionEnd
- %main = OpFunction %void None %14
- %16 = OpLabel
- OpStore %tint_pointsize %float_1
- %18 = OpFunctionCall %void %tint_symbol_2 %22
+ %main = OpFunction %void None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %v4float %main_inner
+ OpStore %value %21
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_output_builtins_struct.wgsl.expected.spvasm b/test/shader_io/vertex_output_builtins_struct.wgsl.expected.spvasm
index ae99bdc..0f3a987 100644
--- a/test/shader_io/vertex_output_builtins_struct.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_output_builtins_struct.wgsl.expected.spvasm
@@ -1,49 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpEntryPoint Vertex %main "main" %position_1 %vertex_point_size
+ OpName %position_1 "position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %VertexOutputs "VertexOutputs"
OpMemberName %VertexOutputs 0 "position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %VertexOutputs 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %8 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
- %void = OpTypeVoid
+ %5 = OpConstantNull %v4float
+ %position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%VertexOutputs = OpTypeStruct %v4float
- %9 = OpTypeFunction %void %VertexOutputs
- %16 = OpTypeFunction %void
+ %9 = OpTypeFunction %VertexOutputs
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %24 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
- %25 = OpConstantComposite %VertexOutputs %24
-%tint_symbol_2 = OpFunction %void None %9
-%tint_symbol = OpFunctionParameter %VertexOutputs
- %14 = OpLabel
- %15 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %15
- OpReturn
+ %17 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %18 = OpConstantComposite %VertexOutputs %17
+ %void = OpTypeVoid
+ %19 = OpTypeFunction %void
+ %main_inner = OpFunction %VertexOutputs None %9
+ %12 = OpLabel
+ OpReturnValue %18
OpFunctionEnd
- %main = OpFunction %void None %16
- %18 = OpLabel
- OpStore %tint_pointsize %float_1
- %20 = OpFunctionCall %void %tint_symbol_2 %25
+ %main = OpFunction %void None %19
+ %22 = OpLabel
+ %23 = OpFunctionCall %VertexOutputs %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %position_1 %24
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/shader_io/vertex_output_locations_struct.wgsl.expected.spvasm b/test/shader_io/vertex_output_locations_struct.wgsl.expected.spvasm
index bb0fbce..e3bbf30 100644
--- a/test/shader_io/vertex_output_locations_struct.wgsl.expected.spvasm
+++ b/test/shader_io/vertex_output_locations_struct.wgsl.expected.spvasm
@@ -1,87 +1,85 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5
- OpName %tint_pointsize "tint_pointsize"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
+ OpEntryPoint Vertex %main "main" %loc0_1 %loc1_1 %loc2_1 %loc3_1 %position_1 %vertex_point_size
+ OpName %loc0_1 "loc0_1"
+ OpName %loc1_1 "loc1_1"
+ OpName %loc2_1 "loc2_1"
+ OpName %loc3_1 "loc3_1"
+ OpName %position_1 "position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %VertexOutputs "VertexOutputs"
OpMemberName %VertexOutputs 0 "loc0"
OpMemberName %VertexOutputs 1 "loc1"
OpMemberName %VertexOutputs 2 "loc2"
OpMemberName %VertexOutputs 3 "loc3"
OpMemberName %VertexOutputs 4 "position"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 1
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 Location 2
- OpDecorate %tint_symbol_4 Location 3
- OpDecorate %tint_symbol_5 BuiltIn Position
+ OpDecorate %loc0_1 Location 0
+ OpDecorate %loc0_1 Flat
+ OpDecorate %loc1_1 Location 1
+ OpDecorate %loc1_1 Flat
+ OpDecorate %loc2_1 Location 2
+ OpDecorate %loc3_1 Location 3
+ OpDecorate %position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %VertexOutputs 0 Offset 0
OpMemberDecorate %VertexOutputs 1 Offset 4
OpMemberDecorate %VertexOutputs 2 Offset 8
OpMemberDecorate %VertexOutputs 3 Offset 16
OpMemberDecorate %VertexOutputs 4 Offset 32
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
- %8 = OpConstantNull %int
-%tint_symbol_1 = OpVariable %_ptr_Output_int Output %8
+ %4 = OpConstantNull %int
+ %loc0_1 = OpVariable %_ptr_Output_int Output %4
%uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
- %12 = OpConstantNull %uint
-%tint_symbol_2 = OpVariable %_ptr_Output_uint Output %12
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %4
+ %8 = OpConstantNull %uint
+ %loc1_1 = OpVariable %_ptr_Output_uint Output %8
+ %float = OpTypeFloat 32
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+ %loc2_1 = OpVariable %_ptr_Output_float Output %12
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
- %17 = OpConstantNull %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %17
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %17
- %void = OpTypeVoid
+ %16 = OpConstantNull %v4float
+ %loc3_1 = OpVariable %_ptr_Output_v4float Output %16
+ %position_1 = OpVariable %_ptr_Output_v4float Output %16
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
%VertexOutputs = OpTypeStruct %int %uint %float %v4float %v4float
- %19 = OpTypeFunction %void %VertexOutputs
- %30 = OpTypeFunction %void
- %float_1 = OpConstant %float 1
+ %19 = OpTypeFunction %VertexOutputs
%int_1 = OpConstant %int 1
%uint_1 = OpConstant %uint 1
+ %float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %40 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
- %41 = OpConstantComposite %VertexOutputs %int_1 %uint_1 %float_1 %40 %17
-%tint_symbol_6 = OpFunction %void None %19
-%tint_symbol = OpFunctionParameter %VertexOutputs
- %24 = OpLabel
- %25 = OpCompositeExtract %int %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %uint %tint_symbol 1
- OpStore %tint_symbol_2 %26
- %27 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %27
- %28 = OpCompositeExtract %v4float %tint_symbol 3
- OpStore %tint_symbol_4 %28
- %29 = OpCompositeExtract %v4float %tint_symbol 4
- OpStore %tint_symbol_5 %29
- OpReturn
+ %29 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %30 = OpConstantComposite %VertexOutputs %int_1 %uint_1 %float_1 %29 %16
+ %void = OpTypeVoid
+ %31 = OpTypeFunction %void
+ %main_inner = OpFunction %VertexOutputs None %19
+ %22 = OpLabel
+ OpReturnValue %30
OpFunctionEnd
- %main = OpFunction %void None %30
- %32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpFunctionCall %void %tint_symbol_6 %41
+ %main = OpFunction %void None %31
+ %34 = OpLabel
+ %35 = OpFunctionCall %VertexOutputs %main_inner
+ %36 = OpCompositeExtract %int %35 0
+ OpStore %loc0_1 %36
+ %37 = OpCompositeExtract %uint %35 1
+ OpStore %loc1_1 %37
+ %38 = OpCompositeExtract %float %35 2
+ OpStore %loc2_1 %38
+ %39 = OpCompositeExtract %v4float %35 3
+ OpStore %loc3_1 %39
+ %40 = OpCompositeExtract %v4float %35 4
+ OpStore %position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_0.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_0.spvasm.expected.spvasm
index 9e443ff..0ed0565 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_0.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_0.spvasm.expected.spvasm
@@ -1,34 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_1.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_1.spvasm.expected.spvasm
index 230fe6a..1509a4b 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_1.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_1.spvasm.expected.spvasm
@@ -1,36 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_2.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_2.spvasm.expected.spvasm
index 9e60c0e..6e238d4 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_2.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_2.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_3.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_3.spvasm.expected.spvasm
index d489e17..581ee7c 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_3.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_3.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_4.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_4.spvasm.expected.spvasm
index aedb68e..08c464f 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_4.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_4.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_5.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_5.spvasm.expected.spvasm
index 333a5bc..1e65d56 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_5.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_5.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_6.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_6.spvasm.expected.spvasm
index 8cb0f37..cb25298 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_6.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_6.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_7.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_7.spvasm.expected.spvasm
index fbeffa5..406850a 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_7.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_AccessChain_7.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_0.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_0.spvasm.expected.spvasm
index 9e443ff..0ed0565 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_0.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_0.spvasm.expected.spvasm
@@ -1,34 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_1.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_1.spvasm.expected.spvasm
index 230fe6a..1509a4b 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_1.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_1.spvasm.expected.spvasm
@@ -1,36 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_2.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_2.spvasm.expected.spvasm
index 9e60c0e..6e238d4 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_2.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_2.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_3.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_3.spvasm.expected.spvasm
index d489e17..581ee7c 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_3.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_3.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_4.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_4.spvasm.expected.spvasm
index aedb68e..08c464f 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_4.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_4.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_5.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_5.spvasm.expected.spvasm
index 333a5bc..1e65d56 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_5.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_5.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_6.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_6.spvasm.expected.spvasm
index 8cb0f37..cb25298 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_6.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_6.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_7.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_7.spvasm.expected.spvasm
index fbeffa5..406850a 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_7.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_CopyObject_7.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_0.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_0.spvasm.expected.spvasm
index 9e443ff..0ed0565 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_0.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_0.spvasm.expected.spvasm
@@ -1,34 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_1.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_1.spvasm.expected.spvasm
index 230fe6a..1509a4b 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_1.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_1.spvasm.expected.spvasm
@@ -1,36 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationIndex
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_2.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_2.spvasm.expected.spvasm
index 9e60c0e..6e238d4 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_2.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_2.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_3.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_3.spvasm.expected.spvasm
index d489e17..581ee7c 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_3.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_3.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_4.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_4.spvasm.expected.spvasm
index aedb68e..08c464f 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_4.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_4.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_5.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_5.spvasm.expected.spvasm
index 333a5bc..1e65d56 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_5.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_5.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_6.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_6.spvasm.expected.spvasm
index 8cb0f37..cb25298 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_6.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_6.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 22
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
-%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_1 = OpVariable %_ptr_Private_v3uint Private %5
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+%_ptr_Private_v3uint = OpTypePointer Private %v3uint
+ %7 = OpConstantNull %v3uint
+ %x_1 = OpVariable %_ptr_Private_v3uint Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %v3uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %v3uint
+ %16 = OpLabel
+ OpStore %x_1 %x_1_param
+ %17 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %15 = OpLoad %v3uint %tint_symbol
- OpStore %x_1 %15
- %16 = OpFunctionCall %void %main_1
+ %19 = OpLabel
+ %21 = OpLoad %v3uint %x_1_param_1
+ %20 = OpFunctionCall %void %main_inner %21
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_7.spvasm.expected.spvasm b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_7.spvasm.expected.spvasm
index fbeffa5..406850a 100644
--- a/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_7.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/Samples_SpvModuleScopeVarParserTest_ComputeBuiltin_Load_Direct_7.spvasm.expected.spvasm
@@ -1,38 +1,47 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 20
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_1_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn WorkgroupId
- %int = OpTypeInt 32 1
- %v3int = OpTypeVector %int 3
-%_ptr_Private_v3int = OpTypePointer Private %v3int
- %5 = OpConstantNull %v3int
- %x_1 = OpVariable %_ptr_Private_v3int Private %5
+ OpDecorate %x_1_param_1 BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_v3uint Input
+ %int = OpTypeInt 32 1
+ %v3int = OpTypeVector %int 3
+%_ptr_Private_v3int = OpTypePointer Private %v3int
+ %9 = OpConstantNull %v3int
+ %x_1 = OpVariable %_ptr_Private_v3int Private %9
%void = OpTypeVoid
%10 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %10
%13 = OpLabel
%14 = OpLoad %v3int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %v3uint
+ %18 = OpLabel
+ %19 = OpBitcast %v3int %x_1_param
+ OpStore %x_1 %19
+ %20 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %10
- %16 = OpLabel
- %18 = OpLoad %v3uint %tint_symbol
- %17 = OpBitcast %v3int %18
- OpStore %x_1 %17
- %19 = OpFunctionCall %void %main_1
+ %22 = OpLabel
+ %24 = OpLoad %v3uint %x_1_param_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_ReadReplaced_Vertex.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_ReadReplaced_Vertex.spvasm.expected.spvasm
index 8ad0a08..ed72268 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_ReadReplaced_Vertex.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_ReadReplaced_Vertex.spvasm.expected.spvasm
@@ -1,59 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_1_1 %vertex_point_size
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
OpName %x_900 "x_900"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Private_float = OpTypePointer Private %float
- %x_900 = OpVariable %_ptr_Private_float Private %4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
+%_ptr_Private_float = OpTypePointer Private %float
+ %x_900 = OpVariable %_ptr_Private_float Private %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %x_900 %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %23 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %23
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpLoad %v4float %x_2
+ %24 = OpCompositeConstruct %main_out %23
+ OpReturnValue %24
OpFunctionEnd
%main = OpFunction %void None %13
- %25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %main_1
- %28 = OpLoad %v4float %x_2
- %29 = OpCompositeConstruct %main_out %28
- %27 = OpFunctionCall %void %tint_symbol_2 %29
+ %26 = OpLabel
+ %27 = OpFunctionCall %main_out %main_inner
+ %28 = OpCompositeExtract %v4float %27 0
+ OpStore %x_2_1_1 %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_Write1_IsErased.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_Write1_IsErased.spvasm.expected.spvasm
index 8c45878..7ca42ed 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_Write1_IsErased.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_Write1_IsErased.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_1_1 %vertex_point_size
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %x_2
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %x_2
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %x_2_1_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
index 8c45878..7ca42ed 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_1_1 %vertex_point_size
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %x_2
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %x_2
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %x_2_1_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPriorAccess_Erased.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPriorAccess_Erased.spvasm.expected.spvasm
index 8c45878..7ca42ed 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPriorAccess_Erased.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Loose_WriteViaCopyObjectPriorAccess_Erased.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_1_1 %vertex_point_size
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %x_2
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %x_2
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %x_2_1_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_ReadReplaced.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_ReadReplaced.spvasm.expected.spvasm
index 7bed4b7..c042ca8 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_ReadReplaced.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_ReadReplaced.spvasm.expected.spvasm
@@ -1,59 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_900 "x_900"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
-%_ptr_Private_float = OpTypePointer Private %float
- %x_900 = OpVariable %_ptr_Private_float Private %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %10 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %10
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %10
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_float = OpTypePointer Private %float
+ %x_900 = OpVariable %_ptr_Private_float Private %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %x_900 %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %23 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %23
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpLoad %v4float %gl_Position
+ %24 = OpCompositeConstruct %main_out %23
+ OpReturnValue %24
OpFunctionEnd
%main = OpFunction %void None %13
- %25 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %main_1
- %28 = OpLoad %v4float %gl_Position
- %29 = OpCompositeConstruct %main_out %28
- %27 = OpFunctionCall %void %tint_symbol_2 %29
+ %26 = OpLabel
+ %27 = OpFunctionCall %main_out %main_inner
+ %28 = OpCompositeExtract %v4float %27 0
+ OpStore %gl_Position_1 %28
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Write1_IsErased.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Write1_IsErased.spvasm.expected.spvasm
index 26910ee..d928dee 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Write1_IsErased.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_Write1_IsErased.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %gl_Position
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %gl_Position
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %gl_Position_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
index 26910ee..d928dee 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPointSize_WriteViaCopyObjectPostAccessChainErased.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %gl_Position
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %gl_Position
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %gl_Position_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position.spvasm.expected.spvasm
index 26910ee..d928dee 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %gl_Position
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %gl_Position
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %gl_Position_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position_Initializer.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position_Initializer.spvasm.expected.spvasm
index dfb0c5d..8c3d7cb 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position_Initializer.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_BuiltIn_Position_Initializer.spvasm.expected.spvasm
@@ -1,59 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 32
+; Bound: 31
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%float_3 = OpConstant %float 3
%float_4 = OpConstant %float 4
- %10 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
+ %13 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
%_ptr_Private_v4float = OpTypePointer Private %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %10
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %15 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%gl_Position = OpVariable %_ptr_Private_v4float Private %13
%void = OpTypeVoid
%16 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %16
%19 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %gl_Position
+ %26 = OpCompositeConstruct %main_out %25
+ OpReturnValue %26
OpFunctionEnd
%main = OpFunction %void None %16
- %27 = OpLabel
- OpStore %tint_pointsize %float_1
- %28 = OpFunctionCall %void %main_1
- %30 = OpLoad %v4float %gl_Position
- %31 = OpCompositeConstruct %main_out %30
- %29 = OpFunctionCall %void %tint_symbol_2 %31
+ %28 = OpLabel
+ %29 = OpFunctionCall %main_out %main_inner
+ %30 = OpCompositeExtract %v4float %29 0
+ OpStore %gl_Position_1 %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition.spvasm.expected.spvasm
index e96f80d..0a7c17b 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition.spvasm.expected.spvasm
@@ -1,58 +1,56 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%16 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %17 = OpTypeFunction %void %main_out
+ %17 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpStore %gl_Position %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %main_out
- %21 = OpLabel
- %22 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %22
- OpReturn
+ %main_inner = OpFunction %main_out None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %gl_Position
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %main_1
- %28 = OpLoad %v4float %gl_Position
- %29 = OpCompositeConstruct %main_out %28
- %27 = OpFunctionCall %void %tint_symbol_2 %29
+ %25 = OpLabel
+ %26 = OpFunctionCall %main_out %main_inner
+ %27 = OpCompositeExtract %v4float %26 0
+ OpStore %gl_Position_1 %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_OneAccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_OneAccessChain.spvasm.expected.spvasm
index 3589285..dca5f5f 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_OneAccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_OneAccessChain.spvasm.expected.spvasm
@@ -1,33 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -35,7 +34,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
@@ -43,19 +42,18 @@
OpStore %18 %float_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %gl_Position
+ %26 = OpCompositeConstruct %main_out %25
+ OpReturnValue %26
OpFunctionEnd
%main = OpFunction %void None %11
- %27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %gl_Position
- %32 = OpCompositeConstruct %main_out %31
- %30 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpLabel
+ %29 = OpFunctionCall %main_out %main_inner
+ %30 = OpCompositeExtract %v4float %29 0
+ OpStore %gl_Position_1 %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm.expected.spvasm
index 3589285..dca5f5f 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm.expected.spvasm
@@ -1,33 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -35,7 +34,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
@@ -43,19 +42,18 @@
OpStore %18 %float_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %gl_Position
+ %26 = OpCompositeConstruct %main_out %25
+ OpReturnValue %26
OpFunctionEnd
%main = OpFunction %void None %11
- %27 = OpLabel
- OpStore %tint_pointsize %float_1
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %gl_Position
- %32 = OpCompositeConstruct %main_out %31
- %30 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpLabel
+ %29 = OpFunctionCall %main_out %main_inner
+ %30 = OpCompositeExtract %v4float %29 0
+ OpStore %gl_Position_1 %30
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition_PerVertexStructOutOfOrderDecl.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition_PerVertexStructOutOfOrderDecl.spvasm.expected.spvasm
index e96f80d..0a7c17b 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition_PerVertexStructOutOfOrderDecl.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePosition_PerVertexStructOutOfOrderDecl.spvasm.expected.spvasm
@@ -1,58 +1,56 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 29
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %gl_Position_1 %vertex_point_size
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%16 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %17 = OpTypeFunction %void %main_out
+ %17 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpStore %gl_Position %16
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %main_out
- %21 = OpLabel
- %22 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %22
- OpReturn
+ %main_inner = OpFunction %main_out None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %gl_Position
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %24 = OpLabel
- OpStore %tint_pointsize %float_1
- %26 = OpFunctionCall %void %main_1
- %28 = OpLoad %v4float %gl_Position
- %29 = OpCompositeConstruct %main_out %28
- %27 = OpFunctionCall %void %tint_symbol_2 %29
+ %25 = OpLabel
+ %26 = OpFunctionCall %main_out %main_inner
+ %27 = OpCompositeExtract %v4float %26 0
+ OpStore %gl_Position_1 %27
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinVertexIndex.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinVertexIndex.spvasm.expected.spvasm
index 2cacf7f..bc62fa7 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinVertexIndex.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinVertexIndex.spvasm.expected.spvasm
@@ -5,62 +5,62 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_param_1 %position_1_1 %vertex_point_size
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_2_param_1 BuiltIn VertexIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_2 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_2_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_2 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %21
+ %x_2_param = OpFunctionParameter %uint
%25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %26
- OpReturn
+ OpStore %x_2 %x_2_param
+ %26 = OpFunctionCall %void %main_1
+ %27 = OpLoad %v4float %position
+ %28 = OpCompositeConstruct %main_out %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %17
- %28 = OpLabel
- OpStore %tint_pointsize %float_1
- %30 = OpLoad %uint %tint_symbol
- OpStore %x_2 %30
- %31 = OpFunctionCall %void %main_1
- %33 = OpLoad %v4float %position
- %34 = OpCompositeConstruct %main_out %33
- %32 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %32 = OpLoad %uint %x_2_param_1
+ %31 = OpFunctionCall %main_out %main_inner %32
+ %33 = OpCompositeExtract %v4float %31 0
+ OpStore %position_1_1 %33
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_FragDepth_Out_Initializer.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_FragDepth_Out_Initializer.spvasm.expected.spvasm
index 9823b0d..e3574b5 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_FragDepth_Out_Initializer.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_FragDepth_Out_Initializer.spvasm.expected.spvasm
@@ -1,50 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 24
+; Bound: 23
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 BuiltIn FragDepth
+ OpDecorate %x_1_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+%_ptr_Output_float = OpTypePointer Output %float
+ %4 = OpConstantNull %float
+ %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
%float_0 = OpConstant %float 0
%_ptr_Private_float = OpTypePointer Private %float
%x_1 = OpVariable %_ptr_Private_float Private %float_0
-%_ptr_Output_float = OpTypePointer Output %float
- %7 = OpConstantNull %float
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
%main_out = OpTypeStruct %float
- %12 = OpTypeFunction %void %main_out
+ %12 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %12
-%tint_symbol = OpFunctionParameter %main_out
- %16 = OpLabel
- %17 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %17
- OpReturn
+ %main_inner = OpFunction %main_out None %12
+ %15 = OpLabel
+ %16 = OpFunctionCall %void %main_1
+ %17 = OpLoad %float %x_1
+ %18 = OpCompositeConstruct %main_out %17
+ OpReturnValue %18
OpFunctionEnd
%main = OpFunction %void None %8
- %19 = OpLabel
- %20 = OpFunctionCall %void %main_1
- %22 = OpLoad %float %x_1
- %23 = OpCompositeConstruct %main_out %22
- %21 = OpFunctionCall %void %tint_symbol_2 %23
+ %20 = OpLabel
+ %21 = OpFunctionCall %main_out %main_inner
+ %22 = OpCompositeExtract %float %21 0
+ OpStore %x_1_1_1 %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_OppositeSignedness.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_OppositeSignedness.spvasm.expected.spvasm
index 7d9858e..01a0e14 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_OppositeSignedness.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_OppositeSignedness.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %x_1
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %x_1
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %x_1_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_SameSignedness.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_SameSignedness.spvasm.expected.spvasm
index 841fa48..4584546 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_SameSignedness.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_Input_SameSignedness.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_1 %x_4_1_1 %vertex_point_size
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_1_param_1 BuiltIn InstanceIndex
+ OpDecorate %x_4_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_4 = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_4_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_4 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_1_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_1 %x_1_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %x_4
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_1 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_4
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_1_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %x_4_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Signed.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Signed.spvasm.expected.spvasm
index c921467..9d318b1 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Signed.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Signed.spvasm.expected.spvasm
@@ -1,31 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
- %int = OpTypeInt 32 1
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %10 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %10
%void = OpTypeVoid
%11 = OpTypeFunction %void
+ %15 = OpTypeFunction %void %uint
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
%_ptr_Input_uint = OpTypePointer Input %uint
@@ -33,13 +36,19 @@
%14 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %15
+ %x_1_param = OpFunctionParameter %uint
+ %18 = OpLabel
+ %21 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %22 = OpBitcast %int %x_1_param
+ OpStore %21 %22
+ %23 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %11
- %16 = OpLabel
- %19 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %22 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %23 = OpLoad %uint %22
- %20 = OpBitcast %int %23
- OpStore %19 %20
- %24 = OpFunctionCall %void %main_1
+ %25 = OpLabel
+ %28 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %29 = OpLoad %uint %28
+ %26 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Unsigned.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Unsigned.spvasm.expected.spvasm
index 0b52389..8c41c94 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Unsigned.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_In_Unsigned.spvasm.expected.spvasm
@@ -1,28 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 23
+; Bound: 28
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %8 = OpConstantNull %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_uint = OpTypePointer Private %uint
@@ -31,12 +34,18 @@
%12 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %20 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ OpStore %20 %x_1_param
+ %21 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %9
- %14 = OpLabel
- %18 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %20 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %21 = OpLoad %uint %20
- OpStore %18 %21
- %22 = OpFunctionCall %void %main_1
+ %23 = OpLabel
+ %26 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %27 = OpLoad %uint %26
+ %24 = OpFunctionCall %void %main_inner %27
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Signed_Initializer.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Signed_Initializer.spvasm.expected.spvasm
index a8e50ce..378ee26 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Signed_Initializer.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Signed_Initializer.spvasm.expected.spvasm
@@ -1,61 +1,59 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
- %int_0 = OpConstant %int 0
- %6 = OpConstantComposite %_arr_int_uint_1 %int_0
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %6
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
- %12 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %12
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+ %int_0 = OpConstant %int 0
+ %10 = OpConstantComposite %_arr_int_uint_1 %int_0
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %10
%void = OpTypeVoid
%13 = OpTypeFunction %void
%main_out = OpTypeStruct %uint
- %17 = OpTypeFunction %void %main_out
-%_ptr_Output_uint = OpTypePointer Output %uint
+ %17 = OpTypeFunction %main_out
%_ptr_Private_int = OpTypePointer Private %int
+%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %17
-%tint_symbol = OpFunctionParameter %main_out
- %21 = OpLabel
- %23 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %24 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %23 %24
- OpReturn
+ %main_inner = OpFunction %main_out None %17
+ %20 = OpLabel
+ %21 = OpFunctionCall %void %main_1
+ %24 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %25 = OpLoad %int %24
+ %22 = OpBitcast %uint %25
+ %26 = OpCompositeConstruct %main_out %22
+ OpReturnValue %26
OpFunctionEnd
%main = OpFunction %void None %13
- %26 = OpLabel
- %27 = OpFunctionCall %void %main_1
- %31 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %32 = OpLoad %int %31
- %29 = OpBitcast %uint %32
- %33 = OpCompositeConstruct %main_out %29
- %28 = OpFunctionCall %void %tint_symbol_2 %33
+ %28 = OpLabel
+ %29 = OpFunctionCall %main_out %main_inner
+ %31 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %32 = OpCompositeExtract %uint %29 0
+ OpStore %31 %32
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Unsigned_Initializer.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Unsigned_Initializer.spvasm.expected.spvasm
index d95cd17..a96308e 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Unsigned_Initializer.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_BuiltinVar_SampleMask_Out_Unsigned_Initializer.spvasm.expected.spvasm
@@ -1,59 +1,57 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
OpMemberDecorate %main_out 0 Offset 0
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
- %uint_0 = OpConstant %uint 0
- %5 = OpConstantComposite %_arr_uint_uint_1 %uint_0
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %5
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
- %10 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %10
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %uint_0 = OpConstant %uint 0
+ %8 = OpConstantComposite %_arr_uint_uint_1 %uint_0
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %uint
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
-%_ptr_Output_uint = OpTypePointer Output %uint
%_ptr_Private_uint = OpTypePointer Private %uint
+%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %23 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %24 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %23 %24
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %23 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ %24 = OpLoad %uint %23
+ %25 = OpCompositeConstruct %main_out %24
+ OpReturnValue %25
OpFunctionEnd
%main = OpFunction %void None %11
- %26 = OpLabel
- %27 = OpFunctionCall %void %main_1
- %30 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %31 = OpLoad %uint %30
- %32 = OpCompositeConstruct %main_out %31
- %28 = OpFunctionCall %void %tint_symbol_2 %32
+ %27 = OpLabel
+ %28 = OpFunctionCall %main_out %main_inner
+ %30 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %31 = OpCompositeExtract %uint %28 0
+ OpStore %30 %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Flat_Fragment_In.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Flat_Fragment_In.spvasm.expected.spvasm
index 8b480f5..9916586 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Flat_Fragment_In.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Flat_Fragment_In.spvasm.expected.spvasm
@@ -1,52 +1,58 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_1_param_2 %x_1_param_1_1 %x_2_param_2 %x_2_param_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_2_param_2 "x_2_param_2"
+ OpName %x_2_param_1_1 "x_2_param_1_1"
OpName %x_1 "x_1"
OpName %S "S"
OpMemberName %S 0 "field0"
OpMemberName %S 1 "field1"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_2_param "x_2_param"
+ OpName %x_2_param_1 "x_2_param_1"
OpName %main "main"
+ OpDecorate %x_1_param_2 Location 1
+ OpDecorate %x_1_param_2 Flat
+ OpDecorate %x_1_param_1_1 Location 2
+ OpDecorate %x_1_param_1_1 Flat
+ OpDecorate %x_2_param_2 Location 5
+ OpDecorate %x_2_param_2 Flat
+ OpDecorate %x_2_param_1_1 Location 6
+ OpDecorate %x_2_param_1_1 Flat
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol Flat
- OpDecorate %tint_symbol_1 Location 2
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 5
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 Location 6
- OpDecorate %tint_symbol_3 Flat
%float = OpTypeFloat 32
+%_ptr_Input_float = OpTypePointer Input %float
+%x_1_param_2 = OpVariable %_ptr_Input_float Input
+%x_1_param_1_1 = OpVariable %_ptr_Input_float Input
+%x_2_param_2 = OpVariable %_ptr_Input_float Input
+%x_2_param_1_1 = OpVariable %_ptr_Input_float Input
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%_ptr_Private__arr_float_uint_2 = OpTypePointer Private %_arr_float_uint_2
- %7 = OpConstantNull %_arr_float_uint_2
- %x_1 = OpVariable %_ptr_Private__arr_float_uint_2 Private %7
+ %12 = OpConstantNull %_arr_float_uint_2
+ %x_1 = OpVariable %_ptr_Private__arr_float_uint_2 Private %12
%S = OpTypeStruct %float %float
%_ptr_Private_S = OpTypePointer Private %S
- %11 = OpConstantNull %S
- %x_2 = OpVariable %_ptr_Private_S Private %11
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
+ %16 = OpConstantNull %S
+ %x_2 = OpVariable %_ptr_Private_S Private %16
%void = OpTypeVoid
%17 = OpTypeFunction %void
+ %21 = OpTypeFunction %void %float %float %float %float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_float = OpTypePointer Private %float
@@ -57,20 +63,29 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %21
+ %x_1_param = OpFunctionParameter %float
+%x_1_param_1 = OpFunctionParameter %float
+ %x_2_param = OpFunctionParameter %float
+%x_2_param_1 = OpFunctionParameter %float
+ %27 = OpLabel
+ %31 = OpAccessChain %_ptr_Private_float %x_1 %int_0
+ OpStore %31 %x_1_param
+ %33 = OpAccessChain %_ptr_Private_float %x_1 %int_1
+ OpStore %33 %x_1_param_1
+ %35 = OpAccessChain %_ptr_Private_float %x_2 %uint_0
+ OpStore %35 %x_2_param
+ %37 = OpAccessChain %_ptr_Private_float %x_2 %uint_1
+ OpStore %37 %x_2_param_1
+ %38 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %17
- %22 = OpLabel
- %26 = OpAccessChain %_ptr_Private_float %x_1 %int_0
- %27 = OpLoad %float %tint_symbol
- OpStore %26 %27
- %29 = OpAccessChain %_ptr_Private_float %x_1 %int_1
- %30 = OpLoad %float %tint_symbol_1
- OpStore %29 %30
- %32 = OpAccessChain %_ptr_Private_float %x_2 %uint_0
- %33 = OpLoad %float %tint_symbol_2
- OpStore %32 %33
- %35 = OpAccessChain %_ptr_Private_float %x_2 %uint_1
- %36 = OpLoad %float %tint_symbol_3
- OpStore %35 %36
- %37 = OpFunctionCall %void %main_1
+ %40 = OpLabel
+ %42 = OpLoad %float %x_1_param_2
+ %43 = OpLoad %float %x_1_param_1_1
+ %44 = OpLoad %float %x_2_param_2
+ %45 = OpLoad %float %x_2_param_1_1
+ %41 = OpFunctionCall %void %main_inner %42 %43 %44 %45
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
index 9a23387..56a3c44 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
@@ -1,13 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 40
+; Bound: 50
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5
+ OpEntryPoint Fragment %main "main" %x_1_param_6 %x_1_param_1_1 %x_1_param_2_1 %x_1_param_3_1 %x_1_param_4_1 %x_1_param_5_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_6 "x_1_param_6"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_1_param_2_1 "x_1_param_2_1"
+ OpName %x_1_param_3_1 "x_1_param_3_1"
+ OpName %x_1_param_4_1 "x_1_param_4_1"
+ OpName %x_1_param_5_1 "x_1_param_5_1"
OpName %S "S"
OpMemberName %S 0 "field0"
OpMemberName %S 1 "field1"
@@ -16,47 +22,49 @@
OpMemberName %S 4 "field4"
OpMemberName %S 5 "field5"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_3 "x_1_param_3"
+ OpName %x_1_param_4 "x_1_param_4"
+ OpName %x_1_param_5 "x_1_param_5"
OpName %main "main"
+ OpDecorate %x_1_param_6 Location 1
+ OpDecorate %x_1_param_1_1 Location 2
+ OpDecorate %x_1_param_1_1 Centroid
+ OpDecorate %x_1_param_2_1 Location 3
+ OpDecorate %x_1_param_2_1 Sample
+ OpDecorate %x_1_param_3_1 Location 4
+ OpDecorate %x_1_param_3_1 NoPerspective
+ OpDecorate %x_1_param_4_1 Location 5
+ OpDecorate %x_1_param_4_1 NoPerspective
+ OpDecorate %x_1_param_4_1 Centroid
+ OpDecorate %x_1_param_5_1 Location 6
+ OpDecorate %x_1_param_5_1 NoPerspective
+ OpDecorate %x_1_param_5_1 Sample
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpMemberDecorate %S 3 Offset 12
OpMemberDecorate %S 4 Offset 16
OpMemberDecorate %S 5 Offset 20
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_1 Location 2
- OpDecorate %tint_symbol_1 Centroid
- OpDecorate %tint_symbol_2 Location 3
- OpDecorate %tint_symbol_2 Sample
- OpDecorate %tint_symbol_3 Location 4
- OpDecorate %tint_symbol_3 NoPerspective
- OpDecorate %tint_symbol_4 Location 5
- OpDecorate %tint_symbol_4 NoPerspective
- OpDecorate %tint_symbol_4 Centroid
- OpDecorate %tint_symbol_5 Location 6
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_5 Sample
%float = OpTypeFloat 32
+%_ptr_Input_float = OpTypePointer Input %float
+%x_1_param_6 = OpVariable %_ptr_Input_float Input
+%x_1_param_1_1 = OpVariable %_ptr_Input_float Input
+%x_1_param_2_1 = OpVariable %_ptr_Input_float Input
+%x_1_param_3_1 = OpVariable %_ptr_Input_float Input
+%x_1_param_4_1 = OpVariable %_ptr_Input_float Input
+%x_1_param_5_1 = OpVariable %_ptr_Input_float Input
%S = OpTypeStruct %float %float %float %float %float %float
%_ptr_Private_S = OpTypePointer Private %S
- %5 = OpConstantNull %S
- %x_1 = OpVariable %_ptr_Private_S Private %5
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
+ %12 = OpConstantNull %S
+ %x_1 = OpVariable %_ptr_Private_S Private %12
%void = OpTypeVoid
%13 = OpTypeFunction %void
+ %17 = OpTypeFunction %void %float %float %float %float %float %float
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
@@ -69,26 +77,37 @@
%16 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %17
+ %x_1_param = OpFunctionParameter %float
+%x_1_param_1 = OpFunctionParameter %float
+%x_1_param_2 = OpFunctionParameter %float
+%x_1_param_3 = OpFunctionParameter %float
+%x_1_param_4 = OpFunctionParameter %float
+%x_1_param_5 = OpFunctionParameter %float
+ %25 = OpLabel
+ %29 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
+ OpStore %29 %x_1_param
+ %31 = OpAccessChain %_ptr_Private_float %x_1 %uint_1
+ OpStore %31 %x_1_param_1
+ %33 = OpAccessChain %_ptr_Private_float %x_1 %uint_2
+ OpStore %33 %x_1_param_2
+ %35 = OpAccessChain %_ptr_Private_float %x_1 %uint_3
+ OpStore %35 %x_1_param_3
+ %37 = OpAccessChain %_ptr_Private_float %x_1 %uint_4
+ OpStore %37 %x_1_param_4
+ %39 = OpAccessChain %_ptr_Private_float %x_1 %uint_5
+ OpStore %39 %x_1_param_5
+ %40 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %13
- %18 = OpLabel
- %22 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
- %23 = OpLoad %float %tint_symbol
- OpStore %22 %23
- %25 = OpAccessChain %_ptr_Private_float %x_1 %uint_1
- %26 = OpLoad %float %tint_symbol_1
- OpStore %25 %26
- %28 = OpAccessChain %_ptr_Private_float %x_1 %uint_2
- %29 = OpLoad %float %tint_symbol_2
- OpStore %28 %29
- %31 = OpAccessChain %_ptr_Private_float %x_1 %uint_3
- %32 = OpLoad %float %tint_symbol_3
- OpStore %31 %32
- %34 = OpAccessChain %_ptr_Private_float %x_1 %uint_4
- %35 = OpLoad %float %tint_symbol_4
- OpStore %34 %35
- %37 = OpAccessChain %_ptr_Private_float %x_1 %uint_5
- %38 = OpLoad %float %tint_symbol_5
- OpStore %37 %38
- %39 = OpFunctionCall %void %main_1
+ %42 = OpLabel
+ %44 = OpLoad %float %x_1_param_6
+ %45 = OpLoad %float %x_1_param_1_1
+ %46 = OpLoad %float %x_1_param_2_1
+ %47 = OpLoad %float %x_1_param_3_1
+ %48 = OpLoad %float %x_1_param_4_1
+ %49 = OpLoad %float %x_1_param_5_1
+ %43 = OpFunctionCall %void %main_inner %44 %45 %46 %47 %48 %49
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
index d6f3990..ef276d9 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Flatten_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
@@ -1,13 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 53
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_6
+ OpEntryPoint Fragment %main "main" %x_1_1_1 %x_1_2_1 %x_1_3_1 %x_1_4_1 %x_1_5_1 %x_1_6_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_1_2_1 "x_1_2_1"
+ OpName %x_1_3_1 "x_1_3_1"
+ OpName %x_1_4_1 "x_1_4_1"
+ OpName %x_1_5_1 "x_1_5_1"
+ OpName %x_1_6_1 "x_1_6_1"
OpName %S "S"
OpMemberName %S 0 "field0"
OpMemberName %S 1 "field1"
@@ -16,12 +22,6 @@
OpMemberName %S 4 "field4"
OpMemberName %S 5 "field5"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
@@ -30,28 +30,27 @@
OpMemberName %main_out 3 "x_1_4"
OpMemberName %main_out 4 "x_1_5"
OpMemberName %main_out 5 "x_1_6"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_1_1_1 Location 1
+ OpDecorate %x_1_2_1 Location 2
+ OpDecorate %x_1_2_1 Centroid
+ OpDecorate %x_1_3_1 Location 3
+ OpDecorate %x_1_3_1 Sample
+ OpDecorate %x_1_4_1 Location 4
+ OpDecorate %x_1_4_1 NoPerspective
+ OpDecorate %x_1_5_1 Location 5
+ OpDecorate %x_1_5_1 NoPerspective
+ OpDecorate %x_1_5_1 Centroid
+ OpDecorate %x_1_6_1 Location 6
+ OpDecorate %x_1_6_1 NoPerspective
+ OpDecorate %x_1_6_1 Sample
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpMemberDecorate %S 3 Offset 12
OpMemberDecorate %S 4 Offset 16
OpMemberDecorate %S 5 Offset 20
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_2 Centroid
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_3 Sample
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_4 NoPerspective
- OpDecorate %tint_symbol_5 Location 5
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_5 Centroid
- OpDecorate %tint_symbol_6 Location 6
- OpDecorate %tint_symbol_6 NoPerspective
- OpDecorate %tint_symbol_6 Sample
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 4
OpMemberDecorate %main_out 2 Offset 8
@@ -59,22 +58,22 @@
OpMemberDecorate %main_out 4 Offset 16
OpMemberDecorate %main_out 5 Offset 20
%float = OpTypeFloat 32
+%_ptr_Output_float = OpTypePointer Output %float
+ %4 = OpConstantNull %float
+ %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_2_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_3_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_4_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_5_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_6_1 = OpVariable %_ptr_Output_float Output %4
%S = OpTypeStruct %float %float %float %float %float %float
%_ptr_Private_S = OpTypePointer Private %S
- %5 = OpConstantNull %S
- %x_1 = OpVariable %_ptr_Private_S Private %5
-%_ptr_Output_float = OpTypePointer Output %float
- %8 = OpConstantNull %float
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %8
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %8
-%tint_symbol_4 = OpVariable %_ptr_Output_float Output %8
-%tint_symbol_5 = OpVariable %_ptr_Output_float Output %8
-%tint_symbol_6 = OpVariable %_ptr_Output_float Output %8
+ %13 = OpConstantNull %S
+ %x_1 = OpVariable %_ptr_Private_S Private %13
%void = OpTypeVoid
%14 = OpTypeFunction %void
%main_out = OpTypeStruct %float %float %float %float %float %float
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
@@ -87,39 +86,38 @@
%17 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_7 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %23 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %23
- %24 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %24
- %25 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %25
- %26 = OpCompositeExtract %float %tint_symbol 3
- OpStore %tint_symbol_4 %26
- %27 = OpCompositeExtract %float %tint_symbol 4
- OpStore %tint_symbol_5 %27
- %28 = OpCompositeExtract %float %tint_symbol 5
- OpStore %tint_symbol_6 %28
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %26 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
+ %27 = OpLoad %float %26
+ %29 = OpAccessChain %_ptr_Private_float %x_1 %uint_1
+ %30 = OpLoad %float %29
+ %32 = OpAccessChain %_ptr_Private_float %x_1 %uint_2
+ %33 = OpLoad %float %32
+ %35 = OpAccessChain %_ptr_Private_float %x_1 %uint_3
+ %36 = OpLoad %float %35
+ %38 = OpAccessChain %_ptr_Private_float %x_1 %uint_4
+ %39 = OpLoad %float %38
+ %41 = OpAccessChain %_ptr_Private_float %x_1 %uint_5
+ %42 = OpLoad %float %41
+ %43 = OpCompositeConstruct %main_out %27 %30 %33 %36 %39 %42
+ OpReturnValue %43
OpFunctionEnd
%main = OpFunction %void None %14
- %30 = OpLabel
- %31 = OpFunctionCall %void %main_1
- %36 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
- %37 = OpLoad %float %36
- %39 = OpAccessChain %_ptr_Private_float %x_1 %uint_1
- %40 = OpLoad %float %39
- %42 = OpAccessChain %_ptr_Private_float %x_1 %uint_2
- %43 = OpLoad %float %42
- %45 = OpAccessChain %_ptr_Private_float %x_1 %uint_3
- %46 = OpLoad %float %45
- %48 = OpAccessChain %_ptr_Private_float %x_1 %uint_4
- %49 = OpLoad %float %48
- %51 = OpAccessChain %_ptr_Private_float %x_1 %uint_5
- %52 = OpLoad %float %51
- %53 = OpCompositeConstruct %main_out %37 %40 %43 %46 %49 %52
- %32 = OpFunctionCall %void %tint_symbol_7 %53
+ %45 = OpLabel
+ %46 = OpFunctionCall %main_out %main_inner
+ %47 = OpCompositeExtract %float %46 0
+ OpStore %x_1_1_1 %47
+ %48 = OpCompositeExtract %float %46 1
+ OpStore %x_1_2_1 %48
+ %49 = OpCompositeExtract %float %46 2
+ OpStore %x_1_3_1 %49
+ %50 = OpCompositeExtract %float %46 3
+ OpStore %x_1_4_1 %50
+ %51 = OpCompositeExtract %float %46 4
+ OpStore %x_1_5_1 %51
+ %52 = OpCompositeExtract %float %46 5
+ OpStore %x_1_6_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_IOLocations.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_IOLocations.spvasm.expected.spvasm
index 85a1b1b..f395152 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_IOLocations.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_IOLocations.spvasm.expected.spvasm
@@ -1,75 +1,77 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3 %tint_symbol_4
+ OpEntryPoint Fragment %main "main" %x_1_param_1 %x_3_param_1 %x_2_1_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
OpMemberName %main_out 1 "x_4_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol Flat
- OpDecorate %tint_symbol_1 Location 30
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
- OpDecorate %tint_symbol_4 Location 6
+ OpDecorate %x_1_param_1 Location 0
+ OpDecorate %x_1_param_1 Flat
+ OpDecorate %x_3_param_1 Location 30
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_2_1_1 Location 0
+ OpDecorate %x_4_1_1 Location 6
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
- %x_2 = OpVariable %_ptr_Private_uint Private %4
- %x_3 = OpVariable %_ptr_Private_uint Private %4
- %x_4 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%x_3_param_1 = OpVariable %_ptr_Input_uint Input
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_3 = OpVariable %_ptr_Output_uint Output %4
-%tint_symbol_4 = OpVariable %_ptr_Output_uint Output %4
+ %7 = OpConstantNull %uint
+ %x_2_1_1 = OpVariable %_ptr_Output_uint Output %7
+ %x_4_1_1 = OpVariable %_ptr_Output_uint Output %7
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %7
+ %x_2 = OpVariable %_ptr_Private_uint Private %7
+ %x_3 = OpVariable %_ptr_Private_uint Private %7
+ %x_4 = OpVariable %_ptr_Private_uint Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%main_out = OpTypeStruct %uint %uint
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out %uint %uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %18
-%tint_symbol_2 = OpFunctionParameter %main_out
- %22 = OpLabel
- %23 = OpCompositeExtract %uint %tint_symbol_2 0
- OpStore %tint_symbol_3 %23
- %24 = OpCompositeExtract %uint %tint_symbol_2 1
- OpStore %tint_symbol_4 %24
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %x_1_param = OpFunctionParameter %uint
+ %x_3_param = OpFunctionParameter %uint
+ %23 = OpLabel
+ OpStore %x_1 %x_1_param
+ OpStore %x_3 %x_3_param
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %uint %x_2
+ %26 = OpLoad %uint %x_4
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %14
- %26 = OpLabel
- %27 = OpLoad %uint %tint_symbol
- OpStore %x_1 %27
- %28 = OpLoad %uint %tint_symbol_1
- OpStore %x_3 %28
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %uint %x_2
- %32 = OpLoad %uint %x_4
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_5 %33
+ %29 = OpLabel
+ %31 = OpLoad %uint %x_1_param_1
+ %32 = OpLoad %uint %x_3_param_1
+ %30 = OpFunctionCall %main_out %main_inner %31 %32
+ %33 = OpCompositeExtract %uint %30 0
+ OpStore %x_2_1_1 %33
+ %34 = OpCompositeExtract %uint %30 1
+ OpStore %x_4_1_1 %34
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_In.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_In.spvasm.expected.spvasm
index 9ee3142..a248252 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_In.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_In.spvasm.expected.spvasm
@@ -1,12 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 73
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_7
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_1 %x_2_param_1 %x_3_param_1 %x_4_param_1 %x_5_param_1 %x_6_param_1 %x_8_1_1 %vertex_point_size
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_5_param_1 "x_5_param_1"
+ OpName %x_6_param_1 "x_6_param_1"
+ OpName %x_8_1_1 "x_8_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
@@ -14,108 +21,111 @@
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_7 "tint_symbol_7"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_8_1"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol_6 "tint_symbol_6"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
+ OpName %x_4_param "x_4_param"
+ OpName %x_5_param "x_5_param"
+ OpName %x_6_param "x_6_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_1 Location 2
- OpDecorate %tint_symbol_2 Location 3
- OpDecorate %tint_symbol_3 Location 4
- OpDecorate %tint_symbol_4 Location 5
- OpDecorate %tint_symbol_4 Flat
- OpDecorate %tint_symbol_5 Location 6
- OpDecorate %tint_symbol_5 Flat
- OpDecorate %tint_symbol_7 BuiltIn Position
+ OpDecorate %x_1_param_1 Location 1
+ OpDecorate %x_2_param_1 Location 2
+ OpDecorate %x_3_param_1 Location 3
+ OpDecorate %x_4_param_1 Location 4
+ OpDecorate %x_5_param_1 Location 5
+ OpDecorate %x_5_param_1 Flat
+ OpDecorate %x_6_param_1 Location 6
+ OpDecorate %x_6_param_1 Flat
+ OpDecorate %x_8_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %8
- %v2uint = OpTypeVector %uint 2
-%_ptr_Private_v2uint = OpTypePointer Private %v2uint
- %12 = OpConstantNull %v2uint
- %x_2 = OpVariable %_ptr_Private_v2uint Private %12
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %16 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %16
- %v2int = OpTypeVector %int 2
-%_ptr_Private_v2int = OpTypePointer Private %v2int
- %20 = OpConstantNull %v2int
- %x_4 = OpVariable %_ptr_Private_v2int Private %20
-%_ptr_Private_float = OpTypePointer Private %float
- %x_5 = OpVariable %_ptr_Private_float Private %4
- %v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
- %26 = OpConstantNull %v2float
- %x_6 = OpVariable %_ptr_Private_v2float Private %26
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %30 = OpConstantNull %v4float
- %x_8 = OpVariable %_ptr_Private_v4float Private %30
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %v2uint = OpTypeVector %uint 2
%_ptr_Input_v2uint = OpTypePointer Input %v2uint
-%tint_symbol_1 = OpVariable %_ptr_Input_v2uint Input
+%x_2_param_1 = OpVariable %_ptr_Input_v2uint Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_2 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
+ %v2int = OpTypeVector %int 2
%_ptr_Input_v2int = OpTypePointer Input %v2int
-%tint_symbol_3 = OpVariable %_ptr_Input_v2int Input
+%x_4_param_1 = OpVariable %_ptr_Input_v2int Input
+ %float = OpTypeFloat 32
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
+%x_5_param_1 = OpVariable %_ptr_Input_float Input
+ %v2float = OpTypeVector %float 2
%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol_5 = OpVariable %_ptr_Input_v2float Input
+%x_6_param_1 = OpVariable %_ptr_Input_v2float Input
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %30
+ %22 = OpConstantNull %v4float
+ %x_8_1_1 = OpVariable %_ptr_Output_v4float Output %22
+%_ptr_Output_float = OpTypePointer Output %float
+ %25 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %25
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %28 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %28
+%_ptr_Private_v2uint = OpTypePointer Private %v2uint
+ %31 = OpConstantNull %v2uint
+ %x_2 = OpVariable %_ptr_Private_v2uint Private %31
+%_ptr_Private_int = OpTypePointer Private %int
+ %34 = OpConstantNull %int
+ %x_3 = OpVariable %_ptr_Private_int Private %34
+%_ptr_Private_v2int = OpTypePointer Private %v2int
+ %37 = OpConstantNull %v2int
+ %x_4 = OpVariable %_ptr_Private_v2int Private %37
+%_ptr_Private_float = OpTypePointer Private %float
+ %x_5 = OpVariable %_ptr_Private_float Private %25
+%_ptr_Private_v2float = OpTypePointer Private %v2float
+ %42 = OpConstantNull %v2float
+ %x_6 = OpVariable %_ptr_Private_v2float Private %42
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_8 = OpVariable %_ptr_Private_v4float Private %22
%void = OpTypeVoid
%45 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %uint %v2uint %int %v2int %float %v2float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %45
%48 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %49
-%tint_symbol_6 = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol_6 0
- OpStore %tint_symbol_7 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %x_1_param = OpFunctionParameter %uint
+ %x_2_param = OpFunctionParameter %v2uint
+ %x_3_param = OpFunctionParameter %int
+ %x_4_param = OpFunctionParameter %v2int
+ %x_5_param = OpFunctionParameter %float
+ %x_6_param = OpFunctionParameter %v2float
+ %58 = OpLabel
+ OpStore %x_1 %x_1_param
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ OpStore %x_4 %x_4_param
+ OpStore %x_5 %x_5_param
+ OpStore %x_6 %x_6_param
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_8
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %45
- %56 = OpLabel
- OpStore %tint_pointsize %float_1
- %58 = OpLoad %uint %tint_symbol
- OpStore %x_1 %58
- %59 = OpLoad %v2uint %tint_symbol_1
- OpStore %x_2 %59
- %60 = OpLoad %int %tint_symbol_2
- OpStore %x_3 %60
- %61 = OpLoad %v2int %tint_symbol_3
- OpStore %x_4 %61
- %62 = OpLoad %float %tint_symbol_4
- OpStore %x_5 %62
- %63 = OpLoad %v2float %tint_symbol_5
- OpStore %x_6 %63
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_8
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_8 %67
+ %63 = OpLabel
+ %65 = OpLoad %uint %x_1_param_1
+ %66 = OpLoad %v2uint %x_2_param_1
+ %67 = OpLoad %int %x_3_param_1
+ %68 = OpLoad %v2int %x_4_param_1
+ %69 = OpLoad %float %x_5_param_1
+ %70 = OpLoad %v2float %x_6_param_1
+ %64 = OpFunctionCall %main_out %main_inner %65 %66 %67 %68 %69 %70
+ %71 = OpCompositeExtract %v4float %64 0
+ OpStore %x_8_1_1 %71
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_Output.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_Output.spvasm.expected.spvasm
index 52337ff..7fe0a34 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_Output.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Flat_Vertex_Output.spvasm.expected.spvasm
@@ -1,12 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_6 %tint_symbol_7
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_1_1 %x_2_1_1 %x_3_1_1 %x_4_1_1 %x_5_1_1 %x_6_1_1 %x_8_1_1 %vertex_point_size
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %x_3_1_1 "x_3_1_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %x_5_1_1 "x_5_1_1"
+ OpName %x_6_1_1 "x_6_1_1"
+ OpName %x_8_1_1 "x_8_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
@@ -14,13 +21,6 @@
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_7 "tint_symbol_7"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
@@ -30,23 +30,22 @@
OpMemberName %main_out 4 "x_5_1"
OpMemberName %main_out 5 "x_6_1"
OpMemberName %main_out 6 "x_8_1"
- OpName %tint_symbol_8 "tint_symbol_8"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_3 Flat
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_4 Flat
- OpDecorate %tint_symbol_5 Location 5
- OpDecorate %tint_symbol_5 Flat
- OpDecorate %tint_symbol_6 Location 6
- OpDecorate %tint_symbol_6 Flat
- OpDecorate %tint_symbol_7 BuiltIn Position
+ OpDecorate %x_1_1_1 Location 1
+ OpDecorate %x_1_1_1 Flat
+ OpDecorate %x_2_1_1 Location 2
+ OpDecorate %x_2_1_1 Flat
+ OpDecorate %x_3_1_1 Location 3
+ OpDecorate %x_3_1_1 Flat
+ OpDecorate %x_4_1_1 Location 4
+ OpDecorate %x_4_1_1 Flat
+ OpDecorate %x_5_1_1 Location 5
+ OpDecorate %x_5_1_1 Flat
+ OpDecorate %x_6_1_1 Location 6
+ OpDecorate %x_6_1_1 Flat
+ OpDecorate %x_8_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 8
OpMemberDecorate %main_out 2 Offset 16
@@ -54,89 +53,88 @@
OpMemberDecorate %main_out 4 Offset 32
OpMemberDecorate %main_out 5 Offset 40
OpMemberDecorate %main_out 6 Offset 48
+ %uint = OpTypeInt 32 0
+%_ptr_Output_uint = OpTypePointer Output %uint
+ %4 = OpConstantNull %uint
+ %x_1_1_1 = OpVariable %_ptr_Output_uint Output %4
+ %v2uint = OpTypeVector %uint 2
+%_ptr_Output_v2uint = OpTypePointer Output %v2uint
+ %8 = OpConstantNull %v2uint
+ %x_2_1_1 = OpVariable %_ptr_Output_v2uint Output %8
+ %int = OpTypeInt 32 1
+%_ptr_Output_int = OpTypePointer Output %int
+ %12 = OpConstantNull %int
+ %x_3_1_1 = OpVariable %_ptr_Output_int Output %12
+ %v2int = OpTypeVector %int 2
+%_ptr_Output_v2int = OpTypePointer Output %v2int
+ %16 = OpConstantNull %v2int
+ %x_4_1_1 = OpVariable %_ptr_Output_v2int Output %16
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %8
- %v2uint = OpTypeVector %uint 2
-%_ptr_Private_v2uint = OpTypePointer Private %v2uint
- %12 = OpConstantNull %v2uint
- %x_2 = OpVariable %_ptr_Private_v2uint Private %12
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %16 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %16
- %v2int = OpTypeVector %int 2
-%_ptr_Private_v2int = OpTypePointer Private %v2int
- %20 = OpConstantNull %v2int
- %x_4 = OpVariable %_ptr_Private_v2int Private %20
-%_ptr_Private_float = OpTypePointer Private %float
- %x_5 = OpVariable %_ptr_Private_float Private %4
+ %20 = OpConstantNull %float
+ %x_5_1_1 = OpVariable %_ptr_Output_float Output %20
%v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
- %26 = OpConstantNull %v2float
- %x_6 = OpVariable %_ptr_Private_v2float Private %26
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %30 = OpConstantNull %v4float
- %x_8 = OpVariable %_ptr_Private_v4float Private %30
-%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_1 = OpVariable %_ptr_Output_uint Output %8
-%_ptr_Output_v2uint = OpTypePointer Output %v2uint
-%tint_symbol_2 = OpVariable %_ptr_Output_v2uint Output %12
-%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %16
-%_ptr_Output_v2int = OpTypePointer Output %v2int
-%tint_symbol_4 = OpVariable %_ptr_Output_v2int Output %20
-%tint_symbol_5 = OpVariable %_ptr_Output_float Output %4
%_ptr_Output_v2float = OpTypePointer Output %v2float
-%tint_symbol_6 = OpVariable %_ptr_Output_v2float Output %26
+ %24 = OpConstantNull %v2float
+ %x_6_1_1 = OpVariable %_ptr_Output_v2float Output %24
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_7 = OpVariable %_ptr_Output_v4float Output %30
+ %28 = OpConstantNull %v4float
+ %x_8_1_1 = OpVariable %_ptr_Output_v4float Output %28
+%vertex_point_size = OpVariable %_ptr_Output_float Output %20
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %4
+%_ptr_Private_v2uint = OpTypePointer Private %v2uint
+ %x_2 = OpVariable %_ptr_Private_v2uint Private %8
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %12
+%_ptr_Private_v2int = OpTypePointer Private %v2int
+ %x_4 = OpVariable %_ptr_Private_v2int Private %16
+%_ptr_Private_float = OpTypePointer Private %float
+ %x_5 = OpVariable %_ptr_Private_float Private %20
+%_ptr_Private_v2float = OpTypePointer Private %v2float
+ %x_6 = OpVariable %_ptr_Private_v2float Private %24
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_8 = OpVariable %_ptr_Private_v4float Private %28
%void = OpTypeVoid
%44 = OpTypeFunction %void
%main_out = OpTypeStruct %uint %v2uint %int %v2int %float %v2float %v4float
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %44
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_8 = OpFunction %void None %48
-%tint_symbol = OpFunctionParameter %main_out
- %52 = OpLabel
- %53 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %tint_symbol_1 %53
- %54 = OpCompositeExtract %v2uint %tint_symbol 1
- OpStore %tint_symbol_2 %54
- %55 = OpCompositeExtract %int %tint_symbol 2
- OpStore %tint_symbol_3 %55
- %56 = OpCompositeExtract %v2int %tint_symbol 3
- OpStore %tint_symbol_4 %56
- %57 = OpCompositeExtract %float %tint_symbol 4
- OpStore %tint_symbol_5 %57
- %58 = OpCompositeExtract %v2float %tint_symbol 5
- OpStore %tint_symbol_6 %58
- %59 = OpCompositeExtract %v4float %tint_symbol 6
- OpStore %tint_symbol_7 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %48
+ %51 = OpLabel
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %uint %x_1
+ %54 = OpLoad %v2uint %x_2
+ %55 = OpLoad %int %x_3
+ %56 = OpLoad %v2int %x_4
+ %57 = OpLoad %float %x_5
+ %58 = OpLoad %v2float %x_6
+ %59 = OpLoad %v4float %x_8
+ %60 = OpCompositeConstruct %main_out %53 %54 %55 %56 %57 %58 %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %44
- %61 = OpLabel
- OpStore %tint_pointsize %float_1
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %uint %x_1
- %66 = OpLoad %v2uint %x_2
- %67 = OpLoad %int %x_3
- %68 = OpLoad %v2int %x_4
- %69 = OpLoad %float %x_5
- %70 = OpLoad %v2float %x_6
- %71 = OpLoad %v4float %x_8
- %72 = OpCompositeConstruct %main_out %65 %66 %67 %68 %69 %70 %71
- %64 = OpFunctionCall %void %tint_symbol_8 %72
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %uint %63 0
+ OpStore %x_1_1_1 %64
+ %65 = OpCompositeExtract %v2uint %63 1
+ OpStore %x_2_1_1 %65
+ %66 = OpCompositeExtract %int %63 2
+ OpStore %x_3_1_1 %66
+ %67 = OpCompositeExtract %v2int %63 3
+ OpStore %x_4_1_1 %67
+ %68 = OpCompositeExtract %float %63 4
+ OpStore %x_5_1_1 %68
+ %69 = OpCompositeExtract %v2float %63 5
+ OpStore %x_6_1_1 %69
+ %70 = OpCompositeExtract %v4float %63 6
+ OpStore %x_8_1_1 %70
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
index a5b6742..5308c15 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_In.spvasm.expected.spvasm
@@ -1,76 +1,95 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 30
+; Bound: 40
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5
+ OpEntryPoint Fragment %main "main" %x_1_param_1 %x_2_param_1 %x_3_param_1 %x_4_param_1 %x_5_param_1 %x_6_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_5_param_1 "x_5_param_1"
+ OpName %x_6_param_1 "x_6_param_1"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
+ OpName %x_4_param "x_4_param"
+ OpName %x_5_param "x_5_param"
+ OpName %x_6_param "x_6_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_1 Location 2
- OpDecorate %tint_symbol_1 Centroid
- OpDecorate %tint_symbol_2 Location 3
- OpDecorate %tint_symbol_2 Sample
- OpDecorate %tint_symbol_3 Location 4
- OpDecorate %tint_symbol_3 NoPerspective
- OpDecorate %tint_symbol_4 Location 5
- OpDecorate %tint_symbol_4 NoPerspective
- OpDecorate %tint_symbol_4 Centroid
- OpDecorate %tint_symbol_5 Location 6
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_5 Sample
+ OpDecorate %x_1_param_1 Location 1
+ OpDecorate %x_2_param_1 Location 2
+ OpDecorate %x_2_param_1 Centroid
+ OpDecorate %x_3_param_1 Location 3
+ OpDecorate %x_3_param_1 Sample
+ OpDecorate %x_4_param_1 Location 4
+ OpDecorate %x_4_param_1 NoPerspective
+ OpDecorate %x_5_param_1 Location 5
+ OpDecorate %x_5_param_1 NoPerspective
+ OpDecorate %x_5_param_1 Centroid
+ OpDecorate %x_6_param_1 Location 6
+ OpDecorate %x_6_param_1 NoPerspective
+ OpDecorate %x_6_param_1 Sample
%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
- %4 = OpConstantNull %float
- %x_1 = OpVariable %_ptr_Private_float Private %4
- %x_2 = OpVariable %_ptr_Private_float Private %4
- %x_3 = OpVariable %_ptr_Private_float Private %4
- %x_4 = OpVariable %_ptr_Private_float Private %4
- %x_5 = OpVariable %_ptr_Private_float Private %4
- %x_6 = OpVariable %_ptr_Private_float Private %4
%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_float Input
-%tint_symbol_4 = OpVariable %_ptr_Input_float Input
-%tint_symbol_5 = OpVariable %_ptr_Input_float Input
+%x_1_param_1 = OpVariable %_ptr_Input_float Input
+%x_2_param_1 = OpVariable %_ptr_Input_float Input
+%x_3_param_1 = OpVariable %_ptr_Input_float Input
+%x_4_param_1 = OpVariable %_ptr_Input_float Input
+%x_5_param_1 = OpVariable %_ptr_Input_float Input
+%x_6_param_1 = OpVariable %_ptr_Input_float Input
+%_ptr_Private_float = OpTypePointer Private %float
+ %11 = OpConstantNull %float
+ %x_1 = OpVariable %_ptr_Private_float Private %11
+ %x_2 = OpVariable %_ptr_Private_float Private %11
+ %x_3 = OpVariable %_ptr_Private_float Private %11
+ %x_4 = OpVariable %_ptr_Private_float Private %11
+ %x_5 = OpVariable %_ptr_Private_float Private %11
+ %x_6 = OpVariable %_ptr_Private_float Private %11
%void = OpTypeVoid
%17 = OpTypeFunction %void
+ %21 = OpTypeFunction %void %float %float %float %float %float %float
%main_1 = OpFunction %void None %17
%20 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %21
+ %x_1_param = OpFunctionParameter %float
+ %x_2_param = OpFunctionParameter %float
+ %x_3_param = OpFunctionParameter %float
+ %x_4_param = OpFunctionParameter %float
+ %x_5_param = OpFunctionParameter %float
+ %x_6_param = OpFunctionParameter %float
+ %29 = OpLabel
+ OpStore %x_1 %x_1_param
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ OpStore %x_4 %x_4_param
+ OpStore %x_5 %x_5_param
+ OpStore %x_6 %x_6_param
+ %30 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %17
- %22 = OpLabel
- %23 = OpLoad %float %tint_symbol
- OpStore %x_1 %23
- %24 = OpLoad %float %tint_symbol_1
- OpStore %x_2 %24
- %25 = OpLoad %float %tint_symbol_2
- OpStore %x_3 %25
- %26 = OpLoad %float %tint_symbol_3
- OpStore %x_4 %26
- %27 = OpLoad %float %tint_symbol_4
- OpStore %x_5 %27
- %28 = OpLoad %float %tint_symbol_5
- OpStore %x_6 %28
- %29 = OpFunctionCall %void %main_1
+ %32 = OpLabel
+ %34 = OpLoad %float %x_1_param_1
+ %35 = OpLoad %float %x_2_param_1
+ %36 = OpLoad %float %x_3_param_1
+ %37 = OpLoad %float %x_4_param_1
+ %38 = OpLoad %float %x_5_param_1
+ %39 = OpLoad %float %x_6_param_1
+ %33 = OpFunctionCall %void %main_inner %34 %35 %36 %37 %38 %39
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
index ce9d79a..a2b4430 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_EntryPointWrapping_Interpolation_Floating_Fragment_Out.spvasm.expected.spvasm
@@ -1,25 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5 %tint_symbol_6
+ OpEntryPoint Fragment %main "main" %x_1_1_1 %x_2_1_1 %x_3_1_1 %x_4_1_1 %x_5_1_1 %x_6_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %x_3_1_1 "x_3_1_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %x_5_1_1 "x_5_1_1"
+ OpName %x_6_1_1 "x_6_1_1"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_6 "tint_symbol_6"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
@@ -28,22 +28,21 @@
OpMemberName %main_out 3 "x_4_1"
OpMemberName %main_out 4 "x_5_1"
OpMemberName %main_out 5 "x_6_1"
- OpName %tint_symbol_7 "tint_symbol_7"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_2 Location 2
- OpDecorate %tint_symbol_2 Centroid
- OpDecorate %tint_symbol_3 Location 3
- OpDecorate %tint_symbol_3 Sample
- OpDecorate %tint_symbol_4 Location 4
- OpDecorate %tint_symbol_4 NoPerspective
- OpDecorate %tint_symbol_5 Location 5
- OpDecorate %tint_symbol_5 NoPerspective
- OpDecorate %tint_symbol_5 Centroid
- OpDecorate %tint_symbol_6 Location 6
- OpDecorate %tint_symbol_6 NoPerspective
- OpDecorate %tint_symbol_6 Sample
+ OpDecorate %x_1_1_1 Location 1
+ OpDecorate %x_2_1_1 Location 2
+ OpDecorate %x_2_1_1 Centroid
+ OpDecorate %x_3_1_1 Location 3
+ OpDecorate %x_3_1_1 Sample
+ OpDecorate %x_4_1_1 Location 4
+ OpDecorate %x_4_1_1 NoPerspective
+ OpDecorate %x_5_1_1 Location 5
+ OpDecorate %x_5_1_1 NoPerspective
+ OpDecorate %x_5_1_1 Centroid
+ OpDecorate %x_6_1_1 Location 6
+ OpDecorate %x_6_1_1 NoPerspective
+ OpDecorate %x_6_1_1 Sample
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 4
OpMemberDecorate %main_out 2 Offset 8
@@ -51,56 +50,55 @@
OpMemberDecorate %main_out 4 Offset 16
OpMemberDecorate %main_out 5 Offset 20
%float = OpTypeFloat 32
-%_ptr_Private_float = OpTypePointer Private %float
+%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
+ %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_2_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_3_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_4_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_5_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_6_1_1 = OpVariable %_ptr_Output_float Output %4
+%_ptr_Private_float = OpTypePointer Private %float
%x_1 = OpVariable %_ptr_Private_float Private %4
%x_2 = OpVariable %_ptr_Private_float Private %4
%x_3 = OpVariable %_ptr_Private_float Private %4
%x_4 = OpVariable %_ptr_Private_float Private %4
%x_5 = OpVariable %_ptr_Private_float Private %4
%x_6 = OpVariable %_ptr_Private_float Private %4
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_4 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_5 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_6 = OpVariable %_ptr_Output_float Output %4
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %float %float %float %float %float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %17
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_7 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- %28 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %28
- %29 = OpCompositeExtract %float %tint_symbol 3
- OpStore %tint_symbol_4 %29
- %30 = OpCompositeExtract %float %tint_symbol 4
- OpStore %tint_symbol_5 %30
- %31 = OpCompositeExtract %float %tint_symbol 5
- OpStore %tint_symbol_6 %31
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %float %x_1
+ %27 = OpLoad %float %x_2
+ %28 = OpLoad %float %x_3
+ %29 = OpLoad %float %x_4
+ %30 = OpLoad %float %x_5
+ %31 = OpLoad %float %x_6
+ %32 = OpCompositeConstruct %main_out %26 %27 %28 %29 %30 %31
+ OpReturnValue %32
OpFunctionEnd
%main = OpFunction %void None %17
- %33 = OpLabel
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %float %x_1
- %37 = OpLoad %float %x_2
- %38 = OpLoad %float %x_3
- %39 = OpLoad %float %x_4
- %40 = OpLoad %float %x_5
- %41 = OpLoad %float %x_6
- %42 = OpCompositeConstruct %main_out %36 %37 %38 %39 %40 %41
- %35 = OpFunctionCall %void %tint_symbol_7 %42
+ %34 = OpLabel
+ %35 = OpFunctionCall %main_out %main_inner
+ %36 = OpCompositeExtract %float %35 0
+ OpStore %x_1_1_1 %36
+ %37 = OpCompositeExtract %float %35 1
+ OpStore %x_2_1_1 %37
+ %38 = OpCompositeExtract %float %35 2
+ OpStore %x_3_1_1 %38
+ %39 = OpCompositeExtract %float %35 3
+ OpStore %x_4_1_1 %39
+ %40 = OpCompositeExtract %float %35 4
+ OpStore %x_5_1_1 %40
+ %41 = OpCompositeExtract %float %35 5
+ OpStore %x_6_1_1 %41
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_FlattenStruct_LocOnMembers.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_FlattenStruct_LocOnMembers.spvasm.expected.spvasm
index 1fb50f3..ae11421 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_FlattenStruct_LocOnMembers.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_FlattenStruct_LocOnMembers.spvasm.expected.spvasm
@@ -1,103 +1,105 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3 %tint_symbol_4 %tint_symbol_5
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_2 %x_1_param_1_1 %x_2_1_1 %x_3_1_1 %x_3_2_1 %vertex_point_size
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %x_3_1_1 "x_3_1_1"
+ OpName %x_3_2_1 "x_3_2_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Communicators "Communicators"
OpMemberName %Communicators 0 "alice"
OpMemberName %Communicators 1 "bob"
OpName %x_1 "x_1"
OpName %x_3 "x_3"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_5 "tint_symbol_5"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
OpMemberName %main_out 1 "x_3_1"
OpMemberName %main_out 2 "x_3_2"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_param_2 Location 9
+ OpDecorate %x_1_param_1_1 Location 11
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %x_3_1_1 Location 9
+ OpDecorate %x_3_2_1 Location 11
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Communicators 0 Offset 0
OpMemberDecorate %Communicators 1 Offset 16
- OpDecorate %tint_symbol Location 9
- OpDecorate %tint_symbol_1 Location 11
- OpDecorate %tint_symbol_3 BuiltIn Position
- OpDecorate %tint_symbol_4 Location 9
- OpDecorate %tint_symbol_5 Location 11
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
OpMemberDecorate %main_out 2 Offset 32
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+%_ptr_Input_float = OpTypePointer Input %float
+%x_1_param_2 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_1_param_1_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %9 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+ %x_3_1_1 = OpVariable %_ptr_Output_float Output %12
+ %x_3_2_1 = OpVariable %_ptr_Output_v4float Output %9
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
%Communicators = OpTypeStruct %float %v4float
%_ptr_Private_Communicators = OpTypePointer Private %Communicators
- %9 = OpConstantNull %Communicators
- %x_1 = OpVariable %_ptr_Private_Communicators Private %9
- %x_3 = OpVariable %_ptr_Private_Communicators Private %9
+ %18 = OpConstantNull %Communicators
+ %x_1 = OpVariable %_ptr_Private_Communicators Private %18
+ %x_3 = OpVariable %_ptr_Private_Communicators Private %18
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %13
-%tint_symbol_4 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %13
+ %x_2 = OpVariable %_ptr_Private_v4float Private %9
%void = OpTypeVoid
%22 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float %float %v4float
- %26 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %26 = OpTypeFunction %main_out %float %v4float
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%uint_1 = OpConstant %uint 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %22
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_6 = OpFunction %void None %26
-%tint_symbol_2 = OpFunctionParameter %main_out
- %30 = OpLabel
- %31 = OpCompositeExtract %v4float %tint_symbol_2 0
- OpStore %tint_symbol_3 %31
- %32 = OpCompositeExtract %float %tint_symbol_2 1
- OpStore %tint_symbol_4 %32
- %33 = OpCompositeExtract %v4float %tint_symbol_2 2
- OpStore %tint_symbol_5 %33
- OpReturn
+ %main_inner = OpFunction %main_out None %26
+ %x_1_param = OpFunctionParameter %float
+%x_1_param_1 = OpFunctionParameter %v4float
+ %31 = OpLabel
+ %35 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
+ OpStore %35 %x_1_param
+ %37 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
+ OpStore %37 %x_1_param_1
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_2
+ %40 = OpAccessChain %_ptr_Private_float %x_3 %uint_0
+ %41 = OpLoad %float %40
+ %42 = OpAccessChain %_ptr_Private_v4float %x_3 %uint_1
+ %43 = OpLoad %v4float %42
+ %44 = OpCompositeConstruct %main_out %39 %41 %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %22
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %40 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
- %41 = OpLoad %float %tint_symbol
- OpStore %40 %41
- %43 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
- %44 = OpLoad %v4float %tint_symbol_1
- OpStore %43 %44
- %45 = OpFunctionCall %void %main_1
- %47 = OpLoad %v4float %x_2
- %48 = OpAccessChain %_ptr_Private_float %x_3 %uint_0
- %49 = OpLoad %float %48
- %50 = OpAccessChain %_ptr_Private_v4float %x_3 %uint_1
- %51 = OpLoad %v4float %50
- %52 = OpCompositeConstruct %main_out %47 %49 %51
- %46 = OpFunctionCall %void %tint_symbol_6 %52
+ %46 = OpLabel
+ %48 = OpLoad %float %x_1_param_2
+ %49 = OpLoad %v4float %x_1_param_1_1
+ %47 = OpFunctionCall %main_out %main_inner %48 %49
+ %50 = OpCompositeExtract %v4float %47 0
+ OpStore %x_2_1_1 %50
+ %51 = OpCompositeExtract %float %47 1
+ OpStore %x_3_1_1 %51
+ %52 = OpCompositeExtract %v4float %47 2
+ OpStore %x_3_2_1 %52
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenArray_OneLevel.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenArray_OneLevel.spvasm.expected.spvasm
index 280aeff..ba49208 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenArray_OneLevel.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenArray_OneLevel.spvasm.expected.spvasm
@@ -1,87 +1,91 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 51
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_3 %x_1_param_1_1 %x_1_param_2_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_param_3 "x_1_param_3"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_1_param_2_1 "x_1_param_2_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_3 "tint_symbol_3"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_1_param_2 "x_1_param_2"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_param_3 Location 4
+ OpDecorate %x_1_param_1_1 Location 5
+ OpDecorate %x_1_param_2_1 Location 6
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %_arr_float_uint_3 ArrayStride 4
- OpDecorate %tint_symbol Location 4
- OpDecorate %tint_symbol_1 Location 5
- OpDecorate %tint_symbol_2 Location 6
- OpDecorate %tint_symbol_4 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+%_ptr_Input_float = OpTypePointer Input %float
+%x_1_param_3 = OpVariable %_ptr_Input_float Input
+%x_1_param_1_1 = OpVariable %_ptr_Input_float Input
+%x_1_param_2_1 = OpVariable %_ptr_Input_float Input
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %9 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %9
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%_ptr_Private__arr_float_uint_3 = OpTypePointer Private %_arr_float_uint_3
- %10 = OpConstantNull %_arr_float_uint_3
- %x_1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %10
- %v4float = OpTypeVector %float 4
+ %18 = OpConstantNull %_arr_float_uint_3
+ %x_1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %18
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %14
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %14
+ %x_2 = OpVariable %_ptr_Private_v4float Private %9
%void = OpTypeVoid
%21 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %25 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %25 = OpTypeFunction %main_out %float %float %float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_float = OpTypePointer Private %float
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %21
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %25
-%tint_symbol_3 = OpFunctionParameter %main_out
- %29 = OpLabel
- %30 = OpCompositeExtract %v4float %tint_symbol_3 0
- OpStore %tint_symbol_4 %30
- OpReturn
+ %main_inner = OpFunction %main_out None %25
+ %x_1_param = OpFunctionParameter %float
+%x_1_param_1 = OpFunctionParameter %float
+%x_1_param_2 = OpFunctionParameter %float
+ %31 = OpLabel
+ %35 = OpAccessChain %_ptr_Private_float %x_1 %int_0
+ OpStore %35 %x_1_param
+ %37 = OpAccessChain %_ptr_Private_float %x_1 %int_1
+ OpStore %37 %x_1_param_1
+ %39 = OpAccessChain %_ptr_Private_float %x_1 %int_2
+ OpStore %39 %x_1_param_2
+ %40 = OpFunctionCall %void %main_1
+ %41 = OpLoad %v4float %x_2
+ %42 = OpCompositeConstruct %main_out %41
+ OpReturnValue %42
OpFunctionEnd
%main = OpFunction %void None %21
- %32 = OpLabel
- OpStore %tint_pointsize %float_1
- %37 = OpAccessChain %_ptr_Private_float %x_1 %int_0
- %38 = OpLoad %float %tint_symbol
- OpStore %37 %38
- %40 = OpAccessChain %_ptr_Private_float %x_1 %int_1
- %41 = OpLoad %float %tint_symbol_1
- OpStore %40 %41
- %43 = OpAccessChain %_ptr_Private_float %x_1 %int_2
- %44 = OpLoad %float %tint_symbol_2
- OpStore %43 %44
- %45 = OpFunctionCall %void %main_1
- %47 = OpLoad %v4float %x_2
- %48 = OpCompositeConstruct %main_out %47
- %46 = OpFunctionCall %void %tint_symbol_5 %48
+ %44 = OpLabel
+ %46 = OpLoad %float %x_1_param_3
+ %47 = OpLoad %float %x_1_param_1_1
+ %48 = OpLoad %float %x_1_param_2_1
+ %45 = OpFunctionCall %main_out %main_inner %46 %47 %48
+ %49 = OpCompositeExtract %v4float %45 0
+ OpStore %x_2_1_1 %49
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenMatrix.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenMatrix.spvasm.expected.spvasm
index 34cb4ed..8caff85 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenMatrix.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenMatrix.spvasm.expected.spvasm
@@ -1,76 +1,78 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_2 %x_1_param_1_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 9
- OpDecorate %tint_symbol_1 Location 10
- OpDecorate %tint_symbol_3 BuiltIn Position
+ OpDecorate %x_1_param_2 Location 9
+ OpDecorate %x_1_param_1_1 Location 10
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_1_param_2 = OpVariable %_ptr_Input_v4float Input
+%x_1_param_1_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %8 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%mat2v4float = OpTypeMatrix %v4float 2
%_ptr_Private_mat2v4float = OpTypePointer Private %mat2v4float
- %9 = OpConstantNull %mat2v4float
- %x_1 = OpVariable %_ptr_Private_mat2v4float Private %9
+ %15 = OpConstantNull %mat2v4float
+ %x_1 = OpVariable %_ptr_Private_mat2v4float Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
+ %x_2 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %22 = OpTypeFunction %main_out %v4float %v4float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %22
-%tint_symbol_2 = OpFunctionParameter %main_out
- %26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_2 0
- OpStore %tint_symbol_3 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %22
+ %x_1_param = OpFunctionParameter %v4float
+%x_1_param_1 = OpFunctionParameter %v4float
+ %27 = OpLabel
+ %30 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0
+ OpStore %30 %x_1_param
+ %32 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1
+ OpStore %32 %x_1_param_1
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_2
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %18
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0
- %34 = OpLoad %v4float %tint_symbol
- OpStore %33 %34
- %36 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1
- %37 = OpLoad %v4float %tint_symbol_1
- OpStore %36 %37
- %38 = OpFunctionCall %void %main_1
- %40 = OpLoad %v4float %x_2
- %41 = OpCompositeConstruct %main_out %40
- %39 = OpFunctionCall %void %tint_symbol_4 %41
+ %37 = OpLabel
+ %39 = OpLoad %v4float %x_1_param_2
+ %40 = OpLoad %v4float %x_1_param_1_1
+ %38 = OpFunctionCall %main_out %main_inner %39 %40
+ %41 = OpCompositeExtract %v4float %38 0
+ OpStore %x_2_1_1 %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenNested.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenNested.spvasm.expected.spvasm
index b6bb3a7..2374315 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenNested.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenNested.spvasm.expected.spvasm
@@ -1,92 +1,98 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_5
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_4 %x_1_param_1_1 %x_1_param_2_1 %x_1_param_3_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_param_4 "x_1_param_4"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_1_param_2_1 "x_1_param_2_1"
+ OpName %x_1_param_3_1 "x_1_param_3_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_5 "tint_symbol_5"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_6 "tint_symbol_6"
- OpName %tint_symbol_4 "tint_symbol_4"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_3 "x_1_param_3"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_param_4 Location 7
+ OpDecorate %x_1_param_1_1 Location 8
+ OpDecorate %x_1_param_2_1 Location 9
+ OpDecorate %x_1_param_3_1 Location 10
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %_arr_mat2v4float_uint_2 ArrayStride 32
- OpDecorate %tint_symbol Location 7
- OpDecorate %tint_symbol_1 Location 8
- OpDecorate %tint_symbol_2 Location 9
- OpDecorate %tint_symbol_3 Location 10
- OpDecorate %tint_symbol_5 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_1_param_4 = OpVariable %_ptr_Input_v4float Input
+%x_1_param_1_1 = OpVariable %_ptr_Input_v4float Input
+%x_1_param_2_1 = OpVariable %_ptr_Input_v4float Input
+%x_1_param_3_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %10 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %10
+%_ptr_Output_float = OpTypePointer Output %float
+ %13 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %13
%mat2v4float = OpTypeMatrix %v4float 2
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_mat2v4float_uint_2 = OpTypeArray %mat2v4float %uint_2
%_ptr_Private__arr_mat2v4float_uint_2 = OpTypePointer Private %_arr_mat2v4float_uint_2
- %12 = OpConstantNull %_arr_mat2v4float_uint_2
- %x_1 = OpVariable %_ptr_Private__arr_mat2v4float_uint_2 Private %12
+ %20 = OpConstantNull %_arr_mat2v4float_uint_2
+ %x_1 = OpVariable %_ptr_Private__arr_mat2v4float_uint_2 Private %20
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_2 = OpVariable %_ptr_Input_v4float Input
-%tint_symbol_3 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %15
+ %x_2 = OpVariable %_ptr_Private_v4float Private %10
%void = OpTypeVoid
%23 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %27 = OpTypeFunction %main_out %v4float %v4float %v4float %v4float
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %23
%26 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_6 = OpFunction %void None %27
-%tint_symbol_4 = OpFunctionParameter %main_out
- %31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol_4 0
- OpStore %tint_symbol_5 %32
- OpReturn
+ %main_inner = OpFunction %main_out None %27
+ %x_1_param = OpFunctionParameter %v4float
+%x_1_param_1 = OpFunctionParameter %v4float
+%x_1_param_2 = OpFunctionParameter %v4float
+%x_1_param_3 = OpFunctionParameter %v4float
+ %34 = OpLabel
+ %37 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0 %int_0
+ OpStore %37 %x_1_param
+ %39 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0 %int_1
+ OpStore %39 %x_1_param_1
+ %40 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1 %int_0
+ OpStore %40 %x_1_param_2
+ %41 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1 %int_1
+ OpStore %41 %x_1_param_3
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_2
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %23
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %38 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0 %int_0
- %39 = OpLoad %v4float %tint_symbol
- OpStore %38 %39
- %41 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0 %int_1
- %42 = OpLoad %v4float %tint_symbol_1
- OpStore %41 %42
- %43 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1 %int_0
- %44 = OpLoad %v4float %tint_symbol_2
- OpStore %43 %44
- %45 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1 %int_1
- %46 = OpLoad %v4float %tint_symbol_3
- OpStore %45 %46
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_2
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_6 %50
+ %46 = OpLabel
+ %48 = OpLoad %v4float %x_1_param_4
+ %49 = OpLoad %v4float %x_1_param_1_1
+ %50 = OpLoad %v4float %x_1_param_2_1
+ %51 = OpLoad %v4float %x_1_param_3_1
+ %47 = OpFunctionCall %main_out %main_inner %48 %49 %50 %51
+ %52 = OpCompositeExtract %v4float %47 0
+ OpStore %x_2_1_1 %52
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenStruct_LocOnVariable.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
index 4c6f2ca..386b02c 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Input_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
@@ -1,83 +1,85 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_param_2 %x_1_param_1_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_param_2 "x_1_param_2"
+ OpName %x_1_param_1_1 "x_1_param_1_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Communicators "Communicators"
OpMemberName %Communicators 0 "alice"
OpMemberName %Communicators 1 "bob"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
+ OpName %x_1_param_1 "x_1_param_1"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_param_2 Location 9
+ OpDecorate %x_1_param_1_1 Location 10
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Communicators 0 Offset 0
OpMemberDecorate %Communicators 1 Offset 16
- OpDecorate %tint_symbol Location 9
- OpDecorate %tint_symbol_1 Location 10
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+%_ptr_Input_float = OpTypePointer Input %float
+%x_1_param_2 = OpVariable %_ptr_Input_float Input
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_1_param_1_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %9 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %9
+%_ptr_Output_float = OpTypePointer Output %float
+ %12 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %12
%Communicators = OpTypeStruct %float %v4float
%_ptr_Private_Communicators = OpTypePointer Private %Communicators
- %9 = OpConstantNull %Communicators
- %x_1 = OpVariable %_ptr_Private_Communicators Private %9
+ %16 = OpConstantNull %Communicators
+ %x_1 = OpVariable %_ptr_Private_Communicators Private %16
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_float = OpTypePointer Input %float
-%tint_symbol = OpVariable %_ptr_Input_float Input
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
+ %x_2 = OpVariable %_ptr_Private_v4float Private %9
%void = OpTypeVoid
%19 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %23 = OpTypeFunction %main_out %float %v4float
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%uint_1 = OpConstant %uint 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %19
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %23
-%tint_symbol_2 = OpFunctionParameter %main_out
- %27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_2 0
- OpStore %tint_symbol_3 %28
- OpReturn
+ %main_inner = OpFunction %main_out None %23
+ %x_1_param = OpFunctionParameter %float
+%x_1_param_1 = OpFunctionParameter %v4float
+ %28 = OpLabel
+ %32 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
+ OpStore %32 %x_1_param
+ %34 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
+ OpStore %34 %x_1_param_1
+ %35 = OpFunctionCall %void %main_1
+ %36 = OpLoad %v4float %x_2
+ %37 = OpCompositeConstruct %main_out %36
+ OpReturnValue %37
OpFunctionEnd
%main = OpFunction %void None %19
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
- %36 = OpLoad %float %tint_symbol
- OpStore %35 %36
- %38 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
- %39 = OpLoad %v4float %tint_symbol_1
- OpStore %38 %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_2
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_4 %43
+ %39 = OpLabel
+ %41 = OpLoad %float %x_1_param_2
+ %42 = OpLoad %v4float %x_1_param_1_1
+ %40 = OpFunctionCall %main_out %main_inner %41 %42
+ %43 = OpCompositeExtract %v4float %40 0
+ OpStore %x_2_1_1 %43
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_AccessChain.spvasm.expected.spvasm
index d90a2cd..7c2dc75 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_AccessChain.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %position
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %position
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %position_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_CopyObject.spvasm.expected.spvasm
index d90a2cd..7c2dc75 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_CopyObject.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %position
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %position
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %position_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_Direct.spvasm.expected.spvasm
index d90a2cd..7c2dc75 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_I32_Load_Direct.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %position
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %position
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %position_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_AccessChain.spvasm.expected.spvasm
index 123e58b..cf8a771 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_AccessChain.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %position
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %position
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %position_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_CopyObject.spvasm.expected.spvasm
index 123e58b..cf8a771 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_CopyObject.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %position
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %position
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %position_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_Direct.spvasm.expected.spvasm
index 123e58b..cf8a771 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_InstanceIndex_U32_Load_Direct.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %position_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %position_1_1 "position_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %position "position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "position_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn InstanceIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn InstanceIndex
+ OpDecorate %position_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%position_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %position
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %position
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %position_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenArray_OneLevel.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenArray_OneLevel.spvasm.expected.spvasm
index 6ce7ccc..22cf6f9 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenArray_OneLevel.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenArray_OneLevel.spvasm.expected.spvasm
@@ -1,33 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_1_1 %x_1_2_1 %x_1_3_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_1_2_1 "x_1_2_1"
+ OpName %x_1_3_1 "x_1_3_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
OpMemberName %main_out 1 "x_1_2"
OpMemberName %main_out 2 "x_1_3"
OpMemberName %main_out 3 "x_2_1"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_1_1 Location 4
+ OpDecorate %x_1_2_1 Location 5
+ OpDecorate %x_1_3_1 Location 6
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %_arr_float_uint_3 ArrayStride 4
- OpDecorate %tint_symbol_1 Location 4
- OpDecorate %tint_symbol_2 Location 5
- OpDecorate %tint_symbol_3 Location 6
- OpDecorate %tint_symbol_4 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 4
OpMemberDecorate %main_out 2 Offset 8
@@ -35,61 +34,60 @@
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_2_1 = OpVariable %_ptr_Output_float Output %4
+ %x_1_3_1 = OpVariable %_ptr_Output_float Output %4
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %10 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %10
+%vertex_point_size = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%_ptr_Private__arr_float_uint_3 = OpTypePointer Private %_arr_float_uint_3
- %10 = OpConstantNull %_arr_float_uint_3
- %x_1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %10
- %v4float = OpTypeVector %float 4
+ %17 = OpConstantNull %_arr_float_uint_3
+ %x_1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %17
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %14
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %4
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %14
+ %x_2 = OpVariable %_ptr_Private_v4float Private %10
%void = OpTypeVoid
%20 = OpTypeFunction %void
%main_out = OpTypeStruct %float %float %float %v4float
- %24 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %24 = OpTypeFunction %main_out
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_float = OpTypePointer Private %float
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %20
%23 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %main_out
- %28 = OpLabel
- %29 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %29
- %30 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %30
- %31 = OpCompositeExtract %float %tint_symbol 2
- OpStore %tint_symbol_3 %31
- %32 = OpCompositeExtract %v4float %tint_symbol 3
- OpStore %tint_symbol_4 %32
- OpReturn
+ %main_inner = OpFunction %main_out None %24
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %main_1
+ %32 = OpAccessChain %_ptr_Private_float %x_1 %int_0
+ %33 = OpLoad %float %32
+ %35 = OpAccessChain %_ptr_Private_float %x_1 %int_1
+ %36 = OpLoad %float %35
+ %38 = OpAccessChain %_ptr_Private_float %x_1 %int_2
+ %39 = OpLoad %float %38
+ %40 = OpLoad %v4float %x_2
+ %41 = OpCompositeConstruct %main_out %33 %36 %39 %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %20
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpFunctionCall %void %main_1
- %41 = OpAccessChain %_ptr_Private_float %x_1 %int_0
- %42 = OpLoad %float %41
- %44 = OpAccessChain %_ptr_Private_float %x_1 %int_1
- %45 = OpLoad %float %44
- %47 = OpAccessChain %_ptr_Private_float %x_1 %int_2
- %48 = OpLoad %float %47
- %49 = OpLoad %v4float %x_2
- %50 = OpCompositeConstruct %main_out %42 %45 %48 %49
- %37 = OpFunctionCall %void %tint_symbol_5 %50
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %float %44 0
+ OpStore %x_1_1_1 %45
+ %46 = OpCompositeExtract %float %44 1
+ OpStore %x_1_2_1 %46
+ %47 = OpCompositeExtract %float %44 2
+ OpStore %x_1_3_1 %47
+ %48 = OpCompositeExtract %v4float %44 3
+ OpStore %x_2_1_1 %48
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenMatrix.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenMatrix.spvasm.expected.spvasm
index 4c93fec..ed0b979 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenMatrix.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenMatrix.spvasm.expected.spvasm
@@ -1,81 +1,79 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_1_1 %x_1_2_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_1_2_1 "x_1_2_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
OpMemberName %main_out 1 "x_1_2"
OpMemberName %main_out 2 "x_2_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 Location 9
- OpDecorate %tint_symbol_2 Location 10
- OpDecorate %tint_symbol_3 BuiltIn Position
+ OpDecorate %x_1_1_1 Location 9
+ OpDecorate %x_1_2_1 Location 10
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
OpMemberDecorate %main_out 2 Offset 32
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %x_1_2_1 = OpVariable %_ptr_Output_v4float Output %5
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
%mat2v4float = OpTypeMatrix %v4float 2
%_ptr_Private_mat2v4float = OpTypePointer Private %mat2v4float
- %9 = OpConstantNull %mat2v4float
- %x_1 = OpVariable %_ptr_Private_mat2v4float Private %9
+ %14 = OpConstantNull %mat2v4float
+ %x_1 = OpVariable %_ptr_Private_mat2v4float Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float %v4float %v4float
- %21 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %21 = OpTypeFunction %main_out
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %v4float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- %28 = OpCompositeExtract %v4float %tint_symbol 2
- OpStore %tint_symbol_3 %28
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %28 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0
+ %29 = OpLoad %v4float %28
+ %31 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1
+ %32 = OpLoad %v4float %31
+ %33 = OpLoad %v4float %x_2
+ %34 = OpCompositeConstruct %main_out %29 %32 %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %17
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %main_1
- %36 = OpAccessChain %_ptr_Private_v4float %x_1 %int_0
- %37 = OpLoad %v4float %36
- %39 = OpAccessChain %_ptr_Private_v4float %x_1 %int_1
- %40 = OpLoad %v4float %39
- %41 = OpLoad %v4float %x_2
- %42 = OpCompositeConstruct %main_out %37 %40 %41
- %33 = OpFunctionCall %void %tint_symbol_4 %42
+ %36 = OpLabel
+ %37 = OpFunctionCall %main_out %main_inner
+ %38 = OpCompositeExtract %v4float %37 0
+ OpStore %x_1_1_1 %38
+ %39 = OpCompositeExtract %v4float %37 1
+ OpStore %x_1_2_1 %39
+ %40 = OpCompositeExtract %v4float %37 2
+ OpStore %x_2_1_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenStruct_LocOnVariable.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
index 0d54b93..05cb930 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_Output_FlattenStruct_LocOnVariable.spvasm.expected.spvasm
@@ -1,87 +1,85 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1 %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_1_1_1 %x_1_2_1 %x_2_1_1 %vertex_point_size
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %x_1_2_1 "x_1_2_1"
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %Communicators "Communicators"
OpMemberName %Communicators 0 "alice"
OpMemberName %Communicators 1 "bob"
OpName %x_1 "x_1"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
OpMemberName %main_out 1 "x_1_2"
OpMemberName %main_out 2 "x_2_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_1_1_1 Location 9
+ OpDecorate %x_1_2_1 Location 10
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %Communicators 0 Offset 0
OpMemberDecorate %Communicators 1 Offset 16
- OpDecorate %tint_symbol_1 Location 9
- OpDecorate %tint_symbol_2 Location 10
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
OpMemberDecorate %main_out 2 Offset 32
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %x_1_1_1 = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %8 = OpConstantNull %v4float
+ %x_1_2_1 = OpVariable %_ptr_Output_v4float Output %8
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%vertex_point_size = OpVariable %_ptr_Output_float Output %4
%Communicators = OpTypeStruct %float %v4float
%_ptr_Private_Communicators = OpTypePointer Private %Communicators
- %9 = OpConstantNull %Communicators
- %x_1 = OpVariable %_ptr_Private_Communicators Private %9
+ %14 = OpConstantNull %Communicators
+ %x_1 = OpVariable %_ptr_Private_Communicators Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %12
-%tint_symbol_1 = OpVariable %_ptr_Output_float Output %4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %12
+ %x_2 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %float %v4float %v4float
- %21 = OpTypeFunction %void %main_out
- %float_1 = OpConstant %float 1
+ %21 = OpTypeFunction %main_out
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%uint_1 = OpConstant %uint 1
+ %float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %v4float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- %28 = OpCompositeExtract %v4float %tint_symbol 2
- OpStore %tint_symbol_3 %28
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %29 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
+ %30 = OpLoad %float %29
+ %32 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
+ %33 = OpLoad %v4float %32
+ %34 = OpLoad %v4float %x_2
+ %35 = OpCompositeConstruct %main_out %30 %33 %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %17
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %32 = OpFunctionCall %void %main_1
- %37 = OpAccessChain %_ptr_Private_float %x_1 %uint_0
- %38 = OpLoad %float %37
- %40 = OpAccessChain %_ptr_Private_v4float %x_1 %uint_1
- %41 = OpLoad %v4float %40
- %42 = OpLoad %v4float %x_2
- %43 = OpCompositeConstruct %main_out %38 %41 %42
- %33 = OpFunctionCall %void %tint_symbol_4 %43
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %float %38 0
+ OpStore %x_1_1_1 %39
+ %40 = OpCompositeExtract %v4float %38 1
+ OpStore %x_1_2_1 %40
+ %41 = OpCompositeExtract %v4float %38 2
+ OpStore %x_2_1_1 %41
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_AccessChain.spvasm.expected.spvasm
index 2cc5536..00e04ab 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_AccessChain.spvasm.expected.spvasm
@@ -1,37 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_CopyObject.spvasm.expected.spvasm
index 2cc5536..00e04ab 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_CopyObject.spvasm.expected.spvasm
@@ -1,37 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_Direct.spvasm.expected.spvasm
index 2cc5536..00e04ab 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_I32_Load_Direct.spvasm.expected.spvasm
@@ -1,37 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 23
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %x_1 = OpVariable %_ptr_Private_int Private %4
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %7 = OpConstantNull %int
+ %x_1 = OpVariable %_ptr_Private_int Private %7
%void = OpTypeVoid
%8 = OpTypeFunction %void
+ %13 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %8
%11 = OpLabel
%12 = OpLoad %int %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %13
+ %x_1_param = OpFunctionParameter %uint
+ %16 = OpLabel
+ %17 = OpBitcast %int %x_1_param
+ OpStore %x_1 %17
+ %18 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %8
- %14 = OpLabel
- %16 = OpLoad %uint %tint_symbol
- %15 = OpBitcast %int %16
- OpStore %x_1 %15
- %17 = OpFunctionCall %void %main_1
+ %20 = OpLabel
+ %22 = OpLoad %uint %x_1_param_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_AccessChain.spvasm.expected.spvasm
index 82c6620..e04af0c 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_AccessChain.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_CopyObject.spvasm.expected.spvasm
index 82c6620..e04af0c 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_CopyObject.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_Direct.spvasm.expected.spvasm
index 82c6620..e04af0c 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleId_U32_Load_Direct.spvasm.expected.spvasm
@@ -1,35 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 16
+; Bound: 21
; Schema: 0
OpCapability Shader
OpCapability SampleRateShading
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn SampleId
+ OpDecorate %x_1_param_1 BuiltIn SampleId
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %4 = OpConstantNull %uint
- %x_1 = OpVariable %_ptr_Private_uint Private %4
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_1_param_1 = OpVariable %_ptr_Input_uint Input
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %6 = OpConstantNull %uint
+ %x_1 = OpVariable %_ptr_Private_uint Private %6
%void = OpTypeVoid
%7 = OpTypeFunction %void
+ %12 = OpTypeFunction %void %uint
%main_1 = OpFunction %void None %7
%10 = OpLabel
%11 = OpLoad %uint %x_1
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %12
+ %x_1_param = OpFunctionParameter %uint
+ %15 = OpLabel
+ OpStore %x_1 %x_1_param
+ %16 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %7
- %13 = OpLabel
- %14 = OpLoad %uint %tint_symbol
- OpStore %x_1 %14
- %15 = OpFunctionCall %void %main_1
+ %18 = OpLabel
+ %20 = OpLoad %uint %x_1_param_1
+ %19 = OpFunctionCall %void %main_inner %20
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_AccessChain.spvasm.expected.spvasm
index 50e0611..89f39fa 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_AccessChain.spvasm.expected.spvasm
@@ -1,33 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
- %int = OpTypeInt 32 1
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %10 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %10
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
+ %19 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %11
%14 = OpLabel
@@ -35,13 +38,19 @@
%18 = OpLoad %int %17
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %19
+ %x_1_param = OpFunctionParameter %uint
+ %22 = OpLabel
+ %23 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %24 = OpBitcast %int %x_1_param
+ OpStore %23 %24
+ %25 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %11
- %20 = OpLabel
- %21 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %25 = OpLoad %uint %24
- %22 = OpBitcast %int %25
- OpStore %21 %22
- %26 = OpFunctionCall %void %main_1
+ %27 = OpLabel
+ %30 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %31 = OpLoad %uint %30
+ %28 = OpFunctionCall %void %main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_CopyObject.spvasm.expected.spvasm
index 50e0611..89f39fa 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_CopyObject.spvasm.expected.spvasm
@@ -1,33 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
- %int = OpTypeInt 32 1
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %10 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %10
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
+ %19 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %11
%14 = OpLabel
@@ -35,13 +38,19 @@
%18 = OpLoad %int %17
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %19
+ %x_1_param = OpFunctionParameter %uint
+ %22 = OpLabel
+ %23 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %24 = OpBitcast %int %x_1_param
+ OpStore %23 %24
+ %25 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %11
- %20 = OpLabel
- %21 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %25 = OpLoad %uint %24
- %22 = OpBitcast %int %25
- OpStore %21 %22
- %26 = OpFunctionCall %void %main_1
+ %27 = OpLabel
+ %30 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %31 = OpLoad %uint %30
+ %28 = OpFunctionCall %void %main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_Direct.spvasm.expected.spvasm
index 50e0611..89f39fa 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_I32_Direct.spvasm.expected.spvasm
@@ -1,33 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 27
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
- %int = OpTypeInt 32 1
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %10 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %10
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
+ %19 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %11
%14 = OpLabel
@@ -35,13 +38,19 @@
%18 = OpLoad %int %17
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %19
+ %x_1_param = OpFunctionParameter %uint
+ %22 = OpLabel
+ %23 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %24 = OpBitcast %int %x_1_param
+ OpStore %23 %24
+ %25 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %11
- %20 = OpLabel
- %21 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %24 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %25 = OpLoad %uint %24
- %22 = OpBitcast %int %25
- OpStore %21 %22
- %26 = OpFunctionCall %void %main_1
+ %27 = OpLabel
+ %30 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %31 = OpLoad %uint %30
+ %28 = OpFunctionCall %void %main_inner %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_AccessChain.spvasm.expected.spvasm
index 0fa19bd..c457454 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_AccessChain.spvasm.expected.spvasm
@@ -1,31 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %8 = OpConstantNull %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_uint = OpTypePointer Private %uint
+ %18 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -33,12 +36,18 @@
%17 = OpLoad %uint %16
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %18
+ %x_1_param = OpFunctionParameter %uint
+ %21 = OpLabel
+ %22 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ OpStore %22 %x_1_param
+ %23 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %9
- %19 = OpLabel
- %20 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %22 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %23 = OpLoad %uint %22
- OpStore %20 %23
- %24 = OpFunctionCall %void %main_1
+ %25 = OpLabel
+ %28 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %29 = OpLoad %uint %28
+ %26 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_CopyObject.spvasm.expected.spvasm
index 0fa19bd..c457454 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_CopyObject.spvasm.expected.spvasm
@@ -1,31 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %8 = OpConstantNull %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_uint = OpTypePointer Private %uint
+ %18 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -33,12 +36,18 @@
%17 = OpLoad %uint %16
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %18
+ %x_1_param = OpFunctionParameter %uint
+ %21 = OpLabel
+ %22 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ OpStore %22 %x_1_param
+ %23 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %9
- %19 = OpLabel
- %20 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %22 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %23 = OpLoad %uint %22
- OpStore %20 %23
- %24 = OpFunctionCall %void %main_1
+ %25 = OpLabel
+ %28 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %29 = OpLoad %uint %28
+ %26 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_Direct.spvasm.expected.spvasm
index 0fa19bd..c457454 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_U32_Direct.spvasm.expected.spvasm
@@ -1,31 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %8 = OpConstantNull %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_uint = OpTypePointer Private %uint
+ %18 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -33,12 +36,18 @@
%17 = OpLoad %uint %16
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %18
+ %x_1_param = OpFunctionParameter %uint
+ %21 = OpLabel
+ %22 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ OpStore %22 %x_1_param
+ %23 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %9
- %19 = OpLabel
- %20 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %22 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %23 = OpLoad %uint %22
- OpStore %20 %23
- %24 = OpFunctionCall %void %main_1
+ %25 = OpLabel
+ %28 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %29 = OpLoad %uint %28
+ %26 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_WithStride.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_WithStride.spvasm.expected.spvasm
index 0fa19bd..c457454 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_WithStride.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_In_WithStride.spvasm.expected.spvasm
@@ -1,31 +1,34 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 25
+; Bound: 30
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol
+ OpEntryPoint Fragment %main "main" %x_1_param_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_param_1 "x_1_param_1"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_1_param "x_1_param"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn SampleMask
+ OpDecorate %x_1_param_1 BuiltIn SampleMask
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Input__arr_uint_uint_1 = OpTypePointer Input %_arr_uint_uint_1
-%tint_symbol = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%x_1_param_1 = OpVariable %_ptr_Input__arr_uint_uint_1 Input
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %8 = OpConstantNull %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_0 = OpConstant %int 0
%_ptr_Private_uint = OpTypePointer Private %uint
+ %18 = OpTypeFunction %void %uint
%_ptr_Input_uint = OpTypePointer Input %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -33,12 +36,18 @@
%17 = OpLoad %uint %16
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %18
+ %x_1_param = OpFunctionParameter %uint
+ %21 = OpLabel
+ %22 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ OpStore %22 %x_1_param
+ %23 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %9
- %19 = OpLabel
- %20 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %22 = OpAccessChain %_ptr_Input_uint %tint_symbol %int_0
- %23 = OpLoad %uint %22
- OpStore %20 %23
- %24 = OpFunctionCall %void %main_1
+ %25 = OpLabel
+ %28 = OpAccessChain %_ptr_Input_uint %x_1_param_1 %int_0
+ %29 = OpLoad %uint %28
+ %26 = OpFunctionCall %void %main_inner %29
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_AccessChain.spvasm.expected.spvasm
index 709f912..db222d7 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_AccessChain.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
- %11 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %11
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %11 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %11
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
%int_12 = OpConstant %int 12
%main_out = OpTypeStruct %uint
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %12
%15 = OpLabel
@@ -44,21 +43,20 @@
OpStore %18 %int_12
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %26 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %27 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %26 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %26 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %27 = OpLoad %int %26
+ %25 = OpBitcast %uint %27
+ %28 = OpCompositeConstruct %main_out %25
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %12
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %33 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %34 = OpLoad %int %33
- %32 = OpBitcast %uint %34
- %35 = OpCompositeConstruct %main_out %32
- %31 = OpFunctionCall %void %tint_symbol_2 %35
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %33 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %34 = OpCompositeExtract %uint %31 0
+ OpStore %33 %34
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_CopyObject.spvasm.expected.spvasm
index 709f912..db222d7 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_CopyObject.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
- %11 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %11
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %11 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %11
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
%int_12 = OpConstant %int 12
%main_out = OpTypeStruct %uint
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %12
%15 = OpLabel
@@ -44,21 +43,20 @@
OpStore %18 %int_12
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %26 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %27 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %26 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %26 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %27 = OpLoad %int %26
+ %25 = OpBitcast %uint %27
+ %28 = OpCompositeConstruct %main_out %25
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %12
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %33 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %34 = OpLoad %int %33
- %32 = OpBitcast %uint %34
- %35 = OpCompositeConstruct %main_out %32
- %31 = OpFunctionCall %void %tint_symbol_2 %35
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %33 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %34 = OpCompositeExtract %uint %31 0
+ OpStore %33 %34
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_Direct.spvasm.expected.spvasm
index 709f912..db222d7 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_I32_Direct.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %_arr_int_uint_1 ArrayStride 4
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
+ OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
-%_arr_int_uint_1 = OpTypeArray %int %uint_1
-%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
- %7 = OpConstantNull %_arr_int_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %7
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
- %11 = OpConstantNull %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %11
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %int = OpTypeInt 32 1
+%_arr_int_uint_1 = OpTypeArray %int %uint_1
+%_ptr_Private__arr_int_uint_1 = OpTypePointer Private %_arr_int_uint_1
+ %11 = OpConstantNull %_arr_int_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_int_uint_1 Private %11
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int_0 = OpConstant %int 0
%_ptr_Private_int = OpTypePointer Private %int
%int_12 = OpConstant %int 12
%main_out = OpTypeStruct %uint
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %12
%15 = OpLabel
@@ -44,21 +43,20 @@
OpStore %18 %int_12
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %26 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %27 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %26 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %26 = OpAccessChain %_ptr_Private_int %x_1 %int_0
+ %27 = OpLoad %int %26
+ %25 = OpBitcast %uint %27
+ %28 = OpCompositeConstruct %main_out %25
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %12
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %33 = OpAccessChain %_ptr_Private_int %x_1 %int_0
- %34 = OpLoad %int %33
- %32 = OpBitcast %uint %34
- %35 = OpCompositeConstruct %main_out %32
- %31 = OpFunctionCall %void %tint_symbol_2 %35
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %33 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %34 = OpCompositeExtract %uint %31 0
+ OpStore %33 %34
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_AccessChain.spvasm.expected.spvasm
index 5fc4f5f..8d25fb8 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_AccessChain.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
OpMemberDecorate %main_out 0 Offset 0
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -33,7 +32,7 @@
%_ptr_Private_uint = OpTypePointer Private %uint
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %uint
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -41,20 +40,19 @@
OpStore %16 %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %24 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %25 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %24 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ %24 = OpLoad %uint %23
+ %25 = OpCompositeConstruct %main_out %24
+ OpReturnValue %25
OpFunctionEnd
%main = OpFunction %void None %9
%27 = OpLabel
- %28 = OpFunctionCall %void %main_1
- %30 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %31 = OpLoad %uint %30
- %32 = OpCompositeConstruct %main_out %31
- %29 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpFunctionCall %main_out %main_inner
+ %30 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %31 = OpCompositeExtract %uint %28 0
+ OpStore %30 %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_CopyObject.spvasm.expected.spvasm
index 5fc4f5f..8d25fb8 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_CopyObject.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
OpMemberDecorate %main_out 0 Offset 0
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -33,7 +32,7 @@
%_ptr_Private_uint = OpTypePointer Private %uint
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %uint
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -41,20 +40,19 @@
OpStore %16 %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %24 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %25 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %24 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ %24 = OpLoad %uint %23
+ %25 = OpCompositeConstruct %main_out %24
+ OpReturnValue %25
OpFunctionEnd
%main = OpFunction %void None %9
%27 = OpLabel
- %28 = OpFunctionCall %void %main_1
- %30 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %31 = OpLoad %uint %30
- %32 = OpCompositeConstruct %main_out %31
- %29 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpFunctionCall %main_out %main_inner
+ %30 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %31 = OpCompositeExtract %uint %28 0
+ OpStore %30 %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_Direct.spvasm.expected.spvasm
index 5fc4f5f..8d25fb8 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_U32_Direct.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
OpMemberDecorate %main_out 0 Offset 0
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -33,7 +32,7 @@
%_ptr_Private_uint = OpTypePointer Private %uint
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %uint
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -41,20 +40,19 @@
OpStore %16 %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %24 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %25 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %24 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ %24 = OpLoad %uint %23
+ %25 = OpCompositeConstruct %main_out %24
+ OpReturnValue %25
OpFunctionEnd
%main = OpFunction %void None %9
%27 = OpLabel
- %28 = OpFunctionCall %void %main_1
- %30 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %31 = OpLoad %uint %30
- %32 = OpCompositeConstruct %main_out %31
- %29 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpFunctionCall %main_out %main_inner
+ %30 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %31 = OpCompositeExtract %uint %28 0
+ OpStore %30 %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_WithStride.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_WithStride.spvasm.expected.spvasm
index 5fc4f5f..8d25fb8 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_WithStride.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_SampleMask_Out_WithStride.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 32
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_1_1_1 "x_1_1_1"
OpName %x_1 "x_1"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpDecorate %_arr_uint_uint_1 ArrayStride 4
- OpDecorate %tint_symbol_1 BuiltIn SampleMask
+ OpDecorate %x_1_1_1 BuiltIn SampleMask
OpMemberDecorate %main_out 0 Offset 0
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
-%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
- %6 = OpConstantNull %_arr_uint_uint_1
- %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%_ptr_Output__arr_uint_uint_1 = OpTypePointer Output %_arr_uint_uint_1
-%tint_symbol_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+ %6 = OpConstantNull %_arr_uint_uint_1
+ %x_1_1_1 = OpVariable %_ptr_Output__arr_uint_uint_1 Output %6
+%_ptr_Private__arr_uint_uint_1 = OpTypePointer Private %_arr_uint_uint_1
+ %x_1 = OpVariable %_ptr_Private__arr_uint_uint_1 Private %6
%void = OpTypeVoid
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -33,7 +32,7 @@
%_ptr_Private_uint = OpTypePointer Private %uint
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %uint
- %18 = OpTypeFunction %void %main_out
+ %18 = OpTypeFunction %main_out
%_ptr_Output_uint = OpTypePointer Output %uint
%main_1 = OpFunction %void None %9
%12 = OpLabel
@@ -41,20 +40,19 @@
OpStore %16 %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %18
-%tint_symbol = OpFunctionParameter %main_out
- %22 = OpLabel
- %24 = OpAccessChain %_ptr_Output_uint %tint_symbol_1 %int_0
- %25 = OpCompositeExtract %uint %tint_symbol 0
- OpStore %24 %25
- OpReturn
+ %main_inner = OpFunction %main_out None %18
+ %21 = OpLabel
+ %22 = OpFunctionCall %void %main_1
+ %23 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
+ %24 = OpLoad %uint %23
+ %25 = OpCompositeConstruct %main_out %24
+ OpReturnValue %25
OpFunctionEnd
%main = OpFunction %void None %9
%27 = OpLabel
- %28 = OpFunctionCall %void %main_1
- %30 = OpAccessChain %_ptr_Private_uint %x_1 %int_0
- %31 = OpLoad %uint %30
- %32 = OpCompositeConstruct %main_out %31
- %29 = OpFunctionCall %void %tint_symbol_2 %32
+ %28 = OpFunctionCall %main_out %main_inner
+ %30 = OpAccessChain %_ptr_Output_uint %x_1_1_1 %int_0
+ %31 = OpCompositeExtract %uint %28 0
+ OpStore %30 %31
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_AccessChain.spvasm.expected.spvasm
index 6416131..7a2afa5 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_AccessChain.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %x_1
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %x_1
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %x_1_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_CopyObject.spvasm.expected.spvasm
index 6416131..7a2afa5 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_CopyObject.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %x_1
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %x_1
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %x_1_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_Direct.spvasm.expected.spvasm
index 6416131..7a2afa5 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_I32_Load_Direct.spvasm.expected.spvasm
@@ -5,65 +5,65 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %8 = OpConstantNull %int
- %x_4 = OpVariable %_ptr_Private_int Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %15 = OpConstantNull %int
+ %x_4 = OpVariable %_ptr_Private_int Private %15
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%18 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %23 = OpTypeFunction %void %main_out
+ %23 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %18
%21 = OpLabel
%22 = OpLoad %int %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %23
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %23
+ %x_4_param = OpFunctionParameter %uint
%27 = OpLabel
- %28 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %28
- OpReturn
+ %28 = OpBitcast %int %x_4_param
+ OpStore %x_4 %28
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %x_1
+ %31 = OpCompositeConstruct %main_out %30
+ OpReturnValue %31
OpFunctionEnd
%main = OpFunction %void None %18
- %30 = OpLabel
- OpStore %tint_pointsize %float_1
- %33 = OpLoad %uint %tint_symbol
- %32 = OpBitcast %int %33
- OpStore %x_4 %32
- %34 = OpFunctionCall %void %main_1
- %36 = OpLoad %v4float %x_1
- %37 = OpCompositeConstruct %main_out %36
- %35 = OpFunctionCall %void %tint_symbol_3 %37
+ %33 = OpLabel
+ %35 = OpLoad %uint %x_4_param_1
+ %34 = OpFunctionCall %main_out %main_inner %35
+ %36 = OpCompositeExtract %v4float %34 0
+ OpStore %x_1_1_1 %36
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_AccessChain.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_AccessChain.spvasm.expected.spvasm
index 7fb3bc7..09aa967 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_AccessChain.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_AccessChain.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %x_1
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_1
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %x_1_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_CopyObject.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_CopyObject.spvasm.expected.spvasm
index 7fb3bc7..09aa967 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_CopyObject.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_CopyObject.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %x_1
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_1
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %x_1_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_Direct.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_Direct.spvasm.expected.spvasm
index 7fb3bc7..09aa967 100644
--- a/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_Direct.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_VertexIndex_U32_Load_Direct.spvasm.expected.spvasm
@@ -5,63 +5,63 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_4_param_1 %x_1_1_1 %vertex_point_size
+ OpName %x_4_param_1 "x_4_param_1"
+ OpName %x_1_1_1 "x_1_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_4 "x_4"
OpName %x_1 "x_1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_4_param "x_4_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol BuiltIn VertexIndex
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %x_4_param_1 BuiltIn VertexIndex
+ OpDecorate %x_1_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
- %float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %8 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
- %x_1 = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
+%x_4_param_1 = OpVariable %_ptr_Input_uint Input
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+ %x_1_1_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %14 = OpConstantNull %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_1 = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %22 = OpTypeFunction %void %main_out
+ %22 = OpTypeFunction %main_out %uint
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %uint %x_4
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %22
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %22
+ %x_4_param = OpFunctionParameter %uint
%26 = OpLabel
- %27 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %27
- OpReturn
+ OpStore %x_4 %x_4_param
+ %27 = OpFunctionCall %void %main_1
+ %28 = OpLoad %v4float %x_1
+ %29 = OpCompositeConstruct %main_out %28
+ OpReturnValue %29
OpFunctionEnd
%main = OpFunction %void None %17
- %29 = OpLabel
- OpStore %tint_pointsize %float_1
- %31 = OpLoad %uint %tint_symbol
- OpStore %x_4 %31
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_1
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_3 %35
+ %31 = OpLabel
+ %33 = OpLoad %uint %x_4_param_1
+ %32 = OpFunctionCall %main_out %main_inner %33
+ %34 = OpCompositeExtract %v4float %32 0
+ OpStore %x_1_1_1 %34
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/unittest/reader/spirv/SpvParserTest_EmitFunctions_Function_EntryPoint_Vertex.spvasm.expected.spvasm b/test/unittest/reader/spirv/SpvParserTest_EmitFunctions_Function_EntryPoint_Vertex.spvasm.expected.spvasm
index 8c45878..7ca42ed 100644
--- a/test/unittest/reader/spirv/SpvParserTest_EmitFunctions_Function_EntryPoint_Vertex.spvasm.expected.spvasm
+++ b/test/unittest/reader/spirv/SpvParserTest_EmitFunctions_Function_EntryPoint_Vertex.spvasm.expected.spvasm
@@ -1,55 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 28
+; Bound: 27
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol_1
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_1_1 %vertex_point_size
+ OpName %x_2_1_1 "x_2_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_2_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol_1 BuiltIn Position
+ OpDecorate %x_2_1_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+ %5 = OpConstantNull %v4float
+ %x_2_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %15 = OpTypeFunction %void %main_out
+ %15 = OpTypeFunction %main_out
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %15
-%tint_symbol = OpFunctionParameter %main_out
- %19 = OpLabel
- %20 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %20
- OpReturn
+ %main_inner = OpFunction %main_out None %15
+ %18 = OpLabel
+ %19 = OpFunctionCall %void %main_1
+ %20 = OpLoad %v4float %x_2
+ %21 = OpCompositeConstruct %main_out %20
+ OpReturnValue %21
OpFunctionEnd
%main = OpFunction %void None %11
- %22 = OpLabel
- OpStore %tint_pointsize %float_1
- %24 = OpFunctionCall %void %main_1
- %26 = OpLoad %v4float %x_2
- %27 = OpCompositeConstruct %main_out %26
- %25 = OpFunctionCall %void %tint_symbol_2 %27
+ %23 = OpLabel
+ %24 = OpFunctionCall %main_out %main_inner
+ %25 = OpCompositeExtract %v4float %24 0
+ OpStore %x_2_1_1 %25
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/var/inferred/function-let.wgsl.expected.spvasm b/test/var/inferred/function-let.wgsl.expected.spvasm
index 4b590e8..3593a24 100644
--- a/test/var/inferred/function-let.wgsl.expected.spvasm
+++ b/test/var/inferred/function-let.wgsl.expected.spvasm
@@ -1,13 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 59
+; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %value
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
OpName %ret_i32 "ret_i32"
OpName %ret_u32 "ret_u32"
OpName %ret_f32 "ret_f32"
@@ -16,17 +16,16 @@
OpName %ret_MyStruct "ret_MyStruct"
OpName %ret_MyArray "ret_MyArray"
OpName %let_decls "let_decls"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %value Location 0
OpMemberDecorate %MyStruct 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %value = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%6 = OpTypeFunction %int
%int_1 = OpConstant %int 1
@@ -52,9 +51,9 @@
%40 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%mat3v3float = OpTypeMatrix %v3float 3
%43 = OpConstantComposite %MyStruct %float_1
- %50 = OpTypeFunction %void %v4float
+ %50 = OpTypeFunction %v4float
%float_0 = OpConstant %float 0
- %58 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+ %54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%ret_i32 = OpFunction %int None %6
%9 = OpLabel
OpReturnValue %int_1
@@ -86,14 +85,13 @@
%49 = OpFunctionCall %_arr_float_uint_10 %ret_MyArray
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %v4float
- %53 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %main_inner = OpFunction %v4float None %50
+ %52 = OpLabel
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %31
- %55 = OpLabel
- %56 = OpFunctionCall %void %tint_symbol_2 %58
+ %56 = OpLabel
+ %57 = OpFunctionCall %v4float %main_inner
+ OpStore %value %57
OpReturn
OpFunctionEnd
diff --git a/test/var/inferred/function-var.wgsl.expected.spvasm b/test/var/inferred/function-var.wgsl.expected.spvasm
index 94534db..541efd3 100644
--- a/test/var/inferred/function-var.wgsl.expected.spvasm
+++ b/test/var/inferred/function-var.wgsl.expected.spvasm
@@ -1,13 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %value
OpExecutionMode %main OriginUpperLeft
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %value "value"
OpName %ret_i32 "ret_i32"
OpName %ret_u32 "ret_u32"
OpName %ret_f32 "ret_f32"
@@ -31,17 +31,16 @@
OpName %v13 "v13"
OpName %v14 "v14"
OpName %v15 "v15"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %value Location 0
OpMemberDecorate %MyStruct 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %value = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%6 = OpTypeFunction %int
%int_1 = OpConstant %int 1
@@ -83,9 +82,9 @@
%67 = OpConstantComposite %MyStruct %float_1
%_ptr_Function_MyStruct = OpTypePointer Function %MyStruct
%_ptr_Function__arr_float_uint_10 = OpTypePointer Function %_arr_float_uint_10
- %84 = OpTypeFunction %void %v4float
+ %84 = OpTypeFunction %v4float
%float_0 = OpConstant %float 0
- %92 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+ %88 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%ret_i32 = OpFunction %int None %6
%9 = OpLabel
OpReturnValue %int_1
@@ -150,14 +149,13 @@
OpStore %v15 %82
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %84
-%tint_symbol = OpFunctionParameter %v4float
- %87 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %main_inner = OpFunction %v4float None %84
+ %86 = OpLabel
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %31
- %89 = OpLabel
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %90 = OpLabel
+ %91 = OpFunctionCall %v4float %main_inner
+ OpStore %value %91
OpReturn
OpFunctionEnd
diff --git a/test/var/inferred/global-let.wgsl.expected.spvasm b/test/var/inferred/global-let.wgsl.expected.spvasm
index ecf6016..6bbf8ad 100644
--- a/test/var/inferred/global-let.wgsl.expected.spvasm
+++ b/test/var/inferred/global-let.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %value
OpExecutionMode %main OriginUpperLeft
+ OpName %value "value"
OpName %v1 "v1"
OpName %v2 "v2"
OpName %v3 "v3"
@@ -18,18 +19,20 @@
OpMemberName %MyStruct 0 "f1"
OpName %v8 "v8"
OpName %v9 "v9"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %value Location 0
OpMemberDecorate %MyStruct 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
- OpDecorate %tint_symbol_1 Location 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+ %value = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%v1 = OpConstant %int 1
%uint = OpTypeInt 32 0
%v2 = OpConstant %uint 1
- %float = OpTypeFloat 32
%v3 = OpConstant %float 1
%v3int = OpTypeVector %int 3
%v4 = OpConstantComposite %v3int %v1 %v1 %v1
@@ -44,23 +47,18 @@
%uint_10 = OpConstant %uint 10
%_arr_float_uint_10 = OpTypeArray %float %uint_10
%v9 = OpConstantNull %_arr_float_uint_10
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %23 = OpConstantNull %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %23
- %void = OpTypeVoid
- %24 = OpTypeFunction %void %v4float
- %29 = OpTypeFunction %void
+ %24 = OpTypeFunction %v4float
%float_0 = OpConstant %float 0
- %34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %v4float
- %28 = OpLabel
- OpStore %tint_symbol_1 %tint_symbol
- OpReturn
+ %28 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+ %void = OpTypeVoid
+ %29 = OpTypeFunction %void
+ %main_inner = OpFunction %v4float None %24
+ %26 = OpLabel
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %29
- %31 = OpLabel
- %32 = OpFunctionCall %void %tint_symbol_2 %34
+ %32 = OpLabel
+ %33 = OpFunctionCall %v4float %main_inner
+ OpStore %value %33
OpReturn
OpFunctionEnd
diff --git a/test/var/initialization/workgroup/array.wgsl.expected.spvasm b/test/var/initialization/workgroup/array.wgsl.expected.spvasm
index 0633819..287835b 100644
--- a/test/var/initialization/workgroup/array.wgsl.expected.spvasm
+++ b/test/var/initialization/workgroup/array.wgsl.expected.spvasm
@@ -1,28 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %v "v"
- OpName %tint_symbol "tint_symbol"
- OpName %main "main"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %idx "idx"
+ OpName %main "main"
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpDecorate %_arr_int_uint_3 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
- %int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
+ %int = OpTypeInt 32 1
%uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
%_ptr_Workgroup__arr_int_uint_3 = OpTypePointer Workgroup %_arr_int_uint_3
%v = OpVariable %_ptr_Workgroup__arr_int_uint_3 Workgroup
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
+ %9 = OpTypeFunction %void %uint
%_ptr_Function_uint = OpTypePointer Function %uint
%16 = OpConstantNull %uint
%bool = OpTypeBool
@@ -31,11 +33,12 @@
%uint_1 = OpConstant %uint 1
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
- %main = OpFunction %void None %9
- %12 = OpLabel
+ %39 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+%local_invocation_index = OpFunctionParameter %uint
+ %13 = OpLabel
%idx = OpVariable %_ptr_Function_uint Function %16
- %13 = OpLoad %uint %tint_symbol
- OpStore %idx %13
+ OpStore %idx %local_invocation_index
OpBranch %17
%17 = OpLabel
OpLoopMerge %18 %19 None
@@ -63,3 +66,9 @@
%38 = OpLoad %_arr_int_uint_3 %v
OpReturn
OpFunctionEnd
+ %main = OpFunction %void None %39
+ %41 = OpLabel
+ %43 = OpLoad %uint %local_invocation_index_1
+ %42 = OpFunctionCall %void %main_inner %43
+ OpReturn
+ OpFunctionEnd
diff --git a/test/var/initialization/workgroup/matrix.wgsl.expected.spvasm b/test/var/initialization/workgroup/matrix.wgsl.expected.spvasm
index 93dfa40..f4f4ed4 100644
--- a/test/var/initialization/workgroup/matrix.wgsl.expected.spvasm
+++ b/test/var/initialization/workgroup/matrix.wgsl.expected.spvasm
@@ -1,33 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 19
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %v "v"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
%mat2v3float = OpTypeMatrix %v3float 2
%_ptr_Workgroup_mat2v3float = OpTypePointer Workgroup %mat2v3float
%v = OpVariable %_ptr_Workgroup_mat2v3float Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
- %13 = OpConstantNull %mat2v3float
+ %9 = OpTypeFunction %void %uint
+ %14 = OpConstantNull %mat2v3float
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
- %main = OpFunction %void None %9
- %12 = OpLabel
- OpStore %v %13
+ %20 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+%local_invocation_index = OpFunctionParameter %uint
+ %13 = OpLabel
+ OpStore %v %14
OpControlBarrier %uint_2 %uint_2 %uint_264
- %18 = OpLoad %mat2v3float %v
+ %19 = OpLoad %mat2v3float %v
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %20
+ %22 = OpLabel
+ %24 = OpLoad %uint %local_invocation_index_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/var/initialization/workgroup/scalar.wgsl.expected.spvasm b/test/var/initialization/workgroup/scalar.wgsl.expected.spvasm
index 3507eb6..5d37379 100644
--- a/test/var/initialization/workgroup/scalar.wgsl.expected.spvasm
+++ b/test/var/initialization/workgroup/scalar.wgsl.expected.spvasm
@@ -1,31 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 17
+; Bound: 23
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %v "v"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%v = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %7 = OpTypeFunction %void
- %11 = OpConstantNull %int
+ %7 = OpTypeFunction %void %uint
+ %12 = OpConstantNull %int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
- %main = OpFunction %void None %7
- %10 = OpLabel
- OpStore %v %11
+ %18 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %7
+%local_invocation_index = OpFunctionParameter %uint
+ %11 = OpLabel
+ OpStore %v %12
OpControlBarrier %uint_2 %uint_2 %uint_264
- %16 = OpLoad %int %v
+ %17 = OpLoad %int %v
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %18
+ %20 = OpLabel
+ %22 = OpLoad %uint %local_invocation_index_1
+ %21 = OpFunctionCall %void %main_inner %22
OpReturn
OpFunctionEnd
diff --git a/test/var/initialization/workgroup/struct.wgsl.expected.spvasm b/test/var/initialization/workgroup/struct.wgsl.expected.spvasm
index 9a3ca9e..5ff4989 100644
--- a/test/var/initialization/workgroup/struct.wgsl.expected.spvasm
+++ b/test/var/initialization/workgroup/struct.wgsl.expected.spvasm
@@ -1,38 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 19
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %S "S"
OpMemberName %S 0 "a"
OpMemberName %S 1 "b"
OpName %v "v"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main "main"
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%float = OpTypeFloat 32
%S = OpTypeStruct %int %float
%_ptr_Workgroup_S = OpTypePointer Workgroup %S
%v = OpVariable %_ptr_Workgroup_S Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %9 = OpTypeFunction %void
- %13 = OpConstantNull %S
+ %9 = OpTypeFunction %void %uint
+ %14 = OpConstantNull %S
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
- %main = OpFunction %void None %9
- %12 = OpLabel
- OpStore %v %13
+ %20 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %9
+%local_invocation_index = OpFunctionParameter %uint
+ %13 = OpLabel
+ OpStore %v %14
OpControlBarrier %uint_2 %uint_2 %uint_264
- %18 = OpLoad %S %v
+ %19 = OpLoad %S %v
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %20
+ %22 = OpLabel
+ %24 = OpLoad %uint %local_invocation_index_1
+ %23 = OpFunctionCall %void %main_inner %24
OpReturn
OpFunctionEnd
diff --git a/test/var/initialization/workgroup/vector.wgsl.expected.spvasm b/test/var/initialization/workgroup/vector.wgsl.expected.spvasm
index bc1cdc1..d4c5546 100644
--- a/test/var/initialization/workgroup/vector.wgsl.expected.spvasm
+++ b/test/var/initialization/workgroup/vector.wgsl.expected.spvasm
@@ -1,32 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 18
+; Bound: 24
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main"
+ OpEntryPoint GLCompute %main "main" %local_invocation_index_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %v "v"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%_ptr_Workgroup_v3int = OpTypePointer Workgroup %v3int
%v = OpVariable %_ptr_Workgroup_v3int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
- %8 = OpTypeFunction %void
- %12 = OpConstantNull %v3int
+ %8 = OpTypeFunction %void %uint
+ %13 = OpConstantNull %v3int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
- %main = OpFunction %void None %8
- %11 = OpLabel
- OpStore %v %12
+ %19 = OpTypeFunction %void
+ %main_inner = OpFunction %void None %8
+%local_invocation_index = OpFunctionParameter %uint
+ %12 = OpLabel
+ OpStore %v %13
OpControlBarrier %uint_2 %uint_2 %uint_264
- %17 = OpLoad %v3int %v
+ %18 = OpLoad %v3int %v
+ OpReturn
+ OpFunctionEnd
+ %main = OpFunction %void None %19
+ %21 = OpLabel
+ %23 = OpLoad %uint %local_invocation_index_1
+ %22 = OpFunctionCall %void %main_inner %23
OpReturn
OpFunctionEnd
diff --git a/test/var/uses/workgroup.wgsl.expected.spvasm b/test/var/uses/workgroup.wgsl.expected.spvasm
index 855e0ad..e4669d1 100644
--- a/test/var/uses/workgroup.wgsl.expected.spvasm
+++ b/test/var/uses/workgroup.wgsl.expected.spvasm
@@ -1,52 +1,59 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main1 "main1"
- OpEntryPoint GLCompute %main2 "main2"
- OpEntryPoint GLCompute %main3 "main3"
+ OpEntryPoint GLCompute %main1 "main1" %local_invocation_index_3
+ OpEntryPoint GLCompute %main2 "main2" %local_invocation_index_1_1
+ OpEntryPoint GLCompute %main3 "main3" %local_invocation_index_2_1
OpEntryPoint GLCompute %main4 "main4"
OpExecutionMode %main1 LocalSize 1 1 1
OpExecutionMode %main2 LocalSize 1 1 1
OpExecutionMode %main3 LocalSize 1 1 1
OpExecutionMode %main4 LocalSize 1 1 1
+ OpName %local_invocation_index_3 "local_invocation_index_3"
+ OpName %local_invocation_index_1_1 "local_invocation_index_1_1"
+ OpName %local_invocation_index_2_1 "local_invocation_index_2_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %uses_a "uses_a"
OpName %uses_b "uses_b"
OpName %uses_a_and_b "uses_a_and_b"
OpName %no_uses "no_uses"
OpName %outer "outer"
+ OpName %main1_inner "main1_inner"
+ OpName %local_invocation_index "local_invocation_index"
OpName %main1 "main1"
+ OpName %main2_inner "main2_inner"
+ OpName %local_invocation_index_1 "local_invocation_index_1"
OpName %main2 "main2"
+ OpName %main3_inner "main3_inner"
+ OpName %local_invocation_index_2 "local_invocation_index_2"
OpName %main3 "main3"
OpName %main4 "main4"
- OpDecorate %tint_symbol BuiltIn LocalInvocationIndex
- OpDecorate %tint_symbol_1 BuiltIn LocalInvocationIndex
- OpDecorate %tint_symbol_2 BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_3 BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_1_1 BuiltIn LocalInvocationIndex
+ OpDecorate %local_invocation_index_2_1 BuiltIn LocalInvocationIndex
+ %uint = OpTypeInt 32 0
+%_ptr_Input_uint = OpTypePointer Input %uint
+%local_invocation_index_3 = OpVariable %_ptr_Input_uint Input
+%local_invocation_index_1_1 = OpVariable %_ptr_Input_uint Input
+%local_invocation_index_2_1 = OpVariable %_ptr_Input_uint Input
%int = OpTypeInt 32 1
%_ptr_Workgroup_int = OpTypePointer Workgroup %int
%a = OpVariable %_ptr_Workgroup_int Workgroup
%b = OpVariable %_ptr_Workgroup_int Workgroup
%c = OpVariable %_ptr_Workgroup_int Workgroup
- %uint = OpTypeInt 32 0
-%_ptr_Input_uint = OpTypePointer Input %uint
-%tint_symbol = OpVariable %_ptr_Input_uint Input
-%tint_symbol_1 = OpVariable %_ptr_Input_uint Input
-%tint_symbol_2 = OpVariable %_ptr_Input_uint Input
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
%int_0 = OpConstant %int 0
- %37 = OpConstantNull %int
+ %35 = OpTypeFunction %void %uint
+ %39 = OpConstantNull %int
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%int_42 = OpConstant %int 42
@@ -84,33 +91,54 @@
%34 = OpFunctionCall %void %no_uses
OpReturn
OpFunctionEnd
- %main1 = OpFunction %void None %11
- %36 = OpLabel
- OpStore %a %37
+%main1_inner = OpFunction %void None %35
+%local_invocation_index = OpFunctionParameter %uint
+ %38 = OpLabel
+ OpStore %a %39
OpControlBarrier %uint_2 %uint_2 %uint_264
OpStore %a %int_42
- %42 = OpFunctionCall %void %uses_a
+ %44 = OpFunctionCall %void %uses_a
+ OpReturn
+ OpFunctionEnd
+ %main1 = OpFunction %void None %11
+ %46 = OpLabel
+ %48 = OpLoad %uint %local_invocation_index_3
+ %47 = OpFunctionCall %void %main1_inner %48
+ OpReturn
+ OpFunctionEnd
+%main2_inner = OpFunction %void None %35
+%local_invocation_index_1 = OpFunctionParameter %uint
+ %51 = OpLabel
+ OpStore %b %39
+ OpControlBarrier %uint_2 %uint_2 %uint_264
+ OpStore %b %int_7
+ %54 = OpFunctionCall %void %uses_b
OpReturn
OpFunctionEnd
%main2 = OpFunction %void None %11
- %44 = OpLabel
- OpStore %b %37
+ %56 = OpLabel
+ %58 = OpLoad %uint %local_invocation_index_1_1
+ %57 = OpFunctionCall %void %main2_inner %58
+ OpReturn
+ OpFunctionEnd
+%main3_inner = OpFunction %void None %35
+%local_invocation_index_2 = OpFunctionParameter %uint
+ %61 = OpLabel
+ OpStore %a %39
+ OpStore %b %39
OpControlBarrier %uint_2 %uint_2 %uint_264
- OpStore %b %int_7
- %47 = OpFunctionCall %void %uses_b
+ %63 = OpFunctionCall %void %outer
+ %64 = OpFunctionCall %void %no_uses
OpReturn
OpFunctionEnd
%main3 = OpFunction %void None %11
- %49 = OpLabel
- OpStore %a %37
- OpStore %b %37
- OpControlBarrier %uint_2 %uint_2 %uint_264
- %51 = OpFunctionCall %void %outer
- %52 = OpFunctionCall %void %no_uses
+ %66 = OpLabel
+ %68 = OpLoad %uint %local_invocation_index_2_1
+ %67 = OpFunctionCall %void %main3_inner %68
OpReturn
OpFunctionEnd
%main4 = OpFunction %void None %11
- %54 = OpLabel
- %55 = OpFunctionCall %void %no_uses
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %no_uses
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.spvasm.expected.spvasm b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.spvasm.expected.spvasm
index a0529db..d9ecccd 100644
--- a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.spvasm.expected.spvasm
@@ -5,60 +5,60 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %frag_color_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %frag_color "frag_color"
OpName %block0 "block0"
OpMemberName %block0 0 "in_color"
OpName %x_8 "x_8"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "frag_color_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %block0 Block
OpMemberDecorate %block0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %frag_color = OpVariable %_ptr_Private_v4float Private %8
+ %position = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%block0 = OpTypeStruct %v4float
%_ptr_Uniform_block0 = OpTypePointer Uniform %block0
%x_8 = OpVariable %_ptr_Uniform_block0 Uniform
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %8
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
%main_out = OpTypeStruct %v4float %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %19
%22 = OpLabel
@@ -69,24 +69,24 @@
OpStore %frag_color %28
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %29
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %29
+%position_param = OpFunctionParameter %v4float
%33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %34
- %35 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %35
- OpReturn
+ OpStore %position %position_param
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %gl_Position
+ %36 = OpLoad %v4float %frag_color
+ %37 = OpCompositeConstruct %main_out %35 %36
+ OpReturnValue %37
OpFunctionEnd
%main = OpFunction %void None %19
- %37 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpLoad %v4float %tint_symbol
- OpStore %position %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %gl_Position
- %43 = OpLoad %v4float %frag_color
- %44 = OpCompositeConstruct %main_out %42 %43
- %41 = OpFunctionCall %void %tint_symbol_4 %44
+ %39 = OpLabel
+ %41 = OpLoad %v4float %position_param_1
+ %40 = OpFunctionCall %main_out %main_inner %41
+ %42 = OpCompositeExtract %v4float %40 0
+ OpStore %gl_Position_1 %42
+ %43 = OpCompositeExtract %v4float %40 1
+ OpStore %frag_color_1_1 %43
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.wgsl.expected.spvasm b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.wgsl.expected.spvasm
index a0529db..d9ecccd 100644
--- a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/0.wgsl.expected.spvasm
@@ -5,60 +5,60 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %frag_color_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %frag_color "frag_color"
OpName %block0 "block0"
OpMemberName %block0 0 "in_color"
OpName %x_8 "x_8"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "frag_color_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpDecorate %block0 Block
OpMemberDecorate %block0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %frag_color = OpVariable %_ptr_Private_v4float Private %8
+ %position = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%block0 = OpTypeStruct %v4float
%_ptr_Uniform_block0 = OpTypePointer Uniform %block0
%x_8 = OpVariable %_ptr_Uniform_block0 Uniform
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %8
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
%main_out = OpTypeStruct %v4float %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %19
%22 = OpLabel
@@ -69,24 +69,24 @@
OpStore %frag_color %28
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %29
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %29
+%position_param = OpFunctionParameter %v4float
%33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %34
- %35 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %35
- OpReturn
+ OpStore %position %position_param
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %gl_Position
+ %36 = OpLoad %v4float %frag_color
+ %37 = OpCompositeConstruct %main_out %35 %36
+ OpReturnValue %37
OpFunctionEnd
%main = OpFunction %void None %19
- %37 = OpLabel
- OpStore %tint_pointsize %float_1
- %39 = OpLoad %v4float %tint_symbol
- OpStore %position %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %gl_Position
- %43 = OpLoad %v4float %frag_color
- %44 = OpCompositeConstruct %main_out %42 %43
- %41 = OpFunctionCall %void %tint_symbol_4 %44
+ %39 = OpLabel
+ %41 = OpLoad %v4float %position_param_1
+ %40 = OpFunctionCall %main_out %main_inner %41
+ %42 = OpCompositeExtract %v4float %40 0
+ OpStore %gl_Position_1 %42
+ %43 = OpCompositeExtract %v4float %40 1
+ OpStore %frag_color_1_1 %43
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.spvasm.expected.spvasm b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.spvasm.expected.spvasm
index dd25b21..227546a 100644
--- a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.spvasm.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %final_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %final_color_1_1 "final_color_1_1"
OpName %final_color "final_color"
OpName %frag_color "frag_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "final_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 0
+ OpDecorate %final_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%final_color = OpVariable %_ptr_Private_v4float Private %5
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%final_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%final_color = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %frag_color
OpStore %final_color %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%frag_color_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %final_color
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %final_color
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %frag_color_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %final_color_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.wgsl.expected.spvasm b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.wgsl.expected.spvasm
index dd25b21..227546a 100644
--- a/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/binding_model/dynamic_offset/shader_reuse_differing_layout_graphics/1.wgsl.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %final_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %final_color_1_1 "final_color_1_1"
OpName %final_color "final_color"
OpName %frag_color "frag_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "final_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 0
+ OpDecorate %final_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%final_color = OpVariable %_ptr_Private_v4float Private %5
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%final_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%final_color = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %frag_color
OpStore %final_color %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%frag_color_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %final_color
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %final_color
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %frag_color_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %final_color_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/combined_operations/negintdivand/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/combined_operations/negintdivand/0-opt.spvasm.expected.spvasm
index ee8e353..3c0d01a 100644
--- a/test/vk-gl-cts/combined_operations/negintdivand/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/combined_operations/negintdivand/0-opt.spvasm.expected.spvasm
@@ -5,47 +5,47 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %frag_color_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "frag_color_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 1
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %frag_color_1_1 Location 1
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %frag_color = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%16 = OpTypeFunction %void
%float_0_5 = OpConstant %float 0.5
%main_out = OpTypeStruct %v4float %v4float
- %24 = OpTypeFunction %void %main_out
+ %24 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %16
%19 = OpLabel
@@ -56,24 +56,24 @@
OpStore %frag_color %23
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %24
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %24
+%position_param = OpFunctionParameter %v4float
%28 = OpLabel
- %29 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %29
- %30 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %30
- OpReturn
+ OpStore %position %position_param
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %gl_Position
+ %31 = OpLoad %v4float %frag_color
+ %32 = OpCompositeConstruct %main_out %30 %31
+ OpReturnValue %32
OpFunctionEnd
%main = OpFunction %void None %16
- %32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpLoad %v4float %tint_symbol
- OpStore %position %34
- %35 = OpFunctionCall %void %main_1
- %37 = OpLoad %v4float %gl_Position
- %38 = OpLoad %v4float %frag_color
- %39 = OpCompositeConstruct %main_out %37 %38
- %36 = OpFunctionCall %void %tint_symbol_4 %39
+ %34 = OpLabel
+ %36 = OpLoad %v4float %position_param_1
+ %35 = OpFunctionCall %main_out %main_inner %36
+ %37 = OpCompositeExtract %v4float %35 0
+ OpStore %gl_Position_1 %37
+ %38 = OpCompositeExtract %v4float %35 1
+ OpStore %frag_color_1_1 %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/combined_operations/negintdivand/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/combined_operations/negintdivand/0-opt.wgsl.expected.spvasm
index ee8e353..3c0d01a 100644
--- a/test/vk-gl-cts/combined_operations/negintdivand/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/combined_operations/negintdivand/0-opt.wgsl.expected.spvasm
@@ -5,47 +5,47 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %frag_color_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "frag_color_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 1
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %frag_color_1_1 Location 1
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %frag_color = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%16 = OpTypeFunction %void
%float_0_5 = OpConstant %float 0.5
%main_out = OpTypeStruct %v4float %v4float
- %24 = OpTypeFunction %void %main_out
+ %24 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %16
%19 = OpLabel
@@ -56,24 +56,24 @@
OpStore %frag_color %23
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %24
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %24
+%position_param = OpFunctionParameter %v4float
%28 = OpLabel
- %29 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %29
- %30 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %30
- OpReturn
+ OpStore %position %position_param
+ %29 = OpFunctionCall %void %main_1
+ %30 = OpLoad %v4float %gl_Position
+ %31 = OpLoad %v4float %frag_color
+ %32 = OpCompositeConstruct %main_out %30 %31
+ OpReturnValue %32
OpFunctionEnd
%main = OpFunction %void None %16
- %32 = OpLabel
- OpStore %tint_pointsize %float_1
- %34 = OpLoad %v4float %tint_symbol
- OpStore %position %34
- %35 = OpFunctionCall %void %main_1
- %37 = OpLoad %v4float %gl_Position
- %38 = OpLoad %v4float %frag_color
- %39 = OpCompositeConstruct %main_out %37 %38
- %36 = OpFunctionCall %void %tint_symbol_4 %39
+ %34 = OpLabel
+ %36 = OpLoad %v4float %position_param_1
+ %35 = OpFunctionCall %main_out %main_inner %36
+ %37 = OpCompositeExtract %v4float %35 0
+ OpStore %gl_Position_1 %37
+ %38 = OpCompositeExtract %v4float %35 1
+ OpStore %frag_color_1_1 %38
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/combined_operations/negintdivand/1.spvasm.expected.spvasm b/test/vk-gl-cts/combined_operations/negintdivand/1.spvasm.expected.spvasm
index 6d6715e..a53c84d 100644
--- a/test/vk-gl-cts/combined_operations/negintdivand/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/combined_operations/negintdivand/1.spvasm.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %frag_color "frag_color"
OpName %color_out "color_out"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %iv "iv"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 1
+ OpDecorate %color_out_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
- %color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -50,7 +50,7 @@
%44 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%45 = OpConstantComposite %v4float %float_0 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %46 = OpTypeFunction %void %main_out
+ %46 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%iv = OpVariable %_ptr_Function_v2int Function %19
@@ -77,20 +77,20 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %46
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %46
+%frag_color_param = OpFunctionParameter %v4float
%50 = OpLabel
- %51 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %51
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %color_out
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %11
- %53 = OpLabel
- %54 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %54
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %color_out
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_3 %58
+ %55 = OpLabel
+ %57 = OpLoad %v4float %frag_color_param_1
+ %56 = OpFunctionCall %main_out %main_inner %57
+ %58 = OpCompositeExtract %v4float %56 0
+ OpStore %color_out_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/combined_operations/negintdivand/1.wgsl.expected.spvasm b/test/vk-gl-cts/combined_operations/negintdivand/1.wgsl.expected.spvasm
index 6d6715e..a53c84d 100644
--- a/test/vk-gl-cts/combined_operations/negintdivand/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/combined_operations/negintdivand/1.wgsl.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %frag_color "frag_color"
OpName %color_out "color_out"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %iv "iv"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 1
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 1
+ OpDecorate %color_out_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
- %color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -50,7 +50,7 @@
%44 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%45 = OpConstantComposite %v4float %float_0 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %46 = OpTypeFunction %void %main_out
+ %46 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%iv = OpVariable %_ptr_Function_v2int Function %19
@@ -77,20 +77,20 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %46
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %46
+%frag_color_param = OpFunctionParameter %v4float
%50 = OpLabel
- %51 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %51
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %color_out
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %11
- %53 = OpLabel
- %54 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %54
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %color_out
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_3 %58
+ %55 = OpLabel
+ %57 = OpLoad %v4float %frag_color_param_1
+ %56 = OpFunctionCall %main_out %main_inner %57
+ %58 = OpCompositeExtract %v4float %56 0
+ OpStore %color_out_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.spvasm.expected.spvasm
index ee25aef..fbf1c80 100644
--- a/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
%21 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -39,7 +38,7 @@
%float_0 = OpConstant %float 0
%29 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %30 = OpTypeFunction %void %main_out
+ %30 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x = OpVariable %_ptr_Function_int Function %15
@@ -56,18 +55,17 @@
OpStore %x_GLF_color %29
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %main_out
- %34 = OpLabel
- %35 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %35
- OpReturn
+ %main_inner = OpFunction %main_out None %30
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %x_GLF_color
+ %36 = OpCompositeConstruct %main_out %35
+ OpReturnValue %36
OpFunctionEnd
%main = OpFunction %void None %8
- %37 = OpLabel
- %38 = OpFunctionCall %void %main_1
- %40 = OpLoad %v4float %x_GLF_color
- %41 = OpCompositeConstruct %main_out %40
- %39 = OpFunctionCall %void %tint_symbol_2 %41
+ %38 = OpLabel
+ %39 = OpFunctionCall %main_out %main_inner
+ %40 = OpCompositeExtract %v4float %39 0
+ OpStore %x_GLF_color_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.wgsl.expected.spvasm
index ee25aef..fbf1c80 100644
--- a/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/access-new-vector-inside-if-condition/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
%21 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -39,7 +38,7 @@
%float_0 = OpConstant %float 0
%29 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %30 = OpTypeFunction %void %main_out
+ %30 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x = OpVariable %_ptr_Function_int Function %15
@@ -56,18 +55,17 @@
OpStore %x_GLF_color %29
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %main_out
- %34 = OpLabel
- %35 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %35
- OpReturn
+ %main_inner = OpFunction %main_out None %30
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %x_GLF_color
+ %36 = OpCompositeConstruct %main_out %35
+ OpReturnValue %36
OpFunctionEnd
%main = OpFunction %void None %8
- %37 = OpLabel
- %38 = OpFunctionCall %void %main_1
- %40 = OpLoad %v4float %x_GLF_color
- %41 = OpCompositeConstruct %main_out %40
- %39 = OpFunctionCall %void %tint_symbol_2 %41
+ %38 = OpLabel
+ %39 = OpFunctionCall %main_out %main_inner
+ %40 = OpCompositeExtract %v4float %39 0
+ OpStore %x_GLF_color_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.spvasm.expected.spvasm
index 18ca5d5..9670704 100644
--- a/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 177
+; Bound: 176
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_24 "x_24"
OpName %x_68 "x_68"
@@ -33,8 +33,7 @@
OpName %x_93_phi "x_93_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %binarySearch_struct_tmp_struct_i1_1_1_ "binarySearch_struct_tmp_struct_i1_1_1_"
OpName %obj "obj"
@@ -48,26 +47,26 @@
OpName %x_15_phi "x_15_phi"
OpName %x_27_phi "x_27_phi"
OpName %x_128_phi "x_128_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %tmp_struct 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -103,9 +102,9 @@
%103 = OpConstantComposite %v2float %float_1 %float_1
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %123 = OpTypeFunction %void %main_out
+ %123 = OpTypeFunction %main_out
%_ptr_Function_tmp_struct = OpTypePointer Function %tmp_struct
- %135 = OpTypeFunction %int %_ptr_Function_tmp_struct
+ %134 = OpTypeFunction %int %_ptr_Function_tmp_struct
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_24 = OpVariable %_ptr_Function__arr_int_uint_1 Function %22
@@ -248,24 +247,23 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %123
-%tint_symbol = OpFunctionParameter %main_out
- %127 = OpLabel
- %128 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %128
- OpReturn
+ %main_inner = OpFunction %main_out None %123
+ %126 = OpLabel
+ %127 = OpFunctionCall %void %main_1
+ %128 = OpLoad %v4float %x_GLF_color
+ %129 = OpCompositeConstruct %main_out %128
+ OpReturnValue %129
OpFunctionEnd
%main = OpFunction %void None %12
- %130 = OpLabel
- %131 = OpFunctionCall %void %main_1
- %133 = OpLoad %v4float %x_GLF_color
- %134 = OpCompositeConstruct %main_out %133
- %132 = OpFunctionCall %void %tint_symbol_2 %134
+ %131 = OpLabel
+ %132 = OpFunctionCall %main_out %main_inner
+ %133 = OpCompositeExtract %v4float %132 0
+ OpStore %x_GLF_color_1_1 %133
OpReturn
OpFunctionEnd
-%binarySearch_struct_tmp_struct_i1_1_1_ = OpFunction %int None %135
+%binarySearch_struct_tmp_struct_i1_1_1_ = OpFunction %int None %134
%obj = OpFunctionParameter %_ptr_Function_tmp_struct
- %139 = OpLabel
+ %138 = OpLabel
%x_112 = OpVariable %_ptr_Function_bool Function %27
%x_16 = OpVariable %_ptr_Function_int Function %30
%one = OpVariable %_ptr_Function_int Function %30
@@ -278,68 +276,68 @@
%x_128_phi = OpVariable %_ptr_Function_bool Function %27
OpStore %x_112 %false
OpStore %x_114_phi %false
- OpBranch %147
- %147 = OpLabel
- OpLoopMerge %148 %149 None
- OpBranch %150
- %150 = OpLabel
- %154 = OpLoad %bool %x_114_phi
+ OpBranch %146
+ %146 = OpLabel
+ OpLoopMerge %147 %148 None
+ OpBranch %149
+ %149 = OpLabel
+ %153 = OpLoad %bool %x_114_phi
OpStore %one %int_1
OpStore %x_15_phi %int_1
- OpBranch %155
- %155 = OpLabel
- OpLoopMerge %156 %157 None
- OpBranch %158
- %158 = OpLabel
- %159 = OpLoad %int %x_15_phi
+ OpBranch %154
+ %154 = OpLabel
+ OpLoopMerge %155 %156 None
+ OpBranch %157
+ %157 = OpLabel
+ %158 = OpLoad %int %x_15_phi
OpStore %x_27_phi %int_0
- OpStore %x_128_phi %154
- %160 = OpSGreaterThan %bool %159 %int_10
- OpSelectionMerge %161 None
- OpBranchConditional %160 %162 %163
- %162 = OpLabel
- OpBranch %161
- %163 = OpLabel
- OpBranch %156
+ OpStore %x_128_phi %153
+ %159 = OpSGreaterThan %bool %158 %int_10
+ OpSelectionMerge %160 None
+ OpBranchConditional %159 %161 %162
%161 = OpLabel
- %164 = OpISub %int %159 %int_1
- OpStore %zero %164
- %166 = OpAccessChain %_ptr_Function_int %obj %uint_0 %164
- %167 = OpLoad %int %166
- %168 = OpIEqual %bool %167 %int_1
- OpSelectionMerge %169 None
- OpBranchConditional %168 %170 %169
- %170 = OpLabel
+ OpBranch %160
+ %162 = OpLabel
+ OpBranch %155
+ %160 = OpLabel
+ %163 = OpISub %int %158 %int_1
+ OpStore %zero %163
+ %165 = OpAccessChain %_ptr_Function_int %obj %uint_0 %163
+ %166 = OpLoad %int %165
+ %167 = OpIEqual %bool %166 %int_1
+ OpSelectionMerge %168 None
+ OpBranchConditional %167 %169 %168
+ %169 = OpLabel
OpStore %x_112 %true
OpStore %x_16 %int_1
OpStore %x_27_phi %int_1
OpStore %x_128_phi %true
- OpBranch %156
- %169 = OpLabel
- OpStore %one %164
- OpBranch %157
- %157 = OpLabel
- OpStore %x_15_phi %164
OpBranch %155
+ %168 = OpLabel
+ OpStore %one %163
+ OpBranch %156
%156 = OpLabel
- %171 = OpLoad %int %x_27_phi
- OpStore %x_27 %171
- %172 = OpLoad %bool %x_128_phi
- %173 = OpLoad %int %x_27
- OpStore %x_28_phi %173
- OpSelectionMerge %174 None
- OpBranchConditional %172 %175 %174
- %175 = OpLabel
- OpBranch %148
+ OpStore %x_15_phi %163
+ OpBranch %154
+ %155 = OpLabel
+ %170 = OpLoad %int %x_27_phi
+ OpStore %x_27 %170
+ %171 = OpLoad %bool %x_128_phi
+ %172 = OpLoad %int %x_27
+ OpStore %x_28_phi %172
+ OpSelectionMerge %173 None
+ OpBranchConditional %171 %174 %173
%174 = OpLabel
+ OpBranch %147
+ %173 = OpLabel
OpStore %x_112 %true
OpStore %x_16 %int_n1
OpStore %x_28_phi %int_n1
- OpBranch %148
- %149 = OpLabel
- OpStore %x_114_phi %false
OpBranch %147
%148 = OpLabel
- %176 = OpLoad %int %x_28_phi
- OpReturnValue %176
+ OpStore %x_114_phi %false
+ OpBranch %146
+ %147 = OpLabel
+ %175 = OpLoad %int %x_28_phi
+ OpReturnValue %175
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.wgsl.expected.spvasm
index 18ca5d5..9670704 100644
--- a/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/always-discarding-function/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 177
+; Bound: 176
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_24 "x_24"
OpName %x_68 "x_68"
@@ -33,8 +33,7 @@
OpName %x_93_phi "x_93_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %binarySearch_struct_tmp_struct_i1_1_1_ "binarySearch_struct_tmp_struct_i1_1_1_"
OpName %obj "obj"
@@ -48,26 +47,26 @@
OpName %x_15_phi "x_15_phi"
OpName %x_27_phi "x_27_phi"
OpName %x_128_phi "x_128_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %tmp_struct 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -103,9 +102,9 @@
%103 = OpConstantComposite %v2float %float_1 %float_1
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %123 = OpTypeFunction %void %main_out
+ %123 = OpTypeFunction %main_out
%_ptr_Function_tmp_struct = OpTypePointer Function %tmp_struct
- %135 = OpTypeFunction %int %_ptr_Function_tmp_struct
+ %134 = OpTypeFunction %int %_ptr_Function_tmp_struct
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_24 = OpVariable %_ptr_Function__arr_int_uint_1 Function %22
@@ -248,24 +247,23 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %123
-%tint_symbol = OpFunctionParameter %main_out
- %127 = OpLabel
- %128 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %128
- OpReturn
+ %main_inner = OpFunction %main_out None %123
+ %126 = OpLabel
+ %127 = OpFunctionCall %void %main_1
+ %128 = OpLoad %v4float %x_GLF_color
+ %129 = OpCompositeConstruct %main_out %128
+ OpReturnValue %129
OpFunctionEnd
%main = OpFunction %void None %12
- %130 = OpLabel
- %131 = OpFunctionCall %void %main_1
- %133 = OpLoad %v4float %x_GLF_color
- %134 = OpCompositeConstruct %main_out %133
- %132 = OpFunctionCall %void %tint_symbol_2 %134
+ %131 = OpLabel
+ %132 = OpFunctionCall %main_out %main_inner
+ %133 = OpCompositeExtract %v4float %132 0
+ OpStore %x_GLF_color_1_1 %133
OpReturn
OpFunctionEnd
-%binarySearch_struct_tmp_struct_i1_1_1_ = OpFunction %int None %135
+%binarySearch_struct_tmp_struct_i1_1_1_ = OpFunction %int None %134
%obj = OpFunctionParameter %_ptr_Function_tmp_struct
- %139 = OpLabel
+ %138 = OpLabel
%x_112 = OpVariable %_ptr_Function_bool Function %27
%x_16 = OpVariable %_ptr_Function_int Function %30
%one = OpVariable %_ptr_Function_int Function %30
@@ -278,68 +276,68 @@
%x_128_phi = OpVariable %_ptr_Function_bool Function %27
OpStore %x_112 %false
OpStore %x_114_phi %false
- OpBranch %147
- %147 = OpLabel
- OpLoopMerge %148 %149 None
- OpBranch %150
- %150 = OpLabel
- %154 = OpLoad %bool %x_114_phi
+ OpBranch %146
+ %146 = OpLabel
+ OpLoopMerge %147 %148 None
+ OpBranch %149
+ %149 = OpLabel
+ %153 = OpLoad %bool %x_114_phi
OpStore %one %int_1
OpStore %x_15_phi %int_1
- OpBranch %155
- %155 = OpLabel
- OpLoopMerge %156 %157 None
- OpBranch %158
- %158 = OpLabel
- %159 = OpLoad %int %x_15_phi
+ OpBranch %154
+ %154 = OpLabel
+ OpLoopMerge %155 %156 None
+ OpBranch %157
+ %157 = OpLabel
+ %158 = OpLoad %int %x_15_phi
OpStore %x_27_phi %int_0
- OpStore %x_128_phi %154
- %160 = OpSGreaterThan %bool %159 %int_10
- OpSelectionMerge %161 None
- OpBranchConditional %160 %162 %163
- %162 = OpLabel
- OpBranch %161
- %163 = OpLabel
- OpBranch %156
+ OpStore %x_128_phi %153
+ %159 = OpSGreaterThan %bool %158 %int_10
+ OpSelectionMerge %160 None
+ OpBranchConditional %159 %161 %162
%161 = OpLabel
- %164 = OpISub %int %159 %int_1
- OpStore %zero %164
- %166 = OpAccessChain %_ptr_Function_int %obj %uint_0 %164
- %167 = OpLoad %int %166
- %168 = OpIEqual %bool %167 %int_1
- OpSelectionMerge %169 None
- OpBranchConditional %168 %170 %169
- %170 = OpLabel
+ OpBranch %160
+ %162 = OpLabel
+ OpBranch %155
+ %160 = OpLabel
+ %163 = OpISub %int %158 %int_1
+ OpStore %zero %163
+ %165 = OpAccessChain %_ptr_Function_int %obj %uint_0 %163
+ %166 = OpLoad %int %165
+ %167 = OpIEqual %bool %166 %int_1
+ OpSelectionMerge %168 None
+ OpBranchConditional %167 %169 %168
+ %169 = OpLabel
OpStore %x_112 %true
OpStore %x_16 %int_1
OpStore %x_27_phi %int_1
OpStore %x_128_phi %true
- OpBranch %156
- %169 = OpLabel
- OpStore %one %164
- OpBranch %157
- %157 = OpLabel
- OpStore %x_15_phi %164
OpBranch %155
+ %168 = OpLabel
+ OpStore %one %163
+ OpBranch %156
%156 = OpLabel
- %171 = OpLoad %int %x_27_phi
- OpStore %x_27 %171
- %172 = OpLoad %bool %x_128_phi
- %173 = OpLoad %int %x_27
- OpStore %x_28_phi %173
- OpSelectionMerge %174 None
- OpBranchConditional %172 %175 %174
- %175 = OpLabel
- OpBranch %148
+ OpStore %x_15_phi %163
+ OpBranch %154
+ %155 = OpLabel
+ %170 = OpLoad %int %x_27_phi
+ OpStore %x_27 %170
+ %171 = OpLoad %bool %x_128_phi
+ %172 = OpLoad %int %x_27
+ OpStore %x_28_phi %172
+ OpSelectionMerge %173 None
+ OpBranchConditional %171 %174 %173
%174 = OpLabel
+ OpBranch %147
+ %173 = OpLabel
OpStore %x_112 %true
OpStore %x_16 %int_n1
OpStore %x_28_phi %int_n1
- OpBranch %148
- %149 = OpLabel
- OpStore %x_114_phi %false
OpBranch %147
%148 = OpLabel
- %176 = OpLoad %int %x_28_phi
- OpReturnValue %176
+ OpStore %x_114_phi %false
+ OpBranch %146
+ %147 = OpLabel
+ %175 = OpLoad %int %x_28_phi
+ OpReturnValue %175
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.spvasm.expected.spvasm
index 7a0c9e6..cb0fe80 100644
--- a/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 235
+; Bound: 234
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -14,7 +15,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_30 "x_30"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -41,9 +41,9 @@
OpName %i_2 "i_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -51,27 +51,26 @@
OpDecorate %x_30 NonWritable
OpDecorate %x_30 DescriptorSet 0
OpDecorate %x_30 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_30 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%20 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -94,7 +93,7 @@
%221 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%222 = OpConstantComposite %v4float %float_0 %float_1 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %223 = OpTypeFunction %void %main_out
+ %223 = OpTypeFunction %main_out
%swap_i1_i1_ = OpFunction %void None %20
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -350,18 +349,17 @@
%216 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %223
-%tint_symbol = OpFunctionParameter %main_out
- %227 = OpLabel
- %228 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %228
- OpReturn
+ %main_inner = OpFunction %main_out None %223
+ %226 = OpLabel
+ %227 = OpFunctionCall %void %main_1
+ %228 = OpLoad %v4float %x_GLF_color
+ %229 = OpCompositeConstruct %main_out %228
+ OpReturnValue %229
OpFunctionEnd
%main = OpFunction %void None %106
- %230 = OpLabel
- %231 = OpFunctionCall %void %main_1
- %233 = OpLoad %v4float %x_GLF_color
- %234 = OpCompositeConstruct %main_out %233
- %232 = OpFunctionCall %void %tint_symbol_2 %234
+ %231 = OpLabel
+ %232 = OpFunctionCall %main_out %main_inner
+ %233 = OpCompositeExtract %v4float %232 0
+ OpStore %x_GLF_color_1_1 %233
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.wgsl.expected.spvasm
index 7a0c9e6..cb0fe80 100644
--- a/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/arr-value-set-to-arr-value-squared/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 235
+; Bound: 234
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -14,7 +15,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_30 "x_30"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -41,9 +41,9 @@
OpName %i_2 "i_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -51,27 +51,26 @@
OpDecorate %x_30 NonWritable
OpDecorate %x_30 DescriptorSet 0
OpDecorate %x_30 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_30 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%20 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -94,7 +93,7 @@
%221 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%222 = OpConstantComposite %v4float %float_0 %float_1 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %223 = OpTypeFunction %void %main_out
+ %223 = OpTypeFunction %main_out
%swap_i1_i1_ = OpFunction %void None %20
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -350,18 +349,17 @@
%216 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %223
-%tint_symbol = OpFunctionParameter %main_out
- %227 = OpLabel
- %228 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %228
- OpReturn
+ %main_inner = OpFunction %main_out None %223
+ %226 = OpLabel
+ %227 = OpFunctionCall %void %main_1
+ %228 = OpLoad %v4float %x_GLF_color
+ %229 = OpCompositeConstruct %main_out %228
+ OpReturnValue %229
OpFunctionEnd
%main = OpFunction %void None %106
- %230 = OpLabel
- %231 = OpFunctionCall %void %main_1
- %233 = OpLoad %v4float %x_GLF_color
- %234 = OpCompositeConstruct %main_out %233
- %232 = OpFunctionCall %void %tint_symbol_2 %234
+ %231 = OpLabel
+ %232 = OpFunctionCall %main_out %main_inner
+ %233 = OpCompositeExtract %v4float %232 0
+ OpStore %x_GLF_color_1_1 %233
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.spvasm.expected.spvasm
index 068c255..2489f66 100644
--- a/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%50 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -25,32 +25,32 @@
OpName %x_82_phi "x_82_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v2float_uint_17 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -81,7 +81,7 @@
%125 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %138 = OpTypeFunction %void %main_out
+ %138 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %15
%17 = OpLabel
%x = OpVariable %_ptr_Function_int Function %21
@@ -228,20 +228,20 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %138
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %138
+%gl_FragCoord_param = OpFunctionParameter %v4float
%142 = OpLabel
- %143 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %143
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %143 = OpFunctionCall %void %main_1
+ %144 = OpLoad %v4float %x_GLF_color
+ %145 = OpCompositeConstruct %main_out %144
+ OpReturnValue %145
OpFunctionEnd
%main = OpFunction %void None %58
- %145 = OpLabel
- %146 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %146
- %147 = OpFunctionCall %void %main_1
- %149 = OpLoad %v4float %x_GLF_color
- %150 = OpCompositeConstruct %main_out %149
- %148 = OpFunctionCall %void %tint_symbol_3 %150
+ %147 = OpLabel
+ %149 = OpLoad %v4float %gl_FragCoord_param_1
+ %148 = OpFunctionCall %main_out %main_inner %149
+ %150 = OpCompositeExtract %v4float %148 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.wgsl.expected.spvasm
index 068c255..2489f66 100644
--- a/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/array-idx-multiplied-by-for-loop-idx/0-opt.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%50 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -25,32 +25,32 @@
OpName %x_82_phi "x_82_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v2float_uint_17 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -81,7 +81,7 @@
%125 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %138 = OpTypeFunction %void %main_out
+ %138 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %15
%17 = OpLabel
%x = OpVariable %_ptr_Function_int Function %21
@@ -228,20 +228,20 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %138
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %138
+%gl_FragCoord_param = OpFunctionParameter %v4float
%142 = OpLabel
- %143 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %143
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %143 = OpFunctionCall %void %main_1
+ %144 = OpLoad %v4float %x_GLF_color
+ %145 = OpCompositeConstruct %main_out %144
+ OpReturnValue %145
OpFunctionEnd
%main = OpFunction %void None %58
- %145 = OpLabel
- %146 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %146
- %147 = OpFunctionCall %void %main_1
- %149 = OpLoad %v4float %x_GLF_color
- %150 = OpCompositeConstruct %main_out %149
- %148 = OpFunctionCall %void %tint_symbol_3 %150
+ %147 = OpLabel
+ %149 = OpLoad %v4float %gl_FragCoord_param_1
+ %148 = OpFunctionCall %main_out %main_inner %149
+ %150 = OpCompositeExtract %v4float %148 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.spvasm.expected.spvasm
index 0129c00..a711e79 100644
--- a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.spvasm.expected.spvasm
@@ -5,14 +5,14 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %gl_FragCoord "gl_FragCoord"
OpName %temp "temp"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_i1_ "func_i1_"
OpName %a "a"
OpName %b "b"
@@ -25,36 +25,36 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpDecorate %_arr_int_uint_7 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_9 = OpConstant %uint 9
%_arr_int_uint_9 = OpTypeArray %int %uint_9
%_ptr_Private__arr_int_uint_9 = OpTypePointer Private %_arr_int_uint_9
- %7 = OpConstantNull %_arr_int_uint_9
- %data = OpVariable %_ptr_Private__arr_int_uint_9 Private %7
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %_arr_int_uint_9
+ %data = OpVariable %_ptr_Private__arr_int_uint_9 Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_7 = OpConstant %uint 7
%_arr_int_uint_7 = OpTypeArray %int %uint_7
%_ptr_Private__arr_int_uint_7 = OpTypePointer Private %_arr_int_uint_7
- %17 = OpConstantNull %_arr_int_uint_7
- %temp = OpVariable %_ptr_Private__arr_int_uint_7 Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %21 = OpConstantNull %_arr_int_uint_7
+ %temp = OpVariable %_ptr_Private__arr_int_uint_7 Private %21
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %float %_ptr_Function_int
%29 = OpConstantNull %int
@@ -79,7 +79,7 @@
%136 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%137 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out %v4float
%func_i1_ = OpFunction %float None %23
%a = OpFunctionParameter %_ptr_Function_int
%27 = OpLabel
@@ -239,20 +239,20 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %140
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %140
+%gl_FragCoord_param = OpFunctionParameter %v4float
%144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %145
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %110
- %147 = OpLabel
- %148 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %148
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_3 %152
+ %149 = OpLabel
+ %151 = OpLoad %v4float %gl_FragCoord_param_1
+ %150 = OpFunctionCall %main_out %main_inner %151
+ %152 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %152
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.wgsl.expected.spvasm
index 0129c00..a711e79 100644
--- a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array-2/0-opt.wgsl.expected.spvasm
@@ -5,14 +5,14 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %gl_FragCoord "gl_FragCoord"
OpName %temp "temp"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_i1_ "func_i1_"
OpName %a "a"
OpName %b "b"
@@ -25,36 +25,36 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpDecorate %_arr_int_uint_7 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_9 = OpConstant %uint 9
%_arr_int_uint_9 = OpTypeArray %int %uint_9
%_ptr_Private__arr_int_uint_9 = OpTypePointer Private %_arr_int_uint_9
- %7 = OpConstantNull %_arr_int_uint_9
- %data = OpVariable %_ptr_Private__arr_int_uint_9 Private %7
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %_arr_int_uint_9
+ %data = OpVariable %_ptr_Private__arr_int_uint_9 Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_7 = OpConstant %uint 7
%_arr_int_uint_7 = OpTypeArray %int %uint_7
%_ptr_Private__arr_int_uint_7 = OpTypePointer Private %_arr_int_uint_7
- %17 = OpConstantNull %_arr_int_uint_7
- %temp = OpVariable %_ptr_Private__arr_int_uint_7 Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %21 = OpConstantNull %_arr_int_uint_7
+ %temp = OpVariable %_ptr_Private__arr_int_uint_7 Private %21
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %float %_ptr_Function_int
%29 = OpConstantNull %int
@@ -79,7 +79,7 @@
%136 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%137 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out %v4float
%func_i1_ = OpFunction %float None %23
%a = OpFunctionParameter %_ptr_Function_int
%27 = OpLabel
@@ -239,20 +239,20 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %140
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %140
+%gl_FragCoord_param = OpFunctionParameter %v4float
%144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %145
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %110
- %147 = OpLabel
- %148 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %148
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_3 %152
+ %149 = OpLabel
+ %151 = OpLoad %v4float %gl_FragCoord_param_1
+ %150 = OpFunctionCall %main_out %main_inner %151
+ %152 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %152
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.spvasm.expected.spvasm
index 8945024..8342f8b 100644
--- a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.spvasm.expected.spvasm
@@ -1,15 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %a "a"
@@ -23,20 +23,19 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -66,7 +65,7 @@
%99 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%100 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%func_i1_ = OpFunction %void None %8
%x = OpFunctionParameter %_ptr_Function_int
%14 = OpLabel
@@ -203,18 +202,17 @@
%106 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %100
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.wgsl.expected.spvasm
index 8945024..8342f8b 100644
--- a/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/assign-array-value-to-another-array/0-opt.wgsl.expected.spvasm
@@ -1,15 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %a "a"
@@ -23,20 +23,19 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -66,7 +65,7 @@
%99 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%100 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%func_i1_ = OpFunction %void None %8
%x = OpFunctionParameter %_ptr_Function_int
%14 = OpLabel
@@ -203,18 +202,17 @@
%106 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %100
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.spvasm.expected.spvasm
index 552cb1b..b830459 100644
--- a/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 81
+; Bound: 86
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_LocalInvocationID_param_1
OpExecutionMode %main LocalSize 16 1 1
+ OpName %gl_LocalInvocationID_param_1 "gl_LocalInvocationID_param_1"
OpName %gl_LocalInvocationID "gl_LocalInvocationID"
OpName %doesNotMatter "doesNotMatter"
OpMemberName %doesNotMatter 0 "global_seed"
@@ -15,12 +16,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %lid "lid"
OpName %val "val"
OpName %i "i"
+ OpName %main_inner "main_inner"
+ OpName %gl_LocalInvocationID_param "gl_LocalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_LocalInvocationID_param_1 BuiltIn LocalInvocationId
OpDecorate %doesNotMatter Block
OpMemberDecorate %doesNotMatter 0 Offset 0
OpMemberDecorate %doesNotMatter 1 Offset 4
@@ -32,12 +35,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_LocalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%doesNotMatter = OpTypeStruct %int %_runtimearr_int
@@ -48,8 +52,6 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -67,6 +69,7 @@
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%int_42 = OpConstant %int 42
+ %77 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %18
%21 = OpLabel
%lid = OpVariable %_ptr_Function_int Function %24
@@ -135,10 +138,16 @@
%73 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %77
+%gl_LocalInvocationID_param = OpFunctionParameter %v3uint
+ %80 = OpLabel
+ OpStore %gl_LocalInvocationID %gl_LocalInvocationID_param
+ %81 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %18
- %78 = OpLabel
- %79 = OpLoad %v3uint %tint_symbol
- OpStore %gl_LocalInvocationID %79
- %80 = OpFunctionCall %void %main_1
+ %83 = OpLabel
+ %85 = OpLoad %v3uint %gl_LocalInvocationID_param_1
+ %84 = OpFunctionCall %void %main_inner %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.wgsl.expected.spvasm
index 552cb1b..b830459 100644
--- a/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 81
+; Bound: 86
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_LocalInvocationID_param_1
OpExecutionMode %main LocalSize 16 1 1
+ OpName %gl_LocalInvocationID_param_1 "gl_LocalInvocationID_param_1"
OpName %gl_LocalInvocationID "gl_LocalInvocationID"
OpName %doesNotMatter "doesNotMatter"
OpMemberName %doesNotMatter 0 "global_seed"
@@ -15,12 +16,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %lid "lid"
OpName %val "val"
OpName %i "i"
+ OpName %main_inner "main_inner"
+ OpName %gl_LocalInvocationID_param "gl_LocalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_LocalInvocationID_param_1 BuiltIn LocalInvocationId
OpDecorate %doesNotMatter Block
OpMemberDecorate %doesNotMatter 0 Offset 0
OpMemberDecorate %doesNotMatter 1 Offset 4
@@ -32,12 +35,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn LocalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_LocalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_LocalInvocationID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%doesNotMatter = OpTypeStruct %int %_runtimearr_int
@@ -48,8 +52,6 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -67,6 +69,7 @@
%uint_2 = OpConstant %uint 2
%uint_264 = OpConstant %uint 264
%int_42 = OpConstant %int 42
+ %77 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %18
%21 = OpLabel
%lid = OpVariable %_ptr_Function_int Function %24
@@ -135,10 +138,16 @@
%73 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %77
+%gl_LocalInvocationID_param = OpFunctionParameter %v3uint
+ %80 = OpLabel
+ OpStore %gl_LocalInvocationID %gl_LocalInvocationID_param
+ %81 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %18
- %78 = OpLabel
- %79 = OpLoad %v3uint %tint_symbol
- OpStore %gl_LocalInvocationID %79
- %80 = OpFunctionCall %void %main_1
+ %83 = OpLabel
+ %85 = OpLoad %v3uint %gl_LocalInvocationID_param_1
+ %84 = OpFunctionCall %void %main_inner %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.spvasm.expected.spvasm
index 8dd21f8..c48f0d6 100644
--- a/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live12c5 "GLF_live12c5"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%GLF_live12c5 = OpVariable %_ptr_Function_bool Function %19
@@ -84,18 +83,17 @@
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %12
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.wgsl.expected.spvasm
index 8dd21f8..c48f0d6 100644
--- a/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/break-in-do-while-with-nested-if/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live12c5 "GLF_live12c5"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%GLF_live12c5 = OpVariable %_ptr_Function_bool Function %19
@@ -84,18 +83,17 @@
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %12
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.spvasm.expected.spvasm
index 5378d74..6073859 100644
--- a/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%false = OpConstantFalse %bool
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%func_ = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
@@ -84,18 +83,17 @@
OpStore %x_GLF_color %38
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.wgsl.expected.spvasm
index 5378d74..6073859 100644
--- a/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/call-function-with-discard/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%false = OpConstantFalse %bool
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%func_ = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
@@ -84,18 +83,17 @@
OpStore %x_GLF_color %38
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.spvasm.expected.spvasm
index 556a05f..c6107e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_40 "x_40"
@@ -23,28 +23,27 @@
OpName %x_54_phi "x_54_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -67,7 +66,7 @@
%float_0 = OpConstant %float 0
%77 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%data = OpVariable %_ptr_Function__arr_int_uint_10 Function %22
@@ -145,18 +144,17 @@
OpStore %x_GLF_color %77
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %12
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.wgsl.expected.spvasm
index 556a05f..c6107e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/call-if-while-switch/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_40 "x_40"
@@ -23,28 +23,27 @@
OpName %x_54_phi "x_54_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -67,7 +66,7 @@
%float_0 = OpConstant %float 0
%77 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%data = OpVariable %_ptr_Function__arr_int_uint_10 Function %22
@@ -145,18 +144,17 @@
OpStore %x_GLF_color %77
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %12
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.spvasm.expected.spvasm
index 5ae61bc..56304fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 45
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -47,7 +46,7 @@
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %33 = OpTypeFunction %void %main_out
+ %33 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_0
@@ -71,18 +70,17 @@
OpStore %x_GLF_color %32
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %main_out
- %37 = OpLabel
- %38 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %38
- OpReturn
+ %main_inner = OpFunction %main_out None %33
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %main_1
+ %38 = OpLoad %v4float %x_GLF_color
+ %39 = OpCompositeConstruct %main_out %38
+ OpReturnValue %39
OpFunctionEnd
%main = OpFunction %void None %12
- %40 = OpLabel
- %41 = OpFunctionCall %void %main_1
- %43 = OpLoad %v4float %x_GLF_color
- %44 = OpCompositeConstruct %main_out %43
- %42 = OpFunctionCall %void %tint_symbol_2 %44
+ %41 = OpLabel
+ %42 = OpFunctionCall %main_out %main_inner
+ %43 = OpCompositeExtract %v4float %42 0
+ OpStore %x_GLF_color_1_1 %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.wgsl.expected.spvasm
index 5ae61bc..56304fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/color-set-in-for-loop/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 45
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -47,7 +46,7 @@
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %33 = OpTypeFunction %void %main_out
+ %33 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_0
@@ -71,18 +70,17 @@
OpStore %x_GLF_color %32
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %main_out
- %37 = OpLabel
- %38 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %38
- OpReturn
+ %main_inner = OpFunction %main_out None %33
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %main_1
+ %38 = OpLoad %v4float %x_GLF_color
+ %39 = OpCompositeConstruct %main_out %38
+ OpReturnValue %39
OpFunctionEnd
%main = OpFunction %void None %12
- %40 = OpLabel
- %41 = OpFunctionCall %void %main_1
- %43 = OpLoad %v4float %x_GLF_color
- %44 = OpCompositeConstruct %main_out %43
- %42 = OpFunctionCall %void %tint_symbol_2 %44
+ %41 = OpLabel
+ %42 = OpFunctionCall %main_out %main_inner
+ %43 = OpCompositeExtract %v4float %42 0
+ OpStore %x_GLF_color_1_1 %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.spvasm.expected.spvasm
index c5af5ad..2d3c083 100644
--- a/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_51 "x_51"
OpName %x_12_phi "x_12_phi"
@@ -25,11 +25,11 @@
OpName %x_6 "x_6"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 16
OpMemberDecorate %S 1 ColMajor
@@ -37,14 +37,14 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -74,7 +74,7 @@
%int_1000 = OpConstant %int 1000
%90 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %93 = OpTypeFunction %void %main_out
+ %93 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_51 = OpVariable %_ptr_Function_int Function %18
@@ -171,20 +171,20 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %93
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %93
+%gl_FragCoord_param = OpFunctionParameter %v4float
%97 = OpLabel
- %98 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %98
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %11
- %100 = OpLabel
- %101 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %101
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_3 %105
+ %102 = OpLabel
+ %104 = OpLoad %v4float %gl_FragCoord_param_1
+ %103 = OpFunctionCall %main_out %main_inner %104
+ %105 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.wgsl.expected.spvasm
index c5af5ad..2d3c083 100644
--- a/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/color-write-in-loop/0.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_51 "x_51"
OpName %x_12_phi "x_12_phi"
@@ -25,11 +25,11 @@
OpName %x_6 "x_6"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 16
OpMemberDecorate %S 1 ColMajor
@@ -37,14 +37,14 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -74,7 +74,7 @@
%int_1000 = OpConstant %int 1000
%90 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %93 = OpTypeFunction %void %main_out
+ %93 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_51 = OpVariable %_ptr_Function_int Function %18
@@ -171,20 +171,20 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %93
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %93
+%gl_FragCoord_param = OpFunctionParameter %v4float
%97 = OpLabel
- %98 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %98
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %11
- %100 = OpLabel
- %101 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %101
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_3 %105
+ %102 = OpLabel
+ %104 = OpLoad %v4float %gl_FragCoord_param_1
+ %103 = OpFunctionCall %main_out %main_inner %104
+ %105 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.spvasm.expected.spvasm
index 3e841df..6bca158 100644
--- a/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.spvasm.expected.spvasm
@@ -1,53 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %GLF_live6tree "GLF_live6tree"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %GLF_live6search_ "GLF_live6search_"
OpName %GLF_live6index "GLF_live6index"
OpName %GLF_live6currentNode "GLF_live6currentNode"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
-%GLF_live6tree = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %12 = OpConstantNull %_arr_int_uint_10
+%GLF_live6tree = OpVariable %_ptr_Private__arr_int_uint_10 Private %12
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%19 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
@@ -64,7 +63,7 @@
%float_0 = OpConstant %float 0
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%GLF_live6search_ = OpFunction %int None %19
%21 = OpLabel
%GLF_live6index = OpVariable %_ptr_Function_int Function %24
@@ -114,18 +113,17 @@
OpStore %x_GLF_color %59
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %45
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.wgsl.expected.spvasm
index 3e841df..6bca158 100644
--- a/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/conditional-return-in-infinite-while/0-opt.wgsl.expected.spvasm
@@ -1,53 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %GLF_live6tree "GLF_live6tree"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %GLF_live6search_ "GLF_live6search_"
OpName %GLF_live6index "GLF_live6index"
OpName %GLF_live6currentNode "GLF_live6currentNode"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
-%GLF_live6tree = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %12 = OpConstantNull %_arr_int_uint_10
+%GLF_live6tree = OpVariable %_ptr_Private__arr_int_uint_10 Private %12
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%19 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%24 = OpConstantNull %int
@@ -64,7 +63,7 @@
%float_0 = OpConstant %float 0
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%GLF_live6search_ = OpFunction %int None %19
%21 = OpLabel
%GLF_live6index = OpVariable %_ptr_Function_int Function %24
@@ -114,18 +113,17 @@
OpStore %x_GLF_color %59
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %45
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.spvasm.expected.spvasm
index ba3b2d9..1379bb5 100644
--- a/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_25 "x_25"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %drawShape_vf2_ "drawShape_vf2_"
OpName %pos "pos"
OpName %c2 "c2"
@@ -50,32 +50,32 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_25 NonWritable
OpDecorate %x_25 DescriptorSet 0
OpDecorate %x_25 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_25 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %v3float %_ptr_Function_v2float
@@ -125,7 +125,7 @@
%int_25 = OpConstant %int 25
%375 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %376 = OpTypeFunction %void %main_out
+ %376 = OpTypeFunction %main_out %v4float
%drawShape_vf2_ = OpFunction %v3float None %15
%pos = OpFunctionParameter %_ptr_Function_v2float
%20 = OpLabel
@@ -609,20 +609,20 @@
OpStore %x_GLF_color %375
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %376
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %376
+%gl_FragCoord_param = OpFunctionParameter %v4float
%380 = OpLabel
- %381 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %381
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %381 = OpFunctionCall %void %main_1
+ %382 = OpLoad %v4float %x_GLF_color
+ %383 = OpCompositeConstruct %main_out %382
+ OpReturnValue %383
OpFunctionEnd
%main = OpFunction %void None %334
- %383 = OpLabel
- %384 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %384
- %385 = OpFunctionCall %void %main_1
- %387 = OpLoad %v4float %x_GLF_color
- %388 = OpCompositeConstruct %main_out %387
- %386 = OpFunctionCall %void %tint_symbol_3 %388
+ %385 = OpLabel
+ %387 = OpLoad %v4float %gl_FragCoord_param_1
+ %386 = OpFunctionCall %main_out %main_inner %387
+ %388 = OpCompositeExtract %v4float %386 0
+ OpStore %x_GLF_color_1_1 %388
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.wgsl.expected.spvasm
index 694e352..99d77e1 100644
--- a/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/control-flow-in-function/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_25 "x_25"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %drawShape_vf2_ "drawShape_vf2_"
OpName %pos "pos"
OpName %c2 "c2"
@@ -50,32 +50,32 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_25 NonWritable
OpDecorate %x_25 DescriptorSet 0
OpDecorate %x_25 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_25 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %v3float %_ptr_Function_v2float
@@ -125,7 +125,7 @@
%int_25 = OpConstant %int 25
%389 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %390 = OpTypeFunction %void %main_out
+ %390 = OpTypeFunction %main_out %v4float
%drawShape_vf2_ = OpFunction %v3float None %15
%pos = OpFunctionParameter %_ptr_Function_v2float
%20 = OpLabel
@@ -644,20 +644,20 @@
OpStore %x_GLF_color %389
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %390
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %390
+%gl_FragCoord_param = OpFunctionParameter %v4float
%394 = OpLabel
- %395 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %395
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %395 = OpFunctionCall %void %main_1
+ %396 = OpLoad %v4float %x_GLF_color
+ %397 = OpCompositeConstruct %main_out %396
+ OpReturnValue %397
OpFunctionEnd
%main = OpFunction %void None %348
- %397 = OpLabel
- %398 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %398
- %399 = OpFunctionCall %void %main_1
- %401 = OpLoad %v4float %x_GLF_color
- %402 = OpCompositeConstruct %main_out %401
- %400 = OpFunctionCall %void %tint_symbol_3 %402
+ %399 = OpLabel
+ %401 = OpLoad %v4float %gl_FragCoord_param_1
+ %400 = OpFunctionCall %main_out %main_inner %401
+ %402 = OpCompositeExtract %v4float %400 0
+ OpStore %x_GLF_color_1_1 %402
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.spvasm.expected.spvasm
index 94105cd..8b27838 100644
--- a/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_i1_ "func_i1_"
OpName %b "b"
OpName %ndx "ndx"
@@ -26,30 +26,30 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%14 = OpTypeFunction %float %_ptr_Function_int
@@ -80,7 +80,7 @@
%int_10 = OpConstant %int 10
%147 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %148 = OpTypeFunction %void %main_out
+ %148 = OpTypeFunction %main_out %v4float
%func_i1_ = OpFunction %float None %14
%b = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -256,20 +256,20 @@
%144 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %148
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %148
+%gl_FragCoord_param = OpFunctionParameter %v4float
%152 = OpLabel
- %153 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %153
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %153 = OpFunctionCall %void %main_1
+ %154 = OpLoad %v4float %x_GLF_color
+ %155 = OpCompositeConstruct %main_out %154
+ OpReturnValue %155
OpFunctionEnd
%main = OpFunction %void None %82
- %155 = OpLabel
- %156 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %156
- %157 = OpFunctionCall %void %main_1
- %159 = OpLoad %v4float %x_GLF_color
- %160 = OpCompositeConstruct %main_out %159
- %158 = OpFunctionCall %void %tint_symbol_3 %160
+ %157 = OpLabel
+ %159 = OpLoad %v4float %gl_FragCoord_param_1
+ %158 = OpFunctionCall %main_out %main_inner %159
+ %160 = OpCompositeExtract %v4float %158 0
+ OpStore %x_GLF_color_1_1 %160
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.wgsl.expected.spvasm
index 94105cd..8b27838 100644
--- a/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cosh-return-inf-unused/0-opt.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_i1_ "func_i1_"
OpName %b "b"
OpName %ndx "ndx"
@@ -26,30 +26,30 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%14 = OpTypeFunction %float %_ptr_Function_int
@@ -80,7 +80,7 @@
%int_10 = OpConstant %int 10
%147 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %148 = OpTypeFunction %void %main_out
+ %148 = OpTypeFunction %main_out %v4float
%func_i1_ = OpFunction %float None %14
%b = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -256,20 +256,20 @@
%144 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %148
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %148
+%gl_FragCoord_param = OpFunctionParameter %v4float
%152 = OpLabel
- %153 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %153
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %153 = OpFunctionCall %void %main_1
+ %154 = OpLoad %v4float %x_GLF_color
+ %155 = OpCompositeConstruct %main_out %154
+ OpReturnValue %155
OpFunctionEnd
%main = OpFunction %void None %82
- %155 = OpLabel
- %156 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %156
- %157 = OpFunctionCall %void %main_1
- %159 = OpLoad %v4float %x_GLF_color
- %160 = OpCompositeConstruct %main_out %159
- %158 = OpFunctionCall %void %tint_symbol_3 %160
+ %157 = OpLabel
+ %159 = OpLoad %v4float %gl_FragCoord_param_1
+ %158 = OpFunctionCall %main_out %main_inner %159
+ %160 = OpCompositeExtract %v4float %158 0
+ OpStore %x_GLF_color_1_1 %160
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.spvasm.expected.spvasm
index cad1211..7d9d490 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %numbers "numbers"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -36,9 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -46,17 +50,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_int_uint_3_0 = OpTypeArray %int %uint_3
@@ -77,7 +76,7 @@
%float_0 = OpConstant %float 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%numbers = OpVariable %_ptr_Function__arr_int_uint_3_0 Function %26
@@ -153,18 +152,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %19
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.wgsl.expected.spvasm
index cad1211..7d9d490 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-access-array-dot/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %numbers "numbers"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -36,9 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -46,17 +50,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_int_uint_3_0 = OpTypeArray %int %uint_3
@@ -77,7 +76,7 @@
%float_0 = OpConstant %float 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%numbers = OpVariable %_ptr_Function__arr_int_uint_3_0 Function %26
@@ -153,18 +152,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %19
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.spvasm.expected.spvasm
index d7c1363..e614433 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %s "s"
OpName %i "i"
@@ -20,27 +20,26 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%17 = OpConstantNull %float
@@ -63,7 +62,7 @@
%float_5 = OpConstant %float 5
%81 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%func_ = OpFunction %float None %12
%14 = OpLabel
%s = OpVariable %_ptr_Function_float Function %17
@@ -133,7 +132,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %64
%67 = OpLabel
- %c = OpVariable %_ptr_Function_v4float Function %9
+ %c = OpVariable %_ptr_Function_v4float Function %5
%70 = OpFunctionCall %float %func_
%73 = OpCompositeConstruct %v4float %70 %float_0 %float_0 %float_1
OpStore %c %73
@@ -151,18 +150,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %64
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.wgsl.expected.spvasm
index d7c1363..e614433 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-analysis-reachable-from-many/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %s "s"
OpName %i "i"
@@ -20,27 +20,26 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%17 = OpConstantNull %float
@@ -63,7 +62,7 @@
%float_5 = OpConstant %float 5
%81 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%func_ = OpFunction %float None %12
%14 = OpLabel
%s = OpVariable %_ptr_Function_float Function %17
@@ -133,7 +132,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %64
%67 = OpLabel
- %c = OpVariable %_ptr_Function_v4float Function %9
+ %c = OpVariable %_ptr_Function_v4float Function %5
%70 = OpFunctionCall %float %func_
%73 = OpCompositeConstruct %v4float %70 %float_0 %float_0 %float_1
OpStore %c %73
@@ -151,18 +150,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %64
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.spvasm.expected.spvasm
index c4e8344..c00bb8c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,15 +17,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -36,31 +38,29 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -78,7 +78,7 @@
%v2float = OpTypeVector %float 2
%_ptr_Function_int = OpTypePointer Function %int
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%v = OpVariable %_ptr_Function_v2int Function %30
@@ -137,20 +137,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %88
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %88
+%gl_FragCoord_param = OpFunctionParameter %v4float
%92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %93
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %23
- %95 = OpLabel
- %96 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %96
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_3 %100
+ %97 = OpLabel
+ %99 = OpLoad %v4float %gl_FragCoord_param_1
+ %98 = OpFunctionCall %main_out %main_inner %99
+ %100 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %100
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.wgsl.expected.spvasm
index c4e8344..c00bb8c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-and-even-numbers-from-fragcoord/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,15 +17,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -36,31 +38,29 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -78,7 +78,7 @@
%v2float = OpTypeVector %float 2
%_ptr_Function_int = OpTypePointer Function %int
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%v = OpVariable %_ptr_Function_v2int Function %30
@@ -137,20 +137,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %88
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %88
+%gl_FragCoord_param = OpFunctionParameter %v4float
%92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %93
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %23
- %95 = OpLabel
- %96 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %96
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_3 %100
+ %97 = OpLabel
+ %99 = OpLoad %v4float %gl_FragCoord_param_1
+ %98 = OpFunctionCall %main_out %main_inner %99
+ %100 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %100
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.spvasm.expected.spvasm
index abe5509..a83eaf8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -63,7 +62,7 @@
%50 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%51 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %19
@@ -90,18 +89,17 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %52
-%tint_symbol = OpFunctionParameter %main_out
- %56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %57
- OpReturn
+ %main_inner = OpFunction %main_out None %52
+ %55 = OpLabel
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %12
- %59 = OpLabel
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_2 %63
+ %60 = OpLabel
+ %61 = OpFunctionCall %main_out %main_inner
+ %62 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.wgsl.expected.spvasm
index abe5509..a83eaf8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-acos-ldexp/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -63,7 +62,7 @@
%50 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%51 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %19
@@ -90,18 +89,17 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %52
-%tint_symbol = OpFunctionParameter %main_out
- %56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %57
- OpReturn
+ %main_inner = OpFunction %main_out None %52
+ %55 = OpLabel
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %12
- %59 = OpLabel
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_2 %63
+ %60 = OpLabel
+ %61 = OpFunctionCall %main_out %main_inner
+ %62 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.spvasm.expected.spvasm
index a076bbb..637b8df 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 126
+; Bound: 125
; Schema: 0
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %nan "nan"
OpName %undefined "undefined"
@@ -23,9 +23,9 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
@@ -47,18 +51,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_10
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,11 +81,11 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%nan = OpVariable %_ptr_Function_float Function %26
- %undefined = OpVariable %_ptr_Function_v4float Function %17
+ %undefined = OpVariable %_ptr_Function_v4float Function %5
%x_83 = OpVariable %_ptr_Function_bool Function %32
%x_84_phi = OpVariable %_ptr_Function_bool Function %32
%34 = OpBitcast %float %int_n1
@@ -170,18 +169,17 @@
%93 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %114
-%tint_symbol = OpFunctionParameter %main_out
- %118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %119
- OpReturn
+ %main_inner = OpFunction %main_out None %114
+ %117 = OpLabel
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %20
- %121 = OpLabel
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_2 %125
+ %122 = OpLabel
+ %123 = OpFunctionCall %main_out %main_inner
+ %124 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %124
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.wgsl.expected.spvasm
index a076bbb..637b8df 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mix-nan/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 126
+; Bound: 125
; Schema: 0
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %nan "nan"
OpName %undefined "undefined"
@@ -23,9 +23,9 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
@@ -47,18 +51,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_10
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,11 +81,11 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%nan = OpVariable %_ptr_Function_float Function %26
- %undefined = OpVariable %_ptr_Function_v4float Function %17
+ %undefined = OpVariable %_ptr_Function_v4float Function %5
%x_83 = OpVariable %_ptr_Function_bool Function %32
%x_84_phi = OpVariable %_ptr_Function_bool Function %32
%34 = OpBitcast %float %int_n1
@@ -170,18 +169,17 @@
%93 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %114
-%tint_symbol = OpFunctionParameter %main_out
- %118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %119
- OpReturn
+ %main_inner = OpFunction %main_out None %114
+ %117 = OpLabel
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %20
- %121 = OpLabel
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_2 %125
+ %122 = OpLabel
+ %123 = OpFunctionCall %main_out %main_inner
+ %124 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %124
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.spvasm.expected.spvasm
index 1e78c0a..90ce459 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %undefined "undefined"
OpName %x_51 "x_51"
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -46,18 +50,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -73,7 +72,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %81 = OpTypeFunction %void %main_out
+ %81 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%undefined = OpVariable %_ptr_Function_float Function %26
@@ -135,18 +134,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %81
-%tint_symbol = OpFunctionParameter %main_out
- %85 = OpLabel
- %86 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %86
- OpReturn
+ %main_inner = OpFunction %main_out None %81
+ %84 = OpLabel
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %20
- %88 = OpLabel
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %89 = OpLabel
+ %90 = OpFunctionCall %main_out %main_inner
+ %91 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %91
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.wgsl.expected.spvasm
index 5d524ab..b89cc7a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-mod-zero/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %undefined "undefined"
OpName %x_51 "x_51"
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -36,8 +36,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -45,18 +49,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -72,7 +71,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%undefined = OpVariable %_ptr_Function_float Function %26
@@ -131,18 +130,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %20
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.spvasm.expected.spvasm
index a8b7c7b..154c791 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%37 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -15,7 +16,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %s1 "s1"
@@ -28,9 +28,9 @@
OpName %x_72_phi "x_72_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -43,12 +43,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -62,8 +63,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -83,7 +82,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %26
@@ -197,18 +196,17 @@
%95 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %20
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.wgsl.expected.spvasm
index f346779..6489e94 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-module-small-number/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 132
+; Bound: 131
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -14,7 +15,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %s1 "s1"
@@ -27,9 +27,9 @@
OpName %x_72_phi "x_72_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -42,12 +42,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -61,8 +62,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,7 +81,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %120 = OpTypeFunction %void %main_out
+ %120 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %26
@@ -210,18 +209,17 @@
%96 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %120
-%tint_symbol = OpFunctionParameter %main_out
- %124 = OpLabel
- %125 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %125
- OpReturn
+ %main_inner = OpFunction %main_out None %120
+ %123 = OpLabel
+ %124 = OpFunctionCall %void %main_1
+ %125 = OpLoad %v4float %x_GLF_color
+ %126 = OpCompositeConstruct %main_out %125
+ OpReturnValue %126
OpFunctionEnd
%main = OpFunction %void None %20
- %127 = OpLabel
- %128 = OpFunctionCall %void %main_1
- %130 = OpLoad %v4float %x_GLF_color
- %131 = OpCompositeConstruct %main_out %130
- %129 = OpFunctionCall %void %tint_symbol_2 %131
+ %128 = OpLabel
+ %129 = OpFunctionCall %main_out %main_inner
+ %130 = OpCompositeExtract %v4float %129 0
+ OpStore %x_GLF_color_1_1 %130
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.spvasm.expected.spvasm
index dcddef3..bd2d69d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
%54 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %I "I"
OpName %N "N"
@@ -23,9 +23,9 @@
OpName %ref "ref"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -47,18 +51,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -76,13 +75,13 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %I = OpVariable %_ptr_Function_v4float Function %17
- %N = OpVariable %_ptr_Function_v4float Function %17
- %R = OpVariable %_ptr_Function_v4float Function %17
- %ref = OpVariable %_ptr_Function_v4float Function %17
+ %I = OpVariable %_ptr_Function_v4float Function %5
+ %N = OpVariable %_ptr_Function_v4float Function %5
+ %R = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%32 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_2
%33 = OpLoad %int %32
%35 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_3
@@ -147,18 +146,17 @@
%75 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %20
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.wgsl.expected.spvasm
index dcddef3..bd2d69d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-reflect-denorm/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
%54 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %I "I"
OpName %N "N"
@@ -23,9 +23,9 @@
OpName %ref "ref"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -47,18 +51,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -76,13 +75,13 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %I = OpVariable %_ptr_Function_v4float Function %17
- %N = OpVariable %_ptr_Function_v4float Function %17
- %R = OpVariable %_ptr_Function_v4float Function %17
- %ref = OpVariable %_ptr_Function_v4float Function %17
+ %I = OpVariable %_ptr_Function_v4float Function %5
+ %N = OpVariable %_ptr_Function_v4float Function %5
+ %R = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%32 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_2
%33 = OpLoad %int %32
%35 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_3
@@ -147,18 +146,17 @@
%75 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %20
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.spvasm.expected.spvasm
index c418795..b87ac77 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %undefined "undefined"
OpName %x_45 "x_45"
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -72,7 +71,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%undefined = OpVariable %_ptr_Function_float Function %26
@@ -126,18 +125,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %20
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.wgsl.expected.spvasm
index d03d7ff..03787ca 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-sinh-negative-log2/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %undefined "undefined"
OpName %x_45 "x_45"
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -72,7 +71,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%undefined = OpVariable %_ptr_Function_float Function %26
@@ -126,18 +125,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %20
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.spvasm.expected.spvasm
index ad52ff1..e89c0bd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
%27 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %dist1 "dist1"
OpName %dist2 "dist2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -49,7 +48,7 @@
%51 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%52 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -85,18 +84,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %8
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.wgsl.expected.spvasm
index 1f2f4f7..d72db82 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-tanh/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,32 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
%27 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %dist1 "dist1"
OpName %dist2 "dist2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -49,7 +48,7 @@
%53 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -90,18 +89,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.spvasm.expected.spvasm
index 5f8230b..f914586 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 175
+; Bound: 174
; Schema: 0
OpCapability Shader
%96 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_15 "x_15"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %m1 "m1"
@@ -27,9 +27,9 @@
OpName %v3 "v3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_12 ArrayStride 16
@@ -42,8 +42,12 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_12 = OpConstant %uint 12
@@ -51,18 +55,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_12
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%20 = OpTypeFunction %void
%mat3v4float = OpTypeMatrix %v4float 3
@@ -99,17 +98,17 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %163 = OpTypeFunction %void %main_out
+ %163 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m0 = OpVariable %_ptr_Function_mat3v4float Function %27
%m1 = OpVariable %_ptr_Function_mat3v4float Function %27
%undefined = OpVariable %_ptr_Function_v3float Function %32
%defined = OpVariable %_ptr_Function_v3float Function %32
- %v0 = OpVariable %_ptr_Function_v4float Function %12
- %v1 = OpVariable %_ptr_Function_v4float Function %12
- %v2 = OpVariable %_ptr_Function_v4float Function %12
- %v3 = OpVariable %_ptr_Function_v4float Function %12
+ %v0 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v3 = OpVariable %_ptr_Function_v4float Function %5
%42 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_4
%43 = OpLoad %int %42
%45 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_5
@@ -227,18 +226,17 @@
%156 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %163
-%tint_symbol = OpFunctionParameter %main_out
- %167 = OpLabel
- %168 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %168
- OpReturn
+ %main_inner = OpFunction %main_out None %163
+ %166 = OpLabel
+ %167 = OpFunctionCall %void %main_1
+ %168 = OpLoad %v4float %x_GLF_color
+ %169 = OpCompositeConstruct %main_out %168
+ OpReturnValue %169
OpFunctionEnd
%main = OpFunction %void None %20
- %170 = OpLabel
- %171 = OpFunctionCall %void %main_1
- %173 = OpLoad %v4float %x_GLF_color
- %174 = OpCompositeConstruct %main_out %173
- %172 = OpFunctionCall %void %tint_symbol_2 %174
+ %171 = OpLabel
+ %172 = OpFunctionCall %main_out %main_inner
+ %173 = OpCompositeExtract %v4float %172 0
+ OpStore %x_GLF_color_1_1 %173
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.wgsl.expected.spvasm
index 5f8230b..f914586 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-undefined-matrix-mul/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 175
+; Bound: 174
; Schema: 0
OpCapability Shader
%96 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_15 "x_15"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %m1 "m1"
@@ -27,9 +27,9 @@
OpName %v3 "v3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_12 ArrayStride 16
@@ -42,8 +42,12 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_12 = OpConstant %uint 12
@@ -51,18 +55,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_12
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%20 = OpTypeFunction %void
%mat3v4float = OpTypeMatrix %v4float 3
@@ -99,17 +98,17 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %163 = OpTypeFunction %void %main_out
+ %163 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m0 = OpVariable %_ptr_Function_mat3v4float Function %27
%m1 = OpVariable %_ptr_Function_mat3v4float Function %27
%undefined = OpVariable %_ptr_Function_v3float Function %32
%defined = OpVariable %_ptr_Function_v3float Function %32
- %v0 = OpVariable %_ptr_Function_v4float Function %12
- %v1 = OpVariable %_ptr_Function_v4float Function %12
- %v2 = OpVariable %_ptr_Function_v4float Function %12
- %v3 = OpVariable %_ptr_Function_v4float Function %12
+ %v0 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v3 = OpVariable %_ptr_Function_v4float Function %5
%42 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_4
%43 = OpLoad %int %42
%45 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_5
@@ -227,18 +226,17 @@
%156 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %163
-%tint_symbol = OpFunctionParameter %main_out
- %167 = OpLabel
- %168 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %168
- OpReturn
+ %main_inner = OpFunction %main_out None %163
+ %166 = OpLabel
+ %167 = OpFunctionCall %void %main_1
+ %168 = OpLoad %v4float %x_GLF_color
+ %169 = OpCompositeConstruct %main_out %168
+ OpReturnValue %169
OpFunctionEnd
%main = OpFunction %void None %20
- %170 = OpLabel
- %171 = OpFunctionCall %void %main_1
- %173 = OpLoad %v4float %x_GLF_color
- %174 = OpCompositeConstruct %main_out %173
- %172 = OpFunctionCall %void %tint_symbol_2 %174
+ %171 = OpLabel
+ %172 = OpFunctionCall %main_out %main_inner
+ %173 = OpCompositeExtract %v4float %172 0
+ OpStore %x_GLF_color_1_1 %173
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.spvasm.expected.spvasm
index 1b6c2cf..e81d465 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
%43 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -57,11 +56,11 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
- %v = OpVariable %_ptr_Function_v4float Function %12
+ %v = OpVariable %_ptr_Function_v4float Function %5
%27 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%28 = OpLoad %int %27
OpStore %i %28
@@ -121,18 +120,17 @@
OpStore %x_GLF_color %72
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %15
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.wgsl.expected.spvasm
index 1b6c2cf..e81d465 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-apfloat-unpackunorm-loop/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
%43 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -57,11 +56,11 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
- %v = OpVariable %_ptr_Function_v4float Function %12
+ %v = OpVariable %_ptr_Function_v4float Function %5
%27 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%28 = OpLoad %int %27
OpStore %i %28
@@ -121,18 +120,17 @@
OpStore %x_GLF_color %72
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %15
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.spvasm.expected.spvasm
index 5b91fa9..c84ec50 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%75 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
@@ -25,9 +25,11 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,10 +42,15 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,21 +58,14 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_arr_int_uint_3_0 = OpTypeArray %int %uint_3
@@ -82,7 +82,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_3_0 Function %30
@@ -154,20 +154,20 @@
OpStore %x_GLF_color %97
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %98
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %98
+%gl_FragCoord_param = OpFunctionParameter %v4float
%102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %103
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %103 = OpFunctionCall %void %main_1
+ %104 = OpLoad %v4float %x_GLF_color
+ %105 = OpCompositeConstruct %main_out %104
+ OpReturnValue %105
OpFunctionEnd
%main = OpFunction %void None %23
- %105 = OpLabel
- %106 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %106
- %107 = OpFunctionCall %void %main_1
- %109 = OpLoad %v4float %x_GLF_color
- %110 = OpCompositeConstruct %main_out %109
- %108 = OpFunctionCall %void %tint_symbol_3 %110
+ %107 = OpLabel
+ %109 = OpLoad %v4float %gl_FragCoord_param_1
+ %108 = OpFunctionCall %main_out %main_inner %109
+ %110 = OpCompositeExtract %v4float %108 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.wgsl.expected.spvasm
index 5b91fa9..c84ec50 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-array-accesses-clamp/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%75 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
@@ -25,9 +25,11 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,10 +42,15 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,21 +58,14 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_arr_int_uint_3_0 = OpTypeArray %int %uint_3
@@ -82,7 +82,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_3_0 Function %30
@@ -154,20 +154,20 @@
OpStore %x_GLF_color %97
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %98
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %98
+%gl_FragCoord_param = OpFunctionParameter %v4float
%102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %103
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %103 = OpFunctionCall %void %main_1
+ %104 = OpLoad %v4float %x_GLF_color
+ %105 = OpCompositeConstruct %main_out %104
+ OpReturnValue %105
OpFunctionEnd
%main = OpFunction %void None %23
- %105 = OpLabel
- %106 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %106
- %107 = OpFunctionCall %void %main_1
- %109 = OpLoad %v4float %x_GLF_color
- %110 = OpCompositeConstruct %main_out %109
- %108 = OpFunctionCall %void %tint_symbol_3 %110
+ %107 = OpLabel
+ %109 = OpLoad %v4float %gl_FragCoord_param_1
+ %108 = OpFunctionCall %main_out %main_inner %109
+ %110 = OpCompositeExtract %v4float %108 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.spvasm.expected.spvasm
index e2c5551..4698e5c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 321
+; Bound: 320
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "one"
OpName %x_19 "x_19"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr0 "arr0"
OpName %arr1 "arr1"
@@ -32,9 +32,9 @@
OpName %x_278_phi "x_278_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_20 ArrayStride 16
@@ -46,9 +46,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_20 = OpConstant %uint 20
@@ -56,16 +60,11 @@
%buf0 = OpTypeStruct %_arr_int_uint_20
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_19 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint_10 = OpConstant %uint 10
@@ -100,7 +99,7 @@
%_ptr_Function_bool = OpTypePointer Function %bool
%273 = OpConstantNull %bool
%main_out = OpTypeStruct %v4float
- %309 = OpTypeFunction %void %main_out
+ %309 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%arr0 = OpVariable %_ptr_Function__arr_int_uint_10 Function %26
@@ -460,18 +459,17 @@
%268 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %309
-%tint_symbol = OpFunctionParameter %main_out
- %313 = OpLabel
- %314 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %314
- OpReturn
+ %main_inner = OpFunction %main_out None %309
+ %312 = OpLabel
+ %313 = OpFunctionCall %void %main_1
+ %314 = OpLoad %v4float %x_GLF_color
+ %315 = OpCompositeConstruct %main_out %314
+ OpReturnValue %315
OpFunctionEnd
%main = OpFunction %void None %18
- %316 = OpLabel
- %317 = OpFunctionCall %void %main_1
- %319 = OpLoad %v4float %x_GLF_color
- %320 = OpCompositeConstruct %main_out %319
- %318 = OpFunctionCall %void %tint_symbol_2 %320
+ %317 = OpLabel
+ %318 = OpFunctionCall %main_out %main_inner
+ %319 = OpCompositeExtract %v4float %318 0
+ OpStore %x_GLF_color_1_1 %319
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.wgsl.expected.spvasm
index e2c5551..4698e5c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with-limiters/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 321
+; Bound: 320
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "one"
OpName %x_19 "x_19"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr0 "arr0"
OpName %arr1 "arr1"
@@ -32,9 +32,9 @@
OpName %x_278_phi "x_278_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_20 ArrayStride 16
@@ -46,9 +46,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_20 = OpConstant %uint 20
@@ -56,16 +60,11 @@
%buf0 = OpTypeStruct %_arr_int_uint_20
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_19 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint_10 = OpConstant %uint 10
@@ -100,7 +99,7 @@
%_ptr_Function_bool = OpTypePointer Function %bool
%273 = OpConstantNull %bool
%main_out = OpTypeStruct %v4float
- %309 = OpTypeFunction %void %main_out
+ %309 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%arr0 = OpVariable %_ptr_Function__arr_int_uint_10 Function %26
@@ -460,18 +459,17 @@
%268 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %309
-%tint_symbol = OpFunctionParameter %main_out
- %313 = OpLabel
- %314 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %314
- OpReturn
+ %main_inner = OpFunction %main_out None %309
+ %312 = OpLabel
+ %313 = OpFunctionCall %void %main_1
+ %314 = OpLoad %v4float %x_GLF_color
+ %315 = OpCompositeConstruct %main_out %314
+ OpReturnValue %315
OpFunctionEnd
%main = OpFunction %void None %18
- %316 = OpLabel
- %317 = OpFunctionCall %void %main_1
- %319 = OpLoad %v4float %x_GLF_color
- %320 = OpCompositeConstruct %main_out %319
- %318 = OpFunctionCall %void %tint_symbol_2 %320
+ %317 = OpLabel
+ %318 = OpFunctionCall %main_out %main_inner
+ %319 = OpCompositeExtract %v4float %318 0
+ OpStore %x_GLF_color_1_1 %319
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.spvasm.expected.spvasm
index f43127a..a954c3c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 143
+; Bound: 142
; Schema: 0
OpCapability Shader
%60 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
@@ -28,30 +28,29 @@
OpName %x_94_phi "x_94_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_7 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
%_arr_float_uint_7 = OpTypeArray %float %uint_7
%buf0 = OpTypeStruct %_arr_float_uint_7
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -77,13 +76,13 @@
%uint_3 = OpConstant %uint 3
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %131 = OpTypeFunction %void %main_out
+ %131 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
- %v1 = OpVariable %_ptr_Function_v4float Function %11
- %v2 = OpVariable %_ptr_Function_v4float Function %11
- %v3 = OpVariable %_ptr_Function_v4float Function %11
- %v4 = OpVariable %_ptr_Function_v4float Function %11
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v3 = OpVariable %_ptr_Function_v4float Function %5
+ %v4 = OpVariable %_ptr_Function_v4float Function %5
%x_69 = OpVariable %_ptr_Function_bool Function %26
%x_77 = OpVariable %_ptr_Function_bool Function %26
%x_85 = OpVariable %_ptr_Function_bool Function %26
@@ -207,18 +206,17 @@
%115 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %131
-%tint_symbol = OpFunctionParameter %main_out
- %135 = OpLabel
- %136 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %136
- OpReturn
+ %main_inner = OpFunction %main_out None %131
+ %134 = OpLabel
+ %135 = OpFunctionCall %void %main_1
+ %136 = OpLoad %v4float %x_GLF_color
+ %137 = OpCompositeConstruct %main_out %136
+ OpReturnValue %137
OpFunctionEnd
%main = OpFunction %void None %14
- %138 = OpLabel
- %139 = OpFunctionCall %void %main_1
- %141 = OpLoad %v4float %x_GLF_color
- %142 = OpCompositeConstruct %main_out %141
- %140 = OpFunctionCall %void %tint_symbol_2 %142
+ %139 = OpLabel
+ %140 = OpFunctionCall %main_out %main_inner
+ %141 = OpCompositeExtract %v4float %140 0
+ OpStore %x_GLF_color_1_1 %141
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.wgsl.expected.spvasm
index 9c23d5b..3d79753 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-asin-undefined-smoothstep/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 143
+; Bound: 142
; Schema: 0
OpCapability Shader
%60 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
@@ -28,30 +28,29 @@
OpName %x_94_phi "x_94_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_7 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
%_arr_float_uint_7 = OpTypeArray %float %uint_7
%buf0 = OpTypeStruct %_arr_float_uint_7
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -77,13 +76,13 @@
%uint_3 = OpConstant %uint 3
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %131 = OpTypeFunction %void %main_out
+ %131 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
- %v1 = OpVariable %_ptr_Function_v4float Function %11
- %v2 = OpVariable %_ptr_Function_v4float Function %11
- %v3 = OpVariable %_ptr_Function_v4float Function %11
- %v4 = OpVariable %_ptr_Function_v4float Function %11
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v3 = OpVariable %_ptr_Function_v4float Function %5
+ %v4 = OpVariable %_ptr_Function_v4float Function %5
%x_69 = OpVariable %_ptr_Function_bool Function %26
%x_77 = OpVariable %_ptr_Function_bool Function %26
%x_85 = OpVariable %_ptr_Function_bool Function %26
@@ -207,18 +206,17 @@
%115 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %131
-%tint_symbol = OpFunctionParameter %main_out
- %135 = OpLabel
- %136 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %136
- OpReturn
+ %main_inner = OpFunction %main_out None %131
+ %134 = OpLabel
+ %135 = OpFunctionCall %void %main_1
+ %136 = OpLoad %v4float %x_GLF_color
+ %137 = OpCompositeConstruct %main_out %136
+ OpReturnValue %137
OpFunctionEnd
%main = OpFunction %void None %14
- %138 = OpLabel
- %139 = OpFunctionCall %void %main_1
- %141 = OpLoad %v4float %x_GLF_color
- %142 = OpCompositeConstruct %main_out %141
- %140 = OpFunctionCall %void %tint_symbol_2 %142
+ %139 = OpLabel
+ %140 = OpFunctionCall %main_out %main_inner
+ %141 = OpCompositeExtract %v4float %140 0
+ OpStore %x_GLF_color_1_1 %141
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.spvasm.expected.spvasm
index f01fd57..a7b854b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
%49 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %f "f"
@@ -23,9 +23,9 @@
OpName %x_57_phi "x_57_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -47,17 +51,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -73,10 +72,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %16
+ %v = OpVariable %_ptr_Function_v4float Function %5
%f = OpVariable %_ptr_Function_float Function %27
%x_56 = OpVariable %_ptr_Function_bool Function %31
%x_57_phi = OpVariable %_ptr_Function_bool Function %31
@@ -144,18 +143,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %19
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.wgsl.expected.spvasm
index f01fd57..a7b854b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-atan-trunc-vec4/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
%49 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %f "f"
@@ -23,9 +23,9 @@
OpName %x_57_phi "x_57_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -38,8 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -47,17 +51,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -73,10 +72,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %16
+ %v = OpVariable %_ptr_Function_v4float Function %5
%f = OpVariable %_ptr_Function_float Function %27
%x_56 = OpVariable %_ptr_Function_bool Function %31
%x_57_phi = OpVariable %_ptr_Function_bool Function %31
@@ -144,18 +143,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %19
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.spvasm.expected.spvasm
index f8a6cea..8eb3378 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -22,27 +22,26 @@
OpName %x_35_phi "x_35_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %int %_ptr_Function_int
%int_10 = OpConstant %int 10
@@ -62,7 +61,7 @@
%66 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%67 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %12
%x = OpFunctionParameter %_ptr_Function_int
%16 = OpLabel
@@ -128,18 +127,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %26
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.wgsl.expected.spvasm
index f8a6cea..8eb3378 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-basic-block-discard-in-function/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -22,27 +22,26 @@
OpName %x_35_phi "x_35_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %int %_ptr_Function_int
%int_10 = OpConstant %int 10
@@ -62,7 +61,7 @@
%66 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%67 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %12
%x = OpFunctionParameter %_ptr_Function_int
%16 = OpLabel
@@ -128,18 +127,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %26
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.spvasm.expected.spvasm
index f6ad901..d915897 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,8 +17,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_ "f1_"
OpName %a "a"
OpName %i "i"
@@ -24,9 +24,11 @@
OpName %a_1 "a_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -39,14 +41,16 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -59,11 +63,7 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%23 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%28 = OpConstantNull %int
@@ -79,7 +79,7 @@
%58 = OpTypeFunction %void
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %89 = OpTypeFunction %void %main_out
+ %89 = OpTypeFunction %main_out %v4float
%f1_ = OpFunction %int None %23
%25 = OpLabel
%a = OpVariable %_ptr_Function_int Function %28
@@ -152,20 +152,20 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %89
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %89
+%gl_FragCoord_param = OpFunctionParameter %v4float
%93 = OpLabel
- %94 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %94
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %94 = OpFunctionCall %void %main_1
+ %95 = OpLoad %v4float %x_GLF_color
+ %96 = OpCompositeConstruct %main_out %95
+ OpReturnValue %96
OpFunctionEnd
%main = OpFunction %void None %58
- %96 = OpLabel
- %97 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %97
- %98 = OpFunctionCall %void %main_1
- %100 = OpLoad %v4float %x_GLF_color
- %101 = OpCompositeConstruct %main_out %100
- %99 = OpFunctionCall %void %tint_symbol_3 %101
+ %98 = OpLabel
+ %100 = OpLoad %v4float %gl_FragCoord_param_1
+ %99 = OpFunctionCall %main_out %main_inner %100
+ %101 = OpCompositeExtract %v4float %99 0
+ OpStore %x_GLF_color_1_1 %101
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.wgsl.expected.spvasm
index f6ad901..d915897 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitcount/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,8 +17,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_ "f1_"
OpName %a "a"
OpName %i "i"
@@ -24,9 +24,11 @@
OpName %a_1 "a_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -39,14 +41,16 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -59,11 +63,7 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%23 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%28 = OpConstantNull %int
@@ -79,7 +79,7 @@
%58 = OpTypeFunction %void
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %89 = OpTypeFunction %void %main_out
+ %89 = OpTypeFunction %main_out %v4float
%f1_ = OpFunction %int None %23
%25 = OpLabel
%a = OpVariable %_ptr_Function_int Function %28
@@ -152,20 +152,20 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %89
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %89
+%gl_FragCoord_param = OpFunctionParameter %v4float
%93 = OpLabel
- %94 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %94
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %94 = OpFunctionCall %void %main_1
+ %95 = OpLoad %v4float %x_GLF_color
+ %96 = OpCompositeConstruct %main_out %95
+ OpReturnValue %96
OpFunctionEnd
%main = OpFunction %void None %58
- %96 = OpLabel
- %97 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %97
- %98 = OpFunctionCall %void %main_1
- %100 = OpLoad %v4float %x_GLF_color
- %101 = OpCompositeConstruct %main_out %100
- %99 = OpFunctionCall %void %tint_symbol_3 %101
+ %98 = OpLabel
+ %100 = OpLoad %v4float %gl_FragCoord_param_1
+ %99 = OpFunctionCall %main_out %main_inner %100
+ %101 = OpCompositeExtract %v4float %99 0
+ OpStore %x_GLF_color_1_1 %101
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.spvasm.expected.spvasm
index 5d23f77..1a4c3c6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
%27 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_28 "x_28"
OpName %x_29 "x_29"
@@ -22,17 +22,21 @@
OpName %x_32 "x_32"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,7 +58,7 @@
%int_0 = OpConstant %int 0
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_28 = OpVariable %_ptr_Function_int Function %21
@@ -144,18 +143,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %15
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.wgsl.expected.spvasm
index 5d23f77..1a4c3c6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitfieldreverse-loop-limit-underflow/0.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
%27 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_28 "x_28"
OpName %x_29 "x_29"
@@ -22,17 +22,21 @@
OpName %x_32 "x_32"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,7 +58,7 @@
%int_0 = OpConstant %int 0
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_28 = OpVariable %_ptr_Function_int Function %21
@@ -144,18 +143,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %15
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.spvasm.expected.spvasm
index 2144540..083d97c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "zero"
OpName %x_6 "x_6"
@@ -17,15 +18,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %x_32 "x_32"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_6 = OpVariable %_ptr_Uniform_buf2 Uniform
@@ -61,12 +64,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %20 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %20
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -78,7 +77,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -138,18 +137,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %23
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.wgsl.expected.spvasm
index 2144540..083d97c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-bitwise-inverse-uniform-condition/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "zero"
OpName %x_6 "x_6"
@@ -17,15 +18,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %x_32 "x_32"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_6 = OpVariable %_ptr_Uniform_buf2 Uniform
@@ -61,12 +64,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %20 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %20
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -78,7 +77,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -138,18 +137,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %23
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.spvasm.expected.spvasm
index fba9af9..3cf4812 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %a "a"
@@ -24,22 +24,22 @@
OpName %i8_1 "i8_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -60,10 +60,10 @@
%float_n1 = OpConstant %float -1
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %149 = OpTypeFunction %void %main_out
+ %149 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %c = OpVariable %_ptr_Function_v4float Function %5
+ %c = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_int Function %20
%i1 = OpVariable %_ptr_Function_int Function %20
%i2 = OpVariable %_ptr_Function_int Function %20
@@ -285,20 +285,20 @@
OpStore %x_GLF_color %148
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %149
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %149
+%gl_FragCoord_param = OpFunctionParameter %v4float
%153 = OpLabel
- %154 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %154
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %154 = OpFunctionCall %void %main_1
+ %155 = OpLoad %v4float %x_GLF_color
+ %156 = OpCompositeConstruct %main_out %155
+ OpReturnValue %156
OpFunctionEnd
%main = OpFunction %void None %11
- %156 = OpLabel
- %157 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %157
- %158 = OpFunctionCall %void %main_1
- %160 = OpLoad %v4float %x_GLF_color
- %161 = OpCompositeConstruct %main_out %160
- %159 = OpFunctionCall %void %tint_symbol_3 %161
+ %158 = OpLabel
+ %160 = OpLoad %v4float %gl_FragCoord_param_1
+ %159 = OpFunctionCall %main_out %main_inner %160
+ %161 = OpCompositeExtract %v4float %159 0
+ OpStore %x_GLF_color_1_1 %161
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.wgsl.expected.spvasm
index fba9af9..3cf4812 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-blockfrequency-several-for-loops/0-opt.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %a "a"
@@ -24,22 +24,22 @@
OpName %i8_1 "i8_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -60,10 +60,10 @@
%float_n1 = OpConstant %float -1
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %149 = OpTypeFunction %void %main_out
+ %149 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %c = OpVariable %_ptr_Function_v4float Function %5
+ %c = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_int Function %20
%i1 = OpVariable %_ptr_Function_int Function %20
%i2 = OpVariable %_ptr_Function_int Function %20
@@ -285,20 +285,20 @@
OpStore %x_GLF_color %148
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %149
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %149
+%gl_FragCoord_param = OpFunctionParameter %v4float
%153 = OpLabel
- %154 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %154
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %154 = OpFunctionCall %void %main_1
+ %155 = OpLoad %v4float %x_GLF_color
+ %156 = OpCompositeConstruct %main_out %155
+ OpReturnValue %156
OpFunctionEnd
%main = OpFunction %void None %11
- %156 = OpLabel
- %157 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %157
- %158 = OpFunctionCall %void %main_1
- %160 = OpLoad %v4float %x_GLF_color
- %161 = OpCompositeConstruct %main_out %160
- %159 = OpFunctionCall %void %tint_symbol_3 %161
+ %158 = OpLabel
+ %160 = OpLoad %v4float %gl_FragCoord_param_1
+ %159 = OpFunctionCall %main_out %main_inner %160
+ %161 = OpCompositeExtract %v4float %159 0
+ OpStore %x_GLF_color_1_1 %161
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.spvasm.expected.spvasm
index 7c6e615..e8871b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 205
+; Bound: 204
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %a "a"
@@ -27,9 +27,9 @@
OpName %x_159_phi "x_159_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -42,9 +42,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -52,18 +56,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -89,7 +88,7 @@
%int_3 = OpConstant %int 3
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %193 = OpTypeFunction %void %main_out
+ %193 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -303,18 +302,17 @@
%173 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %193
-%tint_symbol = OpFunctionParameter %main_out
- %197 = OpLabel
- %198 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %198
- OpReturn
+ %main_inner = OpFunction %main_out None %193
+ %196 = OpLabel
+ %197 = OpFunctionCall %void %main_1
+ %198 = OpLoad %v4float %x_GLF_color
+ %199 = OpCompositeConstruct %main_out %198
+ OpReturnValue %199
OpFunctionEnd
%main = OpFunction %void None %20
- %200 = OpLabel
- %201 = OpFunctionCall %void %main_1
- %203 = OpLoad %v4float %x_GLF_color
- %204 = OpCompositeConstruct %main_out %203
- %202 = OpFunctionCall %void %tint_symbol_2 %204
+ %201 = OpLabel
+ %202 = OpFunctionCall %main_out %main_inner
+ %203 = OpCompositeExtract %v4float %202 0
+ OpStore %x_GLF_color_1_1 %203
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.wgsl.expected.spvasm
index 7c6e615..e8871b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-branch-probability-identity-matrix/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 205
+; Bound: 204
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %a "a"
@@ -27,9 +27,9 @@
OpName %x_159_phi "x_159_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -42,9 +42,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -52,18 +56,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -89,7 +88,7 @@
%int_3 = OpConstant %int 3
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %193 = OpTypeFunction %void %main_out
+ %193 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -303,18 +302,17 @@
%173 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %193
-%tint_symbol = OpFunctionParameter %main_out
- %197 = OpLabel
- %198 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %198
- OpReturn
+ %main_inner = OpFunction %main_out None %193
+ %196 = OpLabel
+ %197 = OpFunctionCall %void %main_1
+ %198 = OpLoad %v4float %x_GLF_color
+ %199 = OpCompositeConstruct %main_out %198
+ OpReturnValue %199
OpFunctionEnd
%main = OpFunction %void None %20
- %200 = OpLabel
- %201 = OpFunctionCall %void %main_1
- %203 = OpLoad %v4float %x_GLF_color
- %204 = OpCompositeConstruct %main_out %203
- %202 = OpFunctionCall %void %tint_symbol_2 %204
+ %201 = OpLabel
+ %202 = OpFunctionCall %main_out %main_inner
+ %203 = OpCompositeExtract %v4float %202 0
+ OpStore %x_GLF_color_1_1 %203
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.spvasm.expected.spvasm
index 7f8bc30..cbd0178 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.spvasm.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%f = OpVariable %_ptr_Function_float Function %21
@@ -90,18 +89,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %15
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.wgsl.expected.spvasm
index 7f8bc30..cbd0178 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cast-float-to-int-and-back/0-opt.wgsl.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%f = OpVariable %_ptr_Function_float Function %21
@@ -90,18 +89,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %15
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.spvasm.expected.spvasm
index 9bb7464..46ff9ef 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 123
+; Bound: 122
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %i "i"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,10 +37,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -79,7 +78,7 @@
%float_0 = OpConstant %float 0
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_3 Function %27
@@ -173,18 +172,17 @@
%91 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %111
-%tint_symbol = OpFunctionParameter %main_out
- %115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %116
- OpReturn
+ %main_inner = OpFunction %main_out None %111
+ %114 = OpLabel
+ %115 = OpFunctionCall %void %main_1
+ %116 = OpLoad %v4float %x_GLF_color
+ %117 = OpCompositeConstruct %main_out %116
+ OpReturnValue %117
OpFunctionEnd
%main = OpFunction %void None %20
- %118 = OpLabel
- %119 = OpFunctionCall %void %main_1
- %121 = OpLoad %v4float %x_GLF_color
- %122 = OpCompositeConstruct %main_out %121
- %120 = OpFunctionCall %void %tint_symbol_2 %122
+ %119 = OpLabel
+ %120 = OpFunctionCall %main_out %main_inner
+ %121 = OpCompositeExtract %v4float %120 0
+ OpStore %x_GLF_color_1_1 %121
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.wgsl.expected.spvasm
index 9bb7464..46ff9ef 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-loop-limit-increment-float-array/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 123
+; Bound: 122
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %i "i"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,10 +37,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -79,7 +78,7 @@
%float_0 = OpConstant %float 0
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_3 Function %27
@@ -173,18 +172,17 @@
%91 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %111
-%tint_symbol = OpFunctionParameter %main_out
- %115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %116
- OpReturn
+ %main_inner = OpFunction %main_out None %111
+ %114 = OpLabel
+ %115 = OpFunctionCall %void %main_1
+ %116 = OpLoad %v4float %x_GLF_color
+ %117 = OpCompositeConstruct %main_out %116
+ OpReturnValue %117
OpFunctionEnd
%main = OpFunction %void None %20
- %118 = OpLabel
- %119 = OpFunctionCall %void %main_1
- %121 = OpLoad %v4float %x_GLF_color
- %122 = OpCompositeConstruct %main_out %121
- %120 = OpFunctionCall %void %tint_symbol_2 %122
+ %119 = OpLabel
+ %120 = OpFunctionCall %main_out %main_inner
+ %121 = OpCompositeExtract %v4float %120 0
+ OpStore %x_GLF_color_1_1 %121
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.spvasm.expected.spvasm
index 81d2e09..ebf3385 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,26 +36,25 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -70,7 +69,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -115,18 +114,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %19
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.wgsl.expected.spvasm
index 81d2e09..ebf3385 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-lower-limit-from-always-false/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,26 +36,25 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -70,7 +69,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -115,18 +114,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %19
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.spvasm.expected.spvasm
index fa87ce8..d98ac5c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 155
+; Bound: 154
; Schema: 0
OpCapability Shader
%109 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
@@ -36,8 +36,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -45,18 +49,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -75,10 +74,10 @@
%_ptr_Function_float = OpTypePointer Function %float
%v4bool = OpTypeVector %bool 4
%main_out = OpTypeStruct %v4float
- %143 = OpTypeFunction %void %main_out
+ %143 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %17
+ %v = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%32 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%33 = OpLoad %int %32
@@ -205,18 +204,17 @@
%123 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %143
-%tint_symbol = OpFunctionParameter %main_out
- %147 = OpLabel
- %148 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %148
- OpReturn
+ %main_inner = OpFunction %main_out None %143
+ %146 = OpLabel
+ %147 = OpFunctionCall %void %main_1
+ %148 = OpLoad %v4float %x_GLF_color
+ %149 = OpCompositeConstruct %main_out %148
+ OpReturnValue %149
OpFunctionEnd
%main = OpFunction %void None %20
- %150 = OpLabel
- %151 = OpFunctionCall %void %main_1
- %153 = OpLoad %v4float %x_GLF_color
- %154 = OpCompositeConstruct %main_out %153
- %152 = OpFunctionCall %void %tint_symbol_2 %154
+ %151 = OpLabel
+ %152 = OpFunctionCall %main_out %main_inner
+ %153 = OpCompositeExtract %v4float %152 0
+ OpStore %x_GLF_color_1_1 %153
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.wgsl.expected.spvasm
index fa87ce8..d98ac5c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-component-condition-using-matrix/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 155
+; Bound: 154
; Schema: 0
OpCapability Shader
%109 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
@@ -36,8 +36,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -45,18 +49,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -75,10 +74,10 @@
%_ptr_Function_float = OpTypePointer Function %float
%v4bool = OpTypeVector %bool 4
%main_out = OpTypeStruct %v4float
- %143 = OpTypeFunction %void %main_out
+ %143 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %17
+ %v = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%32 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
%33 = OpLoad %int %32
@@ -205,18 +204,17 @@
%123 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %143
-%tint_symbol = OpFunctionParameter %main_out
- %147 = OpLabel
- %148 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %148
- OpReturn
+ %main_inner = OpFunction %main_out None %143
+ %146 = OpLabel
+ %147 = OpFunctionCall %void %main_1
+ %148 = OpLoad %v4float %x_GLF_color
+ %149 = OpCompositeConstruct %main_out %148
+ OpReturnValue %149
OpFunctionEnd
%main = OpFunction %void None %20
- %150 = OpLabel
- %151 = OpFunctionCall %void %main_1
- %153 = OpLoad %v4float %x_GLF_color
- %154 = OpCompositeConstruct %main_out %153
- %152 = OpFunctionCall %void %tint_symbol_2 %154
+ %151 = OpLabel
+ %152 = OpFunctionCall %main_out %main_inner
+ %153 = OpCompositeExtract %v4float %152 0
+ OpStore %x_GLF_color_1_1 %153
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.spvasm.expected.spvasm
index 5cf6c3e..111a318 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,26 +36,25 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -73,7 +72,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %26
@@ -124,18 +123,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %19
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.wgsl.expected.spvasm
index 5cf6c3e..111a318 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-element-ceil-negative/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,26 +36,25 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -73,7 +72,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %26
@@ -124,18 +123,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %19
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.spvasm.expected.spvasm
index 758face..6b231fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -36,27 +36,26 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -76,7 +75,7 @@
%v2bool = OpTypeVector %bool 2
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %27
@@ -128,18 +127,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %20
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.wgsl.expected.spvasm
index 758face..6b231fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clamp-vector-variable-negative-offset/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -36,27 +36,26 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -76,7 +75,7 @@
%v2bool = OpTypeVector %bool 2
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %27
@@ -128,18 +127,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %20
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.spvasm.expected.spvasm
index 2a2cc7e..8d3b103 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf1 0 "zero"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %x_57 "x_57"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,9 +35,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -47,12 +50,8 @@
%buf1 = OpTypeStruct %float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %14
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%17 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -67,12 +66,12 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %17
%20 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %24
- %v1 = OpVariable %_ptr_Function_v4float Function %14
- %x_57 = OpVariable %_ptr_Function_v4float Function %14
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_57 = OpVariable %_ptr_Function_v4float Function %5
%32 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%33 = OpLoad %float %32
%34 = OpCompositeConstruct %v2float %33 %33
@@ -123,18 +122,17 @@
OpStore %x_GLF_color %70
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %17
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.wgsl.expected.spvasm
index 2a2cc7e..8d3b103 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-clear-yz-inside-condition/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf1 0 "zero"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
OpName %x_57 "x_57"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,9 +35,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -47,12 +50,8 @@
%buf1 = OpTypeStruct %float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %14
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %14
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%17 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -67,12 +66,12 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %17
%20 = OpLabel
%v0 = OpVariable %_ptr_Function_v2float Function %24
- %v1 = OpVariable %_ptr_Function_v4float Function %14
- %x_57 = OpVariable %_ptr_Function_v4float Function %14
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_57 = OpVariable %_ptr_Function_v4float Function %5
%32 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%33 = OpLoad %float %32
%34 = OpCompositeConstruct %v2float %33 %33
@@ -123,18 +122,17 @@
OpStore %x_GLF_color %70
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %17
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.spvasm.expected.spvasm
index aa2284f..d760fe4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%113 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -22,8 +24,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_uint_values"
OpName %x_16 "x_16"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func0_ "func0_"
OpName %tmp "tmp"
OpName %func1_ "func1_"
@@ -34,9 +34,11 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -60,21 +62,23 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
@@ -89,10 +93,6 @@
%buf0 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_16 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%31 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -112,10 +112,10 @@
%int_5 = OpConstant %int 5
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %155 = OpTypeFunction %void %main_out
+ %155 = OpTypeFunction %main_out %v4float
%func0_ = OpFunction %void None %31
%34 = OpLabel
- %tmp = OpVariable %_ptr_Function_v4float Function %5
+ %tmp = OpVariable %_ptr_Function_v4float Function %7
%39 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
%40 = OpLoad %float %39
%43 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0 %int_1
@@ -278,20 +278,20 @@
%146 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %155
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %155
+%gl_FragCoord_param = OpFunctionParameter %v4float
%159 = OpLabel
- %160 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %160
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %160 = OpFunctionCall %void %main_1
+ %161 = OpLoad %v4float %x_GLF_color
+ %162 = OpCompositeConstruct %main_out %161
+ OpReturnValue %162
OpFunctionEnd
%main = OpFunction %void None %31
- %162 = OpLabel
- %163 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %163
- %164 = OpFunctionCall %void %main_1
- %166 = OpLoad %v4float %x_GLF_color
- %167 = OpCompositeConstruct %main_out %166
- %165 = OpFunctionCall %void %tint_symbol_3 %167
+ %164 = OpLabel
+ %166 = OpLoad %v4float %gl_FragCoord_param_1
+ %165 = OpFunctionCall %main_out %main_inner %166
+ %167 = OpCompositeExtract %v4float %165 0
+ OpStore %x_GLF_color_1_1 %167
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.wgsl.expected.spvasm
index aa2284f..d760fe4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-color-output-undefined-in-unexecuted-branch/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%113 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -22,8 +24,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_uint_values"
OpName %x_16 "x_16"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func0_ "func0_"
OpName %tmp "tmp"
OpName %func1_ "func1_"
@@ -34,9 +34,11 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -60,21 +62,23 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
@@ -89,10 +93,6 @@
%buf0 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_16 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%31 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -112,10 +112,10 @@
%int_5 = OpConstant %int 5
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %155 = OpTypeFunction %void %main_out
+ %155 = OpTypeFunction %main_out %v4float
%func0_ = OpFunction %void None %31
%34 = OpLabel
- %tmp = OpVariable %_ptr_Function_v4float Function %5
+ %tmp = OpVariable %_ptr_Function_v4float Function %7
%39 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
%40 = OpLoad %float %39
%43 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0 %int_1
@@ -278,20 +278,20 @@
%146 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %155
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %155
+%gl_FragCoord_param = OpFunctionParameter %v4float
%159 = OpLabel
- %160 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %160
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %160 = OpFunctionCall %void %main_1
+ %161 = OpLoad %v4float %x_GLF_color
+ %162 = OpCompositeConstruct %main_out %161
+ OpReturnValue %162
OpFunctionEnd
%main = OpFunction %void None %31
- %162 = OpLabel
- %163 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %163
- %164 = OpFunctionCall %void %main_1
- %166 = OpLoad %v4float %x_GLF_color
- %167 = OpCompositeConstruct %main_out %166
- %165 = OpFunctionCall %void %tint_symbol_3 %167
+ %164 = OpLabel
+ %166 = OpLoad %v4float %gl_FragCoord_param_1
+ %165 = OpFunctionCall %main_out %main_inner %166
+ %167 = OpCompositeExtract %v4float %165 0
+ OpStore %x_GLF_color_1_1 %167
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.spvasm.expected.spvasm
index 71352d2..23be372 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.spvasm.expected.spvasm
@@ -5,46 +5,46 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
%buf0 = OpTypeStruct %_arr_float_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%17 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +62,7 @@
%mat4v4float = OpTypeMatrix %v4float 4
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %17
%20 = OpLabel
%23 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -109,20 +109,20 @@
OpStore %x_GLF_color %65
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %66
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %66
+%gl_FragCoord_param = OpFunctionParameter %v4float
%70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %71
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %17
- %73 = OpLabel
- %74 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %74
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_3 %78
+ %75 = OpLabel
+ %77 = OpLoad %v4float %gl_FragCoord_param_1
+ %76 = OpFunctionCall %main_out %main_inner %77
+ %78 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.wgsl.expected.spvasm
index 71352d2..23be372 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-color-overwrite-identity-matrix-multiply/0.wgsl.expected.spvasm
@@ -5,46 +5,46 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
%buf0 = OpTypeStruct %_arr_float_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%17 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +62,7 @@
%mat4v4float = OpTypeMatrix %v4float 4
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %17
%20 = OpLabel
%23 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -109,20 +109,20 @@
OpStore %x_GLF_color %65
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %66
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %66
+%gl_FragCoord_param = OpFunctionParameter %v4float
%70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %71
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %17
- %73 = OpLabel
- %74 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %74
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_3 %78
+ %75 = OpLabel
+ %77 = OpLoad %v4float %gl_FragCoord_param_1
+ %76 = OpFunctionCall %main_out %main_inner %77
+ %78 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.spvasm.expected.spvasm
index f5af17d..0242cbb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 82
+; Bound: 81
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -33,17 +33,18 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -51,8 +52,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%19 = OpTypeFunction %void
%bool = OpTypeBool
@@ -67,7 +66,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %70 = OpTypeFunction %void %main_out
+ %70 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %26
@@ -122,18 +121,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %70
-%tint_symbol = OpFunctionParameter %main_out
- %74 = OpLabel
- %75 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %75
- OpReturn
+ %main_inner = OpFunction %main_out None %70
+ %73 = OpLabel
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %19
- %77 = OpLabel
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_2 %81
+ %78 = OpLabel
+ %79 = OpFunctionCall %main_out %main_inner
+ %80 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.wgsl.expected.spvasm
index f5af17d..0242cbb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-combine-and-or-xor-gt-lt/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 82
+; Bound: 81
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -33,17 +33,18 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -51,8 +52,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%19 = OpTypeFunction %void
%bool = OpTypeBool
@@ -67,7 +66,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %70 = OpTypeFunction %void %main_out
+ %70 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %26
@@ -122,18 +121,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %70
-%tint_symbol = OpFunctionParameter %main_out
- %74 = OpLabel
- %75 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %75
- OpReturn
+ %main_inner = OpFunction %main_out None %70
+ %73 = OpLabel
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %19
- %77 = OpLabel
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_2 %81
+ %78 = OpLabel
+ %79 = OpFunctionCall %main_out %main_inner
+ %80 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.spvasm.expected.spvasm
index 2f722c4..8a2add6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -130,18 +129,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.wgsl.expected.spvasm
index 2f722c4..8a2add6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-condition-loop-index-bitwise-not/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -130,18 +129,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.spvasm.expected.spvasm
index 978adb0..ca6049c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -17,15 +18,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -43,12 +43,13 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -66,8 +67,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -81,7 +80,7 @@
%int_3 = OpConstant %int 3
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%a = OpVariable %_ptr_Function_int Function %30
@@ -148,18 +147,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %24
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.wgsl.expected.spvasm
index 978adb0..ca6049c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-conditional-discard-inside-loop/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -17,15 +18,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -43,12 +43,13 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -66,8 +67,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -81,7 +80,7 @@
%int_3 = OpConstant %int 3
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%a = OpVariable %_ptr_Function_int Function %30
@@ -148,18 +147,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %24
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.spvasm.expected.spvasm
index c4f9009..65d9b95 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
%23 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "quarter"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -57,10 +56,10 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %8
+ %v = OpVariable %_ptr_Function_v4float Function %5
%20 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
%21 = OpLoad %float %20
%27 = OpCompositeConstruct %v4float %float_424_113007 %21 %float_1_29999995 %float_19_6200008
@@ -80,18 +79,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %11
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.wgsl.expected.spvasm
index c4f9009..65d9b95 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-ceil-vec4/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
%23 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "quarter"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -57,10 +56,10 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %8
+ %v = OpVariable %_ptr_Function_v4float Function %5
%20 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
%21 = OpLoad %float %20
%27 = OpCompositeConstruct %v4float %float_424_113007 %21 %float_1_29999995 %float_19_6200008
@@ -80,18 +79,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %11
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.spvasm.expected.spvasm
index e3f49f8..8d6489a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,7 +42,7 @@
%49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%50 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -92,18 +91,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %51
-%tint_symbol = OpFunctionParameter %main_out
- %55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %56
- OpReturn
+ %main_inner = OpFunction %main_out None %51
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %v4float %x_GLF_color
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %8
- %58 = OpLabel
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %v4float %x_GLF_color
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_2 %62
+ %59 = OpLabel
+ %60 = OpFunctionCall %main_out %main_inner
+ %61 = OpCompositeExtract %v4float %60 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.wgsl.expected.spvasm
index 99a8be5..cafe27c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-inside-while/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -43,7 +42,7 @@
%51 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%52 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -97,18 +96,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %8
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.spvasm.expected.spvasm
index 694832d..b4e1fd1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%v4bool = OpTypeVector %bool 4
%38 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -73,18 +72,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.wgsl.expected.spvasm
index 694832d..b4e1fd1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-min/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%v4bool = OpTypeVector %bool 4
%38 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -73,18 +72,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.spvasm.expected.spvasm
index fa00ca6..a993c19 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -49,7 +48,7 @@
%float_1 = OpConstant %float 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -75,18 +74,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.wgsl.expected.spvasm
index fa00ca6..a993c19 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp-vs-original/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -49,7 +48,7 @@
%float_1 = OpConstant %float 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -75,18 +74,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.spvasm.expected.spvasm
index b6f79eb..b5f5b13 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "fourtytwo"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37_phi "x_37_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%47 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %18
@@ -91,18 +90,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.wgsl.expected.spvasm
index b6f79eb..b5f5b13 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-clamp/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "fourtytwo"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37_phi "x_37_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%47 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %18
@@ -91,18 +90,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.spvasm.expected.spvasm
index 0e37e00..794cc03 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %one "one"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -39,7 +38,7 @@
%30 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%one = OpVariable %_ptr_Function_float Function %14
@@ -60,18 +59,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.wgsl.expected.spvasm
index 0e37e00..794cc03 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-dot-condition-true/0-opt.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %one "one"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -39,7 +38,7 @@
%30 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%one = OpVariable %_ptr_Function_float Function %14
@@ -60,18 +59,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.spvasm.expected.spvasm
index b16c6e2..1c34f93 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.spvasm.expected.spvasm
@@ -6,42 +6,42 @@
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -56,7 +56,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%21 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -77,20 +77,20 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %40
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %40
+%gl_FragCoord_param = OpFunctionParameter %v4float
%44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %45
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %14
- %47 = OpLabel
- %48 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %48
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_3 %52
+ %49 = OpLabel
+ %51 = OpLoad %v4float %gl_FragCoord_param_1
+ %50 = OpFunctionCall %main_out %main_inner %51
+ %52 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.wgsl.expected.spvasm
index b16c6e2..1c34f93 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-gte-const-first/0.wgsl.expected.spvasm
@@ -6,42 +6,42 @@
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -56,7 +56,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%21 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -77,20 +77,20 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %40
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %40
+%gl_FragCoord_param = OpFunctionParameter %v4float
%44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %45
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %14
- %47 = OpLabel
- %48 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %48
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_3 %52
+ %49 = OpLabel
+ %51 = OpLoad %v4float %gl_FragCoord_param_1
+ %50 = OpFunctionCall %main_out %main_inner %51
+ %52 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.spvasm.expected.spvasm
index 1144dfa..2da9db9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %highSigned "highSigned"
OpName %highUnsigned "highUnsigned"
@@ -23,28 +23,27 @@
OpName %x_79_phi "x_79_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -73,7 +72,7 @@
%98 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%99 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%highSigned = OpVariable %_ptr_Function_int Function %18
@@ -174,18 +173,17 @@
%93 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %12
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.wgsl.expected.spvasm
index 1144dfa..2da9db9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-min-as-loop-range/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %highSigned "highSigned"
OpName %highUnsigned "highUnsigned"
@@ -23,28 +23,27 @@
OpName %x_79_phi "x_79_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -73,7 +72,7 @@
%98 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%99 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%highSigned = OpVariable %_ptr_Function_int Function %18
@@ -174,18 +173,17 @@
%93 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %12
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.spvasm.expected.spvasm
index 7607b44..e806db8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.spvasm.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%21 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -51,7 +50,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpFDiv %float %float_1 %float_1
@@ -84,18 +83,17 @@
%28 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %15
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.wgsl.expected.spvasm
index 91368f6..5cbad93 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-mod-one-one-lte/0-opt.wgsl.expected.spvasm
@@ -1,35 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -38,8 +39,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -50,7 +49,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%20 = OpFRem %float %float_1 %float_1
@@ -80,18 +79,17 @@
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %15
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.spvasm.expected.spvasm
index fc4fc19..51013b8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_48 "x_48"
OpName %x_49_phi "x_49_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,7 +73,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -134,18 +133,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %20
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.wgsl.expected.spvasm
index fc4fc19..51013b8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-pow-large-exp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_48 "x_48"
OpName %x_49_phi "x_49_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,7 +73,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -134,18 +133,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %20
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.spvasm.expected.spvasm
index ed5bd9f..8a2cc65 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_31_phi "x_31_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%55 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_30 = OpVariable %_ptr_Function_bool Function %18
@@ -112,18 +111,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %11
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.wgsl.expected.spvasm
index ed5bd9f..8a2cc65 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-same-condition/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_31_phi "x_31_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%55 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_30 = OpVariable %_ptr_Function_bool Function %18
@@ -112,18 +111,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %11
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.spvasm.expected.spvasm
index 78fda08..09834ee 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_38 "x_38"
OpName %x_39_phi "x_39_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -57,7 +56,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%49 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%f = OpVariable %_ptr_Function_float Function %18
@@ -94,18 +93,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.wgsl.expected.spvasm
index 78fda08..09834ee 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-sinh-inf/0-opt.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_38 "x_38"
OpName %x_39_phi "x_39_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -57,7 +56,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%49 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%f = OpVariable %_ptr_Function_float Function %18
@@ -94,18 +93,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.spvasm.expected.spvasm
index 5d950f1..1720bd1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_26 "x_26"
OpName %x_39 "x_39"
@@ -19,18 +19,17 @@
OpName %x_4 "x_4"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%71 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%72 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_26 = OpVariable %_ptr_Function_v2float Function %15
@@ -128,18 +127,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %8
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.wgsl.expected.spvasm
index 5d950f1..1720bd1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-const-folding-vector-shuffle/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_26 "x_26"
OpName %x_39 "x_39"
@@ -19,18 +19,17 @@
OpName %x_4 "x_4"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%71 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%72 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_26 = OpVariable %_ptr_Function_v2float Function %15
@@ -128,18 +127,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %8
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.spvasm.expected.spvasm
index ad265d4..df0ff83 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 45
+; Bound: 44
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -38,7 +37,7 @@
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%32 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %33 = OpTypeFunction %void %main_out
+ %33 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%f = OpVariable %_ptr_Function_float Function %14
@@ -61,18 +60,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %33
-%tint_symbol = OpFunctionParameter %main_out
- %37 = OpLabel
- %38 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %38
- OpReturn
+ %main_inner = OpFunction %main_out None %33
+ %36 = OpLabel
+ %37 = OpFunctionCall %void %main_1
+ %38 = OpLoad %v4float %x_GLF_color
+ %39 = OpCompositeConstruct %main_out %38
+ OpReturnValue %39
OpFunctionEnd
%main = OpFunction %void None %8
- %40 = OpLabel
- %41 = OpFunctionCall %void %main_1
- %43 = OpLoad %v4float %x_GLF_color
- %44 = OpCompositeConstruct %main_out %43
- %42 = OpFunctionCall %void %tint_symbol_2 %44
+ %41 = OpLabel
+ %42 = OpFunctionCall %main_out %main_inner
+ %43 = OpCompositeExtract %v4float %42 0
+ OpStore %x_GLF_color_1_1 %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.wgsl.expected.spvasm
index b1523b5..2063706 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constant-folding-atan-over-tanh/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -38,7 +37,7 @@
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %main_out
+ %35 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%f = OpVariable %_ptr_Function_float Function %14
@@ -66,18 +65,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %40
- OpReturn
+ %main_inner = OpFunction %main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %main_1
+ %40 = OpLoad %v4float %x_GLF_color
+ %41 = OpCompositeConstruct %main_out %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %8
- %42 = OpLabel
- %43 = OpFunctionCall %void %main_1
- %45 = OpLoad %v4float %x_GLF_color
- %46 = OpCompositeConstruct %main_out %45
- %44 = OpFunctionCall %void %tint_symbol_2 %46
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.spvasm.expected.spvasm
index 769deeb..92f35f4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 124
+; Bound: 123
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %f "f"
OpName %a "a"
@@ -21,17 +21,21 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -39,13 +43,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %int %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%85 = OpConstantNull %float
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float
- %112 = OpTypeFunction %void %main_out
+ %112 = OpTypeFunction %main_out
%func_f1_ = OpFunction %int None %15
%f = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -176,18 +175,17 @@
%92 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %112
-%tint_symbol = OpFunctionParameter %main_out
- %116 = OpLabel
- %117 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %117
- OpReturn
+ %main_inner = OpFunction %main_out None %112
+ %115 = OpLabel
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %80
- %119 = OpLabel
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_2 %123
+ %120 = OpLabel
+ %121 = OpFunctionCall %main_out %main_inner
+ %122 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.wgsl.expected.spvasm
index 769deeb..92f35f4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constants-combine-add-sub/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 124
+; Bound: 123
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %f "f"
OpName %a "a"
@@ -21,17 +21,21 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -39,13 +43,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %int %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%85 = OpConstantNull %float
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float
- %112 = OpTypeFunction %void %main_out
+ %112 = OpTypeFunction %main_out
%func_f1_ = OpFunction %int None %15
%f = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -176,18 +175,17 @@
%92 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %112
-%tint_symbol = OpFunctionParameter %main_out
- %116 = OpLabel
- %117 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %117
- OpReturn
+ %main_inner = OpFunction %main_out None %112
+ %115 = OpLabel
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %80
- %119 = OpLabel
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_2 %123
+ %120 = OpLabel
+ %121 = OpFunctionCall %main_out %main_inner
+ %122 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.spvasm.expected.spvasm
index cfefd60..db3fe1c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %mixed "mixed"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -55,7 +54,7 @@
%float_0 = OpConstant %float 0
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%mixed = OpVariable %_ptr_Function_v2float Function %18
@@ -80,18 +79,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %12
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.wgsl.expected.spvasm
index cfefd60..db3fe1c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-constants-mix-uniform/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %mixed "mixed"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -55,7 +54,7 @@
%float_0 = OpConstant %float 0
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%mixed = OpVariable %_ptr_Function_v2float Function %18
@@ -80,18 +79,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %12
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.spvasm.expected.spvasm
index 373c260..21f4619 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -14,13 +15,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "zero"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -32,12 +32,13 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -49,8 +50,6 @@
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +61,7 @@
%int_3 = OpConstant %int 3
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%25 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -125,18 +124,17 @@
OpStore %x_GLF_color %71
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %18
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.wgsl.expected.spvasm
index 373c260..21f4619 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-continue-break-discard-return-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -14,13 +15,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "zero"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -32,12 +32,13 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -49,8 +50,6 @@
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +61,7 @@
%int_3 = OpConstant %int 3
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%25 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -125,18 +124,17 @@
OpStore %x_GLF_color %71
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %18
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.spvasm.expected.spvasm
index b34c579..c0c863c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_50 "x_50"
OpName %x_15 "x_15"
@@ -25,8 +25,7 @@
OpName %x_63_phi "x_63_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_Array_i1_2_1_ "func_struct_Array_i1_2_1_"
OpName %a "a"
@@ -39,26 +38,26 @@
OpName %x_77_phi "x_77_phi"
OpName %x_13_phi "x_13_phi"
OpName %x_87_phi "x_87_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %Array 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -85,8 +84,8 @@
%70 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%71 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
- %84 = OpTypeFunction %int %_ptr_Function_Array
+ %72 = OpTypeFunction %main_out
+ %83 = OpTypeFunction %int %_ptr_Function_Array
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_50 = OpVariable %_ptr_Function_bool Function %20
@@ -161,24 +160,23 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %12
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
-%func_struct_Array_i1_2_1_ = OpFunction %int None %84
+%func_struct_Array_i1_2_1_ = OpFunction %int None %83
%a = OpFunctionParameter %_ptr_Function_Array
- %87 = OpLabel
+ %86 = OpLabel
%x_70 = OpVariable %_ptr_Function_bool Function %20
%x_12 = OpVariable %_ptr_Function_int Function %23
%x_13 = OpVariable %_ptr_Function_int Function %23
@@ -190,60 +188,60 @@
%x_87_phi = OpVariable %_ptr_Function_bool Function %20
OpStore %x_70 %false
OpStore %x_72_phi %false
- OpBranch %93
- %93 = OpLabel
- OpLoopMerge %94 %95 None
- OpBranch %96
- %96 = OpLabel
- %101 = OpLoad %bool %x_72_phi
- OpStore %x_77_phi %101
- OpBranch %102
- %102 = OpLabel
- OpLoopMerge %103 %104 None
- OpBranch %105
- %105 = OpLabel
- %106 = OpLoad %bool %x_77_phi
- OpStore %x_77 %106
- %107 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
- %108 = OpLoad %int %107
- %110 = OpAccessChain %_ptr_Function_int %a %uint_0 %108
- %111 = OpLoad %int %110
- %112 = OpIEqual %bool %111 %int_1
- OpSelectionMerge %113 None
- OpBranchConditional %112 %114 %113
- %114 = OpLabel
+ OpBranch %92
+ %92 = OpLabel
+ OpLoopMerge %93 %94 None
+ OpBranch %95
+ %95 = OpLabel
+ %100 = OpLoad %bool %x_72_phi
+ OpStore %x_77_phi %100
+ OpBranch %101
+ %101 = OpLabel
+ OpLoopMerge %102 %103 None
+ OpBranch %104
+ %104 = OpLabel
+ %105 = OpLoad %bool %x_77_phi
+ OpStore %x_77 %105
+ %106 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
+ %107 = OpLoad %int %106
+ %109 = OpAccessChain %_ptr_Function_int %a %uint_0 %107
+ %110 = OpLoad %int %109
+ %111 = OpIEqual %bool %110 %int_1
+ OpSelectionMerge %112 None
+ OpBranchConditional %111 %113 %112
+ %113 = OpLabel
OpStore %x_70 %true
OpStore %x_12 %int_1
OpStore %x_13_phi %int_1
OpStore %x_87_phi %true
- OpBranch %103
- %113 = OpLabel
+ OpBranch %102
+ %112 = OpLabel
OpStore %x_13_phi %int_0
- %115 = OpLoad %bool %x_77
- OpStore %x_87_phi %115
- OpBranch %103
- %104 = OpLabel
- OpStore %x_77_phi %false
+ %114 = OpLoad %bool %x_77
+ OpStore %x_87_phi %114
OpBranch %102
%103 = OpLabel
- %116 = OpLoad %int %x_13_phi
- OpStore %x_13 %116
- %117 = OpLoad %bool %x_87_phi
- %118 = OpLoad %int %x_13
- OpStore %x_14_phi %118
- OpSelectionMerge %119 None
- OpBranchConditional %117 %120 %119
- %120 = OpLabel
- OpBranch %94
+ OpStore %x_77_phi %false
+ OpBranch %101
+ %102 = OpLabel
+ %115 = OpLoad %int %x_13_phi
+ OpStore %x_13 %115
+ %116 = OpLoad %bool %x_87_phi
+ %117 = OpLoad %int %x_13
+ OpStore %x_14_phi %117
+ OpSelectionMerge %118 None
+ OpBranchConditional %116 %119 %118
%119 = OpLabel
+ OpBranch %93
+ %118 = OpLabel
OpStore %x_70 %true
OpStore %x_12 %int_1
OpStore %x_14_phi %int_1
- OpBranch %94
- %95 = OpLabel
- OpStore %x_72_phi %false
OpBranch %93
%94 = OpLabel
- %121 = OpLoad %int %x_14_phi
- OpReturnValue %121
+ OpStore %x_72_phi %false
+ OpBranch %92
+ %93 = OpLabel
+ %120 = OpLoad %int %x_14_phi
+ OpReturnValue %120
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.wgsl.expected.spvasm
index b34c579..c0c863c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-func-argument/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_50 "x_50"
OpName %x_15 "x_15"
@@ -25,8 +25,7 @@
OpName %x_63_phi "x_63_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_Array_i1_2_1_ "func_struct_Array_i1_2_1_"
OpName %a "a"
@@ -39,26 +38,26 @@
OpName %x_77_phi "x_77_phi"
OpName %x_13_phi "x_13_phi"
OpName %x_87_phi "x_87_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %Array 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -85,8 +84,8 @@
%70 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%71 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
- %84 = OpTypeFunction %int %_ptr_Function_Array
+ %72 = OpTypeFunction %main_out
+ %83 = OpTypeFunction %int %_ptr_Function_Array
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_50 = OpVariable %_ptr_Function_bool Function %20
@@ -161,24 +160,23 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %12
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
-%func_struct_Array_i1_2_1_ = OpFunction %int None %84
+%func_struct_Array_i1_2_1_ = OpFunction %int None %83
%a = OpFunctionParameter %_ptr_Function_Array
- %87 = OpLabel
+ %86 = OpLabel
%x_70 = OpVariable %_ptr_Function_bool Function %20
%x_12 = OpVariable %_ptr_Function_int Function %23
%x_13 = OpVariable %_ptr_Function_int Function %23
@@ -190,60 +188,60 @@
%x_87_phi = OpVariable %_ptr_Function_bool Function %20
OpStore %x_70 %false
OpStore %x_72_phi %false
- OpBranch %93
- %93 = OpLabel
- OpLoopMerge %94 %95 None
- OpBranch %96
- %96 = OpLabel
- %101 = OpLoad %bool %x_72_phi
- OpStore %x_77_phi %101
- OpBranch %102
- %102 = OpLabel
- OpLoopMerge %103 %104 None
- OpBranch %105
- %105 = OpLabel
- %106 = OpLoad %bool %x_77_phi
- OpStore %x_77 %106
- %107 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
- %108 = OpLoad %int %107
- %110 = OpAccessChain %_ptr_Function_int %a %uint_0 %108
- %111 = OpLoad %int %110
- %112 = OpIEqual %bool %111 %int_1
- OpSelectionMerge %113 None
- OpBranchConditional %112 %114 %113
- %114 = OpLabel
+ OpBranch %92
+ %92 = OpLabel
+ OpLoopMerge %93 %94 None
+ OpBranch %95
+ %95 = OpLabel
+ %100 = OpLoad %bool %x_72_phi
+ OpStore %x_77_phi %100
+ OpBranch %101
+ %101 = OpLabel
+ OpLoopMerge %102 %103 None
+ OpBranch %104
+ %104 = OpLabel
+ %105 = OpLoad %bool %x_77_phi
+ OpStore %x_77 %105
+ %106 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
+ %107 = OpLoad %int %106
+ %109 = OpAccessChain %_ptr_Function_int %a %uint_0 %107
+ %110 = OpLoad %int %109
+ %111 = OpIEqual %bool %110 %int_1
+ OpSelectionMerge %112 None
+ OpBranchConditional %111 %113 %112
+ %113 = OpLabel
OpStore %x_70 %true
OpStore %x_12 %int_1
OpStore %x_13_phi %int_1
OpStore %x_87_phi %true
- OpBranch %103
- %113 = OpLabel
+ OpBranch %102
+ %112 = OpLabel
OpStore %x_13_phi %int_0
- %115 = OpLoad %bool %x_77
- OpStore %x_87_phi %115
- OpBranch %103
- %104 = OpLabel
- OpStore %x_77_phi %false
+ %114 = OpLoad %bool %x_77
+ OpStore %x_87_phi %114
OpBranch %102
%103 = OpLabel
- %116 = OpLoad %int %x_13_phi
- OpStore %x_13 %116
- %117 = OpLoad %bool %x_87_phi
- %118 = OpLoad %int %x_13
- OpStore %x_14_phi %118
- OpSelectionMerge %119 None
- OpBranchConditional %117 %120 %119
- %120 = OpLabel
- OpBranch %94
+ OpStore %x_77_phi %false
+ OpBranch %101
+ %102 = OpLabel
+ %115 = OpLoad %int %x_13_phi
+ OpStore %x_13 %115
+ %116 = OpLoad %bool %x_87_phi
+ %117 = OpLoad %int %x_13
+ OpStore %x_14_phi %117
+ OpSelectionMerge %118 None
+ OpBranchConditional %116 %119 %118
%119 = OpLabel
+ OpBranch %93
+ %118 = OpLabel
OpStore %x_70 %true
OpStore %x_12 %int_1
OpStore %x_14_phi %int_1
- OpBranch %94
- %95 = OpLabel
- OpStore %x_72_phi %false
OpBranch %93
%94 = OpLabel
- %121 = OpLoad %int %x_14_phi
- OpReturnValue %121
+ OpStore %x_72_phi %false
+ OpBranch %92
+ %93 = OpLabel
+ %120 = OpLoad %int %x_14_phi
+ OpReturnValue %120
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.spvasm.expected.spvasm
index 71364d1..32d53f6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 59
+; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %Array "Array"
OpMemberName %Array 0 "values"
@@ -20,29 +20,28 @@
OpName %one "one"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %Array 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -61,7 +60,7 @@
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_Array Function %22
@@ -90,18 +89,17 @@
OpStore %x_GLF_color %46
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %47
-%tint_symbol = OpFunctionParameter %main_out
- %51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %52
- OpReturn
+ %main_inner = OpFunction %main_out None %47
+ %50 = OpLabel
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %12
- %54 = OpLabel
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_2 %58
+ %55 = OpLabel
+ %56 = OpFunctionCall %main_out %main_inner
+ %57 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.wgsl.expected.spvasm
index 71364d1..32d53f6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-no-stores/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 59
+; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %Array "Array"
OpMemberName %Array 0 "values"
@@ -20,29 +20,28 @@
OpName %one "one"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %Array 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -61,7 +60,7 @@
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_Array Function %22
@@ -90,18 +89,17 @@
OpStore %x_GLF_color %46
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %47
-%tint_symbol = OpFunctionParameter %main_out
- %51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %52
- OpReturn
+ %main_inner = OpFunction %main_out None %47
+ %50 = OpLabel
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %12
- %54 = OpLabel
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_2 %58
+ %55 = OpLabel
+ %56 = OpFunctionCall %main_out %main_inner
+ %57 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.spvasm.expected.spvasm
index 83f6e26..2b1ddd8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 129
+; Bound: 128
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_52 "x_52"
OpName %x_17 "x_17"
@@ -27,8 +27,7 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_Array_i1_2_1_ "func_struct_Array_i1_2_1_"
OpName %a "a"
@@ -41,26 +40,26 @@
OpName %x_81_phi "x_81_phi"
OpName %x_14_phi "x_14_phi"
OpName %x_91_phi "x_91_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %Array 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -87,8 +86,8 @@
%77 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%78 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
- %91 = OpTypeFunction %int %_ptr_Function_Array
+ %79 = OpTypeFunction %main_out
+ %90 = OpTypeFunction %int %_ptr_Function_Array
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_52 = OpVariable %_ptr_Function_bool Function %20
@@ -173,24 +172,23 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %12
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
-%func_struct_Array_i1_2_1_ = OpFunction %int None %91
+%func_struct_Array_i1_2_1_ = OpFunction %int None %90
%a = OpFunctionParameter %_ptr_Function_Array
- %94 = OpLabel
+ %93 = OpLabel
%x_74 = OpVariable %_ptr_Function_bool Function %20
%x_13 = OpVariable %_ptr_Function_int Function %23
%x_14 = OpVariable %_ptr_Function_int Function %23
@@ -202,60 +200,60 @@
%x_91_phi = OpVariable %_ptr_Function_bool Function %20
OpStore %x_74 %false
OpStore %x_76_phi %false
- OpBranch %100
- %100 = OpLabel
- OpLoopMerge %101 %102 None
- OpBranch %103
- %103 = OpLabel
- %108 = OpLoad %bool %x_76_phi
- OpStore %x_81_phi %108
- OpBranch %109
- %109 = OpLabel
- OpLoopMerge %110 %111 None
- OpBranch %112
- %112 = OpLabel
- %113 = OpLoad %bool %x_81_phi
- OpStore %x_81 %113
- %114 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
- %115 = OpLoad %int %114
- %117 = OpAccessChain %_ptr_Function_int %a %uint_0 %115
- %118 = OpLoad %int %117
- %119 = OpIEqual %bool %118 %int_0
- OpSelectionMerge %120 None
- OpBranchConditional %119 %121 %120
- %121 = OpLabel
+ OpBranch %99
+ %99 = OpLabel
+ OpLoopMerge %100 %101 None
+ OpBranch %102
+ %102 = OpLabel
+ %107 = OpLoad %bool %x_76_phi
+ OpStore %x_81_phi %107
+ OpBranch %108
+ %108 = OpLabel
+ OpLoopMerge %109 %110 None
+ OpBranch %111
+ %111 = OpLabel
+ %112 = OpLoad %bool %x_81_phi
+ OpStore %x_81 %112
+ %113 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
+ %114 = OpLoad %int %113
+ %116 = OpAccessChain %_ptr_Function_int %a %uint_0 %114
+ %117 = OpLoad %int %116
+ %118 = OpIEqual %bool %117 %int_0
+ OpSelectionMerge %119 None
+ OpBranchConditional %118 %120 %119
+ %120 = OpLabel
OpStore %x_74 %true
OpStore %x_13 %int_42
OpStore %x_14_phi %int_42
OpStore %x_91_phi %true
- OpBranch %110
- %120 = OpLabel
+ OpBranch %109
+ %119 = OpLabel
OpStore %x_14_phi %int_0
- %122 = OpLoad %bool %x_81
- OpStore %x_91_phi %122
- OpBranch %110
- %111 = OpLabel
- OpStore %x_81_phi %false
+ %121 = OpLoad %bool %x_81
+ OpStore %x_91_phi %121
OpBranch %109
%110 = OpLabel
- %123 = OpLoad %int %x_14_phi
- OpStore %x_14 %123
- %124 = OpLoad %bool %x_91_phi
- %125 = OpLoad %int %x_14
- OpStore %x_15_phi %125
- OpSelectionMerge %126 None
- OpBranchConditional %124 %127 %126
- %127 = OpLabel
- OpBranch %101
+ OpStore %x_81_phi %false
+ OpBranch %108
+ %109 = OpLabel
+ %122 = OpLoad %int %x_14_phi
+ OpStore %x_14 %122
+ %123 = OpLoad %bool %x_91_phi
+ %124 = OpLoad %int %x_14
+ OpStore %x_15_phi %124
+ OpSelectionMerge %125 None
+ OpBranchConditional %123 %126 %125
%126 = OpLabel
+ OpBranch %100
+ %125 = OpLabel
OpStore %x_74 %true
OpStore %x_13 %int_42
OpStore %x_15_phi %int_42
- OpBranch %101
- %102 = OpLabel
- OpStore %x_76_phi %false
OpBranch %100
%101 = OpLabel
- %128 = OpLoad %int %x_15_phi
- OpReturnValue %128
+ OpStore %x_76_phi %false
+ OpBranch %99
+ %100 = OpLabel
+ %127 = OpLoad %int %x_15_phi
+ OpReturnValue %127
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.wgsl.expected.spvasm
index 83f6e26..2b1ddd8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-copy-prop-arrays-param-uniform/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 129
+; Bound: 128
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_52 "x_52"
OpName %x_17 "x_17"
@@ -27,8 +27,7 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_Array_i1_2_1_ "func_struct_Array_i1_2_1_"
OpName %a "a"
@@ -41,26 +40,26 @@
OpName %x_81_phi "x_81_phi"
OpName %x_14_phi "x_14_phi"
OpName %x_91_phi "x_91_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %Array 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -87,8 +86,8 @@
%77 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%78 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
- %91 = OpTypeFunction %int %_ptr_Function_Array
+ %79 = OpTypeFunction %main_out
+ %90 = OpTypeFunction %int %_ptr_Function_Array
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_52 = OpVariable %_ptr_Function_bool Function %20
@@ -173,24 +172,23 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %12
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
-%func_struct_Array_i1_2_1_ = OpFunction %int None %91
+%func_struct_Array_i1_2_1_ = OpFunction %int None %90
%a = OpFunctionParameter %_ptr_Function_Array
- %94 = OpLabel
+ %93 = OpLabel
%x_74 = OpVariable %_ptr_Function_bool Function %20
%x_13 = OpVariable %_ptr_Function_int Function %23
%x_14 = OpVariable %_ptr_Function_int Function %23
@@ -202,60 +200,60 @@
%x_91_phi = OpVariable %_ptr_Function_bool Function %20
OpStore %x_74 %false
OpStore %x_76_phi %false
- OpBranch %100
- %100 = OpLabel
- OpLoopMerge %101 %102 None
- OpBranch %103
- %103 = OpLabel
- %108 = OpLoad %bool %x_76_phi
- OpStore %x_81_phi %108
- OpBranch %109
- %109 = OpLabel
- OpLoopMerge %110 %111 None
- OpBranch %112
- %112 = OpLabel
- %113 = OpLoad %bool %x_81_phi
- OpStore %x_81 %113
- %114 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
- %115 = OpLoad %int %114
- %117 = OpAccessChain %_ptr_Function_int %a %uint_0 %115
- %118 = OpLoad %int %117
- %119 = OpIEqual %bool %118 %int_0
- OpSelectionMerge %120 None
- OpBranchConditional %119 %121 %120
- %121 = OpLabel
+ OpBranch %99
+ %99 = OpLabel
+ OpLoopMerge %100 %101 None
+ OpBranch %102
+ %102 = OpLabel
+ %107 = OpLoad %bool %x_76_phi
+ OpStore %x_81_phi %107
+ OpBranch %108
+ %108 = OpLabel
+ OpLoopMerge %109 %110 None
+ OpBranch %111
+ %111 = OpLabel
+ %112 = OpLoad %bool %x_81_phi
+ OpStore %x_81 %112
+ %113 = OpAccessChain %_ptr_Uniform_int %x_8 %uint_0
+ %114 = OpLoad %int %113
+ %116 = OpAccessChain %_ptr_Function_int %a %uint_0 %114
+ %117 = OpLoad %int %116
+ %118 = OpIEqual %bool %117 %int_0
+ OpSelectionMerge %119 None
+ OpBranchConditional %118 %120 %119
+ %120 = OpLabel
OpStore %x_74 %true
OpStore %x_13 %int_42
OpStore %x_14_phi %int_42
OpStore %x_91_phi %true
- OpBranch %110
- %120 = OpLabel
+ OpBranch %109
+ %119 = OpLabel
OpStore %x_14_phi %int_0
- %122 = OpLoad %bool %x_81
- OpStore %x_91_phi %122
- OpBranch %110
- %111 = OpLabel
- OpStore %x_81_phi %false
+ %121 = OpLoad %bool %x_81
+ OpStore %x_91_phi %121
OpBranch %109
%110 = OpLabel
- %123 = OpLoad %int %x_14_phi
- OpStore %x_14 %123
- %124 = OpLoad %bool %x_91_phi
- %125 = OpLoad %int %x_14
- OpStore %x_15_phi %125
- OpSelectionMerge %126 None
- OpBranchConditional %124 %127 %126
- %127 = OpLabel
- OpBranch %101
+ OpStore %x_81_phi %false
+ OpBranch %108
+ %109 = OpLabel
+ %122 = OpLoad %int %x_14_phi
+ OpStore %x_14 %122
+ %123 = OpLoad %bool %x_91_phi
+ %124 = OpLoad %int %x_14
+ OpStore %x_15_phi %124
+ OpSelectionMerge %125 None
+ OpBranchConditional %123 %126 %125
%126 = OpLabel
+ OpBranch %100
+ %125 = OpLabel
OpStore %x_74 %true
OpStore %x_13 %int_42
OpStore %x_15_phi %int_42
- OpBranch %101
- %102 = OpLabel
- OpStore %x_76_phi %false
OpBranch %100
%101 = OpLabel
- %128 = OpLoad %int %x_15_phi
- OpReturnValue %128
+ OpStore %x_76_phi %false
+ OpBranch %99
+ %100 = OpLabel
+ %127 = OpLoad %int %x_15_phi
+ OpReturnValue %127
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.spvasm.expected.spvasm
index e90552e..ac15259 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,14 +16,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -35,26 +35,25 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf1 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -67,10 +66,10 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %11
+ %v = OpVariable %_ptr_Function_v4float Function %5
%28 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%29 = OpLoad %float %28
%32 = OpExtInst %v4float %31 Cosh %34
@@ -91,18 +90,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %19
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.wgsl.expected.spvasm
index e90552e..ac15259 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cosh-clamped-to-one/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,14 +16,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -35,26 +35,25 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf1 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -67,10 +66,10 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %11
+ %v = OpVariable %_ptr_Function_v4float Function %5
%28 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%29 = OpLoad %float %28
%32 = OpExtInst %v4float %31 Cosh %34
@@ -91,18 +90,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %19
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.spvasm.expected.spvasm
index fe39eb7..9328b25 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 142
+; Bound: 141
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -21,18 +21,22 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -65,7 +64,7 @@
%false = OpConstantFalse %bool
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %130 = OpTypeFunction %void %main_out
+ %130 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -214,18 +213,17 @@
%115 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %130
-%tint_symbol = OpFunctionParameter %main_out
- %134 = OpLabel
- %135 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %135
- OpReturn
+ %main_inner = OpFunction %main_out None %130
+ %133 = OpLabel
+ %134 = OpFunctionCall %void %main_1
+ %135 = OpLoad %v4float %x_GLF_color
+ %136 = OpCompositeConstruct %main_out %135
+ OpReturnValue %136
OpFunctionEnd
%main = OpFunction %void None %15
- %137 = OpLabel
- %138 = OpFunctionCall %void %main_1
- %140 = OpLoad %v4float %x_GLF_color
- %141 = OpCompositeConstruct %main_out %140
- %139 = OpFunctionCall %void %tint_symbol_2 %141
+ %138 = OpLabel
+ %139 = OpFunctionCall %main_out %main_inner
+ %140 = OpCompositeExtract %v4float %139 0
+ OpStore %x_GLF_color_1_1 %140
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.wgsl.expected.spvasm
index fe39eb7..9328b25 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 142
+; Bound: 141
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -21,18 +21,22 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -65,7 +64,7 @@
%false = OpConstantFalse %bool
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %130 = OpTypeFunction %void %main_out
+ %130 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -214,18 +213,17 @@
%115 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %130
-%tint_symbol = OpFunctionParameter %main_out
- %134 = OpLabel
- %135 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %135
- OpReturn
+ %main_inner = OpFunction %main_out None %130
+ %133 = OpLabel
+ %134 = OpFunctionCall %void %main_1
+ %135 = OpLoad %v4float %x_GLF_color
+ %136 = OpCompositeConstruct %main_out %135
+ OpReturnValue %136
OpFunctionEnd
%main = OpFunction %void None %15
- %137 = OpLabel
- %138 = OpFunctionCall %void %main_1
- %140 = OpLoad %v4float %x_GLF_color
- %141 = OpCompositeConstruct %main_out %140
- %139 = OpFunctionCall %void %tint_symbol_2 %141
+ %138 = OpLabel
+ %139 = OpFunctionCall %main_out %main_inner
+ %140 = OpCompositeExtract %v4float %139 0
+ OpStore %x_GLF_color_1_1 %140
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.spvasm.expected.spvasm
index cb6d107..ce1a451 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -18,19 +18,18 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -54,7 +53,7 @@
%float_1 = OpConstant %float 1
%85 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_int Function %15
@@ -161,18 +160,17 @@
%82 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %8
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.wgsl.expected.spvasm
index cb6d107..ce1a451 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-cumulate-loops-unreachable/1.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -18,19 +18,18 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -54,7 +53,7 @@
%float_1 = OpConstant %float 1
%85 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_int Function %15
@@ -161,18 +160,17 @@
%82 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %8
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.spvasm.expected.spvasm
index 5e0a897..98f757a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 121
+; Bound: 120
; Schema: 0
OpCapability Shader
%58 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A1 "A1"
OpName %a "a"
@@ -24,9 +24,9 @@
OpName %x_36 "x_36"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_3_0 = OpTypeArray %float %uint_3
@@ -79,7 +78,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%A1 = OpVariable %_ptr_Function__arr_float_uint_3_0 Function %26
@@ -169,18 +168,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %109
-%tint_symbol = OpFunctionParameter %main_out
- %113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %114
- OpReturn
+ %main_inner = OpFunction %main_out None %109
+ %112 = OpLabel
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %19
- %116 = OpLabel
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_2 %120
+ %117 = OpLabel
+ %118 = OpFunctionCall %main_out %main_inner
+ %119 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.wgsl.expected.spvasm
index 5e0a897..98f757a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-clamp-undefined-access-array/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 121
+; Bound: 120
; Schema: 0
OpCapability Shader
%58 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A1 "A1"
OpName %a "a"
@@ -24,9 +24,9 @@
OpName %x_36 "x_36"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_3_0 = OpTypeArray %float %uint_3
@@ -79,7 +78,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%A1 = OpVariable %_ptr_Function__arr_float_uint_3_0 Function %26
@@ -169,18 +168,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %109
-%tint_symbol = OpFunctionParameter %main_out
- %113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %114
- OpReturn
+ %main_inner = OpFunction %main_out None %109
+ %112 = OpLabel
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %19
- %116 = OpLabel
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_2 %120
+ %117 = OpLabel
+ %118 = OpFunctionCall %main_out %main_inner
+ %119 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.spvasm.expected.spvasm
index 72cbcba..2d2245e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 109
+; Bound: 108
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -61,10 +60,10 @@
%int_2 = OpConstant %int 2
%v4bool = OpTypeVector %bool 4
%main_out = OpTypeStruct %v4float
- %97 = OpTypeFunction %void %main_out
+ %97 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %12
+ %v = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %23
%27 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_3
%28 = OpLoad %int %27
@@ -147,18 +146,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %97
-%tint_symbol = OpFunctionParameter %main_out
- %101 = OpLabel
- %102 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %102
- OpReturn
+ %main_inner = OpFunction %main_out None %97
+ %100 = OpLabel
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %15
- %104 = OpLabel
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_2 %108
+ %105 = OpLabel
+ %106 = OpFunctionCall %main_out %main_inner
+ %107 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %107
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.wgsl.expected.spvasm
index 72cbcba..2d2245e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-combine-casts-legalize-vector-types-xyz-swizzle-for-loop/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 109
+; Bound: 108
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -61,10 +60,10 @@
%int_2 = OpConstant %int 2
%v4bool = OpTypeVector %bool 4
%main_out = OpTypeStruct %v4float
- %97 = OpTypeFunction %void %main_out
+ %97 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %12
+ %v = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %23
%27 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_3
%28 = OpLoad %int %27
@@ -147,18 +146,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %97
-%tint_symbol = OpFunctionParameter %main_out
- %101 = OpLabel
- %102 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %102
- OpReturn
+ %main_inner = OpFunction %main_out None %97
+ %100 = OpLabel
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %15
- %104 = OpLabel
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_2 %108
+ %105 = OpLabel
+ %106 = OpFunctionCall %main_out %main_inner
+ %107 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %107
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.spvasm.expected.spvasm
index 862ad1a..3a9d4d4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -14,7 +15,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %b "b"
OpName %main_1 "main_1"
@@ -25,9 +25,9 @@
OpName %x_72_phi "x_72_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -40,12 +40,13 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -59,8 +60,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%20 = OpTypeFunction %float %_ptr_Function_float
%uint_0 = OpConstant %uint 0
@@ -79,7 +78,7 @@
%v4bool = OpTypeVector %bool 4
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%func_f1_ = OpFunction %float None %20
%b = OpFunctionParameter %_ptr_Function_float
%24 = OpLabel
@@ -184,18 +183,17 @@
%98 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %51
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.wgsl.expected.spvasm
index 862ad1a..3a9d4d4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-glf_color/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -14,7 +15,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %b "b"
OpName %main_1 "main_1"
@@ -25,9 +25,9 @@
OpName %x_72_phi "x_72_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -40,12 +40,13 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -59,8 +60,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%20 = OpTypeFunction %float %_ptr_Function_float
%uint_0 = OpConstant %uint 0
@@ -79,7 +78,7 @@
%v4bool = OpTypeVector %bool 4
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%func_f1_ = OpFunction %float None %20
%b = OpFunctionParameter %_ptr_Function_float
%24 = OpLabel
@@ -184,18 +183,17 @@
%98 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %51
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.spvasm.expected.spvasm
index 57160b2..37dd032 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf0 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -56,7 +55,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -105,18 +104,17 @@
OpStore %x_GLF_color %62
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %14
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.wgsl.expected.spvasm
index 57160b2..37dd032 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-increment-color/0-opt.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf0 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -56,7 +55,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -105,18 +104,17 @@
OpStore %x_GLF_color %62
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %14
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.spvasm.expected.spvasm
index 9d357a5..6c38087 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -124,18 +123,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %15
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.wgsl.expected.spvasm
index 9d357a5..6c38087 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-loop-bitfieldreverse/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -124,18 +123,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %15
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.spvasm.expected.spvasm
index b50c135..5c987a3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "ten"
OpName %x_8 "x_8"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "minusEight"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -34,8 +34,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -68,7 +67,7 @@
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%65 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -129,18 +128,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %15
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.wgsl.expected.spvasm
index b50c135..5c987a3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-neg-div-pow2/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "ten"
OpName %x_8 "x_8"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "minusEight"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -34,8 +34,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -68,7 +67,7 @@
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%65 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -129,18 +128,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %15
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.spvasm.expected.spvasm
index 594fd2e..5827c5d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 117
+; Bound: 116
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %a "a"
@@ -21,26 +21,25 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -69,7 +68,7 @@
%uint_3 = OpConstant %uint 3
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -170,18 +169,17 @@
OpStore %104 %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %105
-%tint_symbol = OpFunctionParameter %main_out
- %109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %110
- OpReturn
+ %main_inner = OpFunction %main_out None %105
+ %108 = OpLabel
+ %109 = OpFunctionCall %void %main_1
+ %110 = OpLoad %v4float %x_GLF_color
+ %111 = OpCompositeConstruct %main_out %110
+ OpReturnValue %111
OpFunctionEnd
%main = OpFunction %void None %11
- %112 = OpLabel
- %113 = OpFunctionCall %void %main_1
- %115 = OpLoad %v4float %x_GLF_color
- %116 = OpCompositeConstruct %main_out %115
- %114 = OpFunctionCall %void %tint_symbol_2 %116
+ %113 = OpLabel
+ %114 = OpFunctionCall %main_out %main_inner
+ %115 = OpCompositeExtract %v4float %114 0
+ OpStore %x_GLF_color_1_1 %115
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.wgsl.expected.spvasm
index 594fd2e..5827c5d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dag-combiner-same-cond-nested/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 117
+; Bound: 116
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %a "a"
@@ -21,26 +21,25 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -69,7 +68,7 @@
%uint_3 = OpConstant %uint 3
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -170,18 +169,17 @@
OpStore %104 %float_1
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %105
-%tint_symbol = OpFunctionParameter %main_out
- %109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %110
- OpReturn
+ %main_inner = OpFunction %main_out None %105
+ %108 = OpLabel
+ %109 = OpFunctionCall %void %main_1
+ %110 = OpLoad %v4float %x_GLF_color
+ %111 = OpCompositeConstruct %main_out %110
+ OpReturnValue %111
OpFunctionEnd
%main = OpFunction %void None %11
- %112 = OpLabel
- %113 = OpFunctionCall %void %main_1
- %115 = OpLoad %v4float %x_GLF_color
- %116 = OpCompositeConstruct %main_out %115
- %114 = OpFunctionCall %void %tint_symbol_2 %116
+ %113 = OpLabel
+ %114 = OpFunctionCall %main_out %main_inner
+ %115 = OpCompositeExtract %v4float %114 0
+ OpStore %x_GLF_color_1_1 %115
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.spvasm.expected.spvasm
index 90974ab..e3320fd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 147
+; Bound: 146
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_29 "x_29"
OpName %x_30 "x_30"
@@ -24,23 +24,22 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %x_93 "x_93"
OpName %x_94 "x_94"
OpName %a "a"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -57,8 +56,8 @@
%99 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%100 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
- %113 = OpTypeFunction %float %_ptr_Function_float
+ %101 = OpTypeFunction %main_out
+ %112 = OpTypeFunction %float %_ptr_Function_float
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_29 = OpVariable %_ptr_Function_bool Function %16
@@ -210,73 +209,72 @@
%96 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %8
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
- %func_f1_ = OpFunction %float None %113
+ %func_f1_ = OpFunction %float None %112
%x = OpFunctionParameter %_ptr_Function_float
- %116 = OpLabel
+ %115 = OpLabel
%x_93 = OpVariable %_ptr_Function_bool Function %16
%x_94 = OpVariable %_ptr_Function_float Function %19
%a = OpVariable %_ptr_Function_float Function %19
OpStore %x_93 %false
- OpBranch %120
- %120 = OpLabel
- OpLoopMerge %121 %122 None
- OpBranch %123
- %123 = OpLabel
- %125 = OpLoad %float %x
- OpStore %a %125
- OpBranch %126
- %126 = OpLabel
- OpLoopMerge %127 %128 None
- OpBranch %129
- %129 = OpLabel
- %130 = OpLoad %float %a
- %132 = OpLoad %float %x
- %133 = OpFOrdEqual %bool %130 %132
- OpSelectionMerge %134 None
- OpBranchConditional %133 %135 %134
- %135 = OpLabel
- %136 = OpLoad %float %a
- OpStore %x_93 %true
- OpStore %x_94 %136
- OpBranch %127
- %134 = OpLabel
- %137 = OpLoad %float %a
- %138 = OpFAdd %float %137 %float_1
- OpStore %a %138
+ OpBranch %119
+ %119 = OpLabel
+ OpLoopMerge %120 %121 None
+ OpBranch %122
+ %122 = OpLabel
+ %124 = OpLoad %float %x
+ OpStore %a %124
+ OpBranch %125
+ %125 = OpLabel
+ OpLoopMerge %126 %127 None
OpBranch %128
%128 = OpLabel
- %139 = OpLoad %float %a
- %141 = OpLoad %float %x
- %142 = OpFOrdLessThan %bool %139 %141
- OpBranchConditional %142 %126 %127
+ %129 = OpLoad %float %a
+ %131 = OpLoad %float %x
+ %132 = OpFOrdEqual %bool %129 %131
+ OpSelectionMerge %133 None
+ OpBranchConditional %132 %134 %133
+ %134 = OpLabel
+ %135 = OpLoad %float %a
+ OpStore %x_93 %true
+ OpStore %x_94 %135
+ OpBranch %126
+ %133 = OpLabel
+ %136 = OpLoad %float %a
+ %137 = OpFAdd %float %136 %float_1
+ OpStore %a %137
+ OpBranch %127
%127 = OpLabel
- %143 = OpLoad %bool %x_93
- OpSelectionMerge %144 None
- OpBranchConditional %143 %145 %144
- %145 = OpLabel
- OpBranch %121
+ %138 = OpLoad %float %a
+ %140 = OpLoad %float %x
+ %141 = OpFOrdLessThan %bool %138 %140
+ OpBranchConditional %141 %125 %126
+ %126 = OpLabel
+ %142 = OpLoad %bool %x_93
+ OpSelectionMerge %143 None
+ OpBranchConditional %142 %144 %143
%144 = OpLabel
+ OpBranch %120
+ %143 = OpLabel
OpStore %x_93 %true
OpStore %x_94 %float_0
- OpBranch %121
- %122 = OpLabel
OpBranch %120
%121 = OpLabel
- %146 = OpLoad %float %x_94
- OpReturnValue %146
+ OpBranch %119
+ %120 = OpLabel
+ %145 = OpLoad %float %x_94
+ OpReturnValue %145
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.wgsl.expected.spvasm
index 90974ab..e3320fd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dead-branch-func-return-arg/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 147
+; Bound: 146
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_29 "x_29"
OpName %x_30 "x_30"
@@ -24,23 +24,22 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %x_93 "x_93"
OpName %x_94 "x_94"
OpName %a "a"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -57,8 +56,8 @@
%99 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%100 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
- %113 = OpTypeFunction %float %_ptr_Function_float
+ %101 = OpTypeFunction %main_out
+ %112 = OpTypeFunction %float %_ptr_Function_float
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_29 = OpVariable %_ptr_Function_bool Function %16
@@ -210,73 +209,72 @@
%96 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %8
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
- %func_f1_ = OpFunction %float None %113
+ %func_f1_ = OpFunction %float None %112
%x = OpFunctionParameter %_ptr_Function_float
- %116 = OpLabel
+ %115 = OpLabel
%x_93 = OpVariable %_ptr_Function_bool Function %16
%x_94 = OpVariable %_ptr_Function_float Function %19
%a = OpVariable %_ptr_Function_float Function %19
OpStore %x_93 %false
- OpBranch %120
- %120 = OpLabel
- OpLoopMerge %121 %122 None
- OpBranch %123
- %123 = OpLabel
- %125 = OpLoad %float %x
- OpStore %a %125
- OpBranch %126
- %126 = OpLabel
- OpLoopMerge %127 %128 None
- OpBranch %129
- %129 = OpLabel
- %130 = OpLoad %float %a
- %132 = OpLoad %float %x
- %133 = OpFOrdEqual %bool %130 %132
- OpSelectionMerge %134 None
- OpBranchConditional %133 %135 %134
- %135 = OpLabel
- %136 = OpLoad %float %a
- OpStore %x_93 %true
- OpStore %x_94 %136
- OpBranch %127
- %134 = OpLabel
- %137 = OpLoad %float %a
- %138 = OpFAdd %float %137 %float_1
- OpStore %a %138
+ OpBranch %119
+ %119 = OpLabel
+ OpLoopMerge %120 %121 None
+ OpBranch %122
+ %122 = OpLabel
+ %124 = OpLoad %float %x
+ OpStore %a %124
+ OpBranch %125
+ %125 = OpLabel
+ OpLoopMerge %126 %127 None
OpBranch %128
%128 = OpLabel
- %139 = OpLoad %float %a
- %141 = OpLoad %float %x
- %142 = OpFOrdLessThan %bool %139 %141
- OpBranchConditional %142 %126 %127
+ %129 = OpLoad %float %a
+ %131 = OpLoad %float %x
+ %132 = OpFOrdEqual %bool %129 %131
+ OpSelectionMerge %133 None
+ OpBranchConditional %132 %134 %133
+ %134 = OpLabel
+ %135 = OpLoad %float %a
+ OpStore %x_93 %true
+ OpStore %x_94 %135
+ OpBranch %126
+ %133 = OpLabel
+ %136 = OpLoad %float %a
+ %137 = OpFAdd %float %136 %float_1
+ OpStore %a %137
+ OpBranch %127
%127 = OpLabel
- %143 = OpLoad %bool %x_93
- OpSelectionMerge %144 None
- OpBranchConditional %143 %145 %144
- %145 = OpLabel
- OpBranch %121
+ %138 = OpLoad %float %a
+ %140 = OpLoad %float %x
+ %141 = OpFOrdLessThan %bool %138 %140
+ OpBranchConditional %141 %125 %126
+ %126 = OpLabel
+ %142 = OpLoad %bool %x_93
+ OpSelectionMerge %143 None
+ OpBranchConditional %142 %144 %143
%144 = OpLabel
+ OpBranch %120
+ %143 = OpLabel
OpStore %x_93 %true
OpStore %x_94 %float_0
- OpBranch %121
- %122 = OpLabel
OpBranch %120
%121 = OpLabel
- %146 = OpLoad %float %x_94
- OpReturnValue %146
+ OpBranch %119
+ %120 = OpLabel
+ %145 = OpLoad %float %x_94
+ OpReturnValue %145
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.spvasm.expected.spvasm
index eabbd52..3e8979c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %array0 "array0"
OpName %array1 "array1"
@@ -14,47 +16,45 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %q "q"
OpName %i "i"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%_ptr_Private__arr_float_uint_3 = OpTypePointer Private %_arr_float_uint_3
- %11 = OpConstantNull %_arr_float_uint_3
- %array0 = OpVariable %_ptr_Private__arr_float_uint_3 Private %11
- %array1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %11
+ %15 = OpConstantNull %_arr_float_uint_3
+ %array0 = OpVariable %_ptr_Private__arr_float_uint_3 Private %15
+ %array1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %15
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -72,7 +72,7 @@
%int_61 = OpConstant %int 61
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%q = OpVariable %_ptr_Function_int Function %29
@@ -166,20 +166,20 @@
OpStore %x_GLF_color %93
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %94
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %94
+%gl_FragCoord_param = OpFunctionParameter %v4float
%98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %99
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %22
- %101 = OpLabel
- %102 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %102
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_3 %106
+ %103 = OpLabel
+ %105 = OpLoad %v4float %gl_FragCoord_param_1
+ %104 = OpFunctionCall %main_out %main_inner %105
+ %106 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %106
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.wgsl.expected.spvasm
index eabbd52..3e8979c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-dead-code-unreachable-merge/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %array0 "array0"
OpName %array1 "array1"
@@ -14,47 +16,45 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %q "q"
OpName %i "i"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%_ptr_Private__arr_float_uint_3 = OpTypePointer Private %_arr_float_uint_3
- %11 = OpConstantNull %_arr_float_uint_3
- %array0 = OpVariable %_ptr_Private__arr_float_uint_3 Private %11
- %array1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %11
+ %15 = OpConstantNull %_arr_float_uint_3
+ %array0 = OpVariable %_ptr_Private__arr_float_uint_3 Private %15
+ %array1 = OpVariable %_ptr_Private__arr_float_uint_3 Private %15
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -72,7 +72,7 @@
%int_61 = OpConstant %int 61
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%q = OpVariable %_ptr_Function_int Function %29
@@ -166,20 +166,20 @@
OpStore %x_GLF_color %93
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %94
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %94
+%gl_FragCoord_param = OpFunctionParameter %v4float
%98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %99
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %22
- %101 = OpLabel
- %102 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %102
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_3 %106
+ %103 = OpLabel
+ %105 = OpLoad %v4float %gl_FragCoord_param_1
+ %104 = OpFunctionCall %main_out %main_inner %105
+ %106 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %106
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.spvasm.expected.spvasm
index c816929..ff79210 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 121
+; Bound: 120
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -18,15 +19,14 @@
OpMemberName %buf2 0 "injectionSwitch"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -44,13 +44,16 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -66,12 +69,8 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_12 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %24 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %24
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %24
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -87,11 +86,11 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %27
%30 = OpLabel
%f = OpVariable %_ptr_Function_float Function %33
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%39 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_0
%40 = OpLoad %float %39
@@ -190,18 +189,17 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %109
-%tint_symbol = OpFunctionParameter %main_out
- %113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %114
- OpReturn
+ %main_inner = OpFunction %main_out None %109
+ %112 = OpLabel
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %27
- %116 = OpLabel
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_2 %120
+ %117 = OpLabel
+ %118 = OpFunctionCall %main_out %main_inner
+ %119 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.wgsl.expected.spvasm
index c816929..ff79210 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-derivative-uniform-vector-global-loop-count/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 121
+; Bound: 120
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -18,15 +19,14 @@
OpMemberName %buf2 0 "injectionSwitch"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -44,13 +44,16 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -66,12 +69,8 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_12 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %24 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %24
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %24
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -87,11 +86,11 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %27
%30 = OpLabel
%f = OpVariable %_ptr_Function_float Function %33
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%39 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_0
%40 = OpLoad %float %39
@@ -190,18 +189,17 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %109
-%tint_symbol = OpFunctionParameter %main_out
- %113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %114
- OpReturn
+ %main_inner = OpFunction %main_out None %109
+ %112 = OpLabel
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %27
- %116 = OpLabel
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_2 %120
+ %117 = OpLabel
+ %118 = OpFunctionCall %main_out %main_inner
+ %119 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.spvasm.expected.spvasm
index b1d5a29..ef5d31b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
%55 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -75,7 +74,7 @@
%int_2 = OpConstant %int 2
%80 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %81 = OpTypeFunction %void %main_out
+ %81 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -142,18 +141,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %81
-%tint_symbol = OpFunctionParameter %main_out
- %85 = OpLabel
- %86 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %86
- OpReturn
+ %main_inner = OpFunction %main_out None %81
+ %84 = OpLabel
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %20
- %88 = OpLabel
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %89 = OpLabel
+ %90 = OpFunctionCall %main_out %main_inner
+ %91 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %91
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.wgsl.expected.spvasm
index b1d5a29..ef5d31b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-descending-loop-min-max-always-zero/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
%55 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -75,7 +74,7 @@
%int_2 = OpConstant %int 2
%80 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %81 = OpTypeFunction %void %main_out
+ %81 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -142,18 +141,17 @@
%68 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %81
-%tint_symbol = OpFunctionParameter %main_out
- %85 = OpLabel
- %86 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %86
- OpReturn
+ %main_inner = OpFunction %main_out None %81
+ %84 = OpLabel
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %20
- %88 = OpLabel
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %89 = OpLabel
+ %90 = OpFunctionCall %main_out %main_inner
+ %91 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %91
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.spvasm.expected.spvasm
index 50d4c1b..4136d2d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -51,7 +50,7 @@
%50 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%51 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %16
@@ -80,18 +79,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %52
-%tint_symbol = OpFunctionParameter %main_out
- %56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %57
- OpReturn
+ %main_inner = OpFunction %main_out None %52
+ %55 = OpLabel
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %8
- %59 = OpLabel
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_2 %63
+ %60 = OpLabel
+ %61 = OpFunctionCall %main_out %main_inner
+ %62 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.wgsl.expected.spvasm
index e11c805..cb5859b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-divide-matrix-transpose-by-constant/0-opt.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -51,7 +50,7 @@
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%53 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %16
@@ -85,18 +84,17 @@
%48 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %8
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.spvasm.expected.spvasm
index 781fc1e..c594e4b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%15 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%20 = OpConstantNull %int
@@ -55,7 +54,7 @@
%void = OpTypeVoid
%48 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%func_ = OpFunction %int None %15
%17 = OpLabel
%i = OpVariable %_ptr_Function_int Function %20
@@ -128,18 +127,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %48
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.wgsl.expected.spvasm
index 781fc1e..c594e4b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-double-if-true-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%15 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%20 = OpConstantNull %int
@@ -55,7 +54,7 @@
%void = OpTypeVoid
%48 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%func_ = OpFunction %int None %15
%17 = OpLabel
%i = OpVariable %_ptr_Function_int Function %20
@@ -128,18 +127,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %48
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.spvasm.expected.spvasm
index 5790633..4e4e547 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.spvasm.expected.spvasm
@@ -1,35 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_10 = OpConstant %uint 10
@@ -70,7 +69,7 @@
%int_n1 = OpConstant %int -1
%v2int = OpTypeVector %int 2
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_10 Function %23
@@ -170,18 +169,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %15
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.wgsl.expected.spvasm
index 5790633..4e4e547 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-empty-loop-minus-one-modulo-variable-one/0-opt.wgsl.expected.spvasm
@@ -1,35 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_10 = OpConstant %uint 10
@@ -70,7 +69,7 @@
%int_n1 = OpConstant %int -1
%v2int = OpTypeVector %int 2
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_10 Function %23
@@ -170,18 +169,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %15
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.spvasm.expected.spvasm
index e668d86..7c8a87e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -38,7 +37,7 @@
%27 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%28 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%f = OpVariable %_ptr_Function_float Function %14
@@ -57,18 +56,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %main_out
- %33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %34
- OpReturn
+ %main_inner = OpFunction %main_out None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_GLF_color
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %8
- %36 = OpLabel
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %x_GLF_color
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_2 %40
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %v4float %38 0
+ OpStore %x_GLF_color_1_1 %39
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.wgsl.expected.spvasm
index e668d86..7c8a87e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-exp2-two/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
%18 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -38,7 +37,7 @@
%27 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%28 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%f = OpVariable %_ptr_Function_float Function %14
@@ -57,18 +56,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %main_out
- %33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %34
- OpReturn
+ %main_inner = OpFunction %main_out None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_GLF_color
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %8
- %36 = OpLabel
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %x_GLF_color
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_2 %40
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %v4float %38 0
+ OpStore %x_GLF_color_1_1 %39
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.spvasm.expected.spvasm
index bb87b20..00e2105 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 105
+; Bound: 104
; Schema: 0
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,15 +16,14 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %arr "arr"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %93 = OpTypeFunction %void %main_out
+ %93 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -142,18 +141,17 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %93
-%tint_symbol = OpFunctionParameter %main_out
- %97 = OpLabel
- %98 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %98
- OpReturn
+ %main_inner = OpFunction %main_out None %93
+ %96 = OpLabel
+ %97 = OpFunctionCall %void %main_1
+ %98 = OpLoad %v4float %x_GLF_color
+ %99 = OpCompositeConstruct %main_out %98
+ OpReturnValue %99
OpFunctionEnd
%main = OpFunction %void None %20
- %100 = OpLabel
- %101 = OpFunctionCall %void %main_1
- %103 = OpLoad %v4float %x_GLF_color
- %104 = OpCompositeConstruct %main_out %103
- %102 = OpFunctionCall %void %tint_symbol_2 %104
+ %101 = OpLabel
+ %102 = OpFunctionCall %main_out %main_inner
+ %103 = OpCompositeExtract %v4float %102 0
+ OpStore %x_GLF_color_1_1 %103
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.wgsl.expected.spvasm
index bb87b20..00e2105 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-float-array-init-pow/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 105
+; Bound: 104
; Schema: 0
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,15 +16,14 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %arr "arr"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %93 = OpTypeFunction %void %main_out
+ %93 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -142,18 +141,17 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %93
-%tint_symbol = OpFunctionParameter %main_out
- %97 = OpLabel
- %98 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %98
- OpReturn
+ %main_inner = OpFunction %main_out None %93
+ %96 = OpLabel
+ %97 = OpFunctionCall %void %main_1
+ %98 = OpLoad %v4float %x_GLF_color
+ %99 = OpCompositeConstruct %main_out %98
+ OpReturnValue %99
OpFunctionEnd
%main = OpFunction %void None %20
- %100 = OpLabel
- %101 = OpFunctionCall %void %main_1
- %103 = OpLoad %v4float %x_GLF_color
- %104 = OpCompositeConstruct %main_out %103
- %102 = OpFunctionCall %void %tint_symbol_2 %104
+ %101 = OpLabel
+ %102 = OpFunctionCall %main_out %main_inner
+ %103 = OpCompositeExtract %v4float %102 0
+ OpStore %x_GLF_color_1_1 %103
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.spvasm.expected.spvasm
index 6d8b1a2..d941019 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %ret "ret"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%17 = OpConstantNull %int
@@ -57,7 +56,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%func_ = OpFunction %int None %12
%14 = OpLabel
%ret = OpVariable %_ptr_Function_int Function %17
@@ -110,18 +109,17 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %44
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.wgsl.expected.spvasm
index 6d8b1a2..d941019 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-and-in-for-loop-range/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %ret "ret"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%17 = OpConstantNull %int
@@ -57,7 +56,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%func_ = OpFunction %int None %12
%14 = OpLabel
%ret = OpVariable %_ptr_Function_int Function %17
@@ -110,18 +109,17 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %44
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.spvasm.expected.spvasm
index b79eb2a..38d493b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%30 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -66,18 +65,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.wgsl.expected.spvasm
index b79eb2a..38d493b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-and-zero/0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%30 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -66,18 +65,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.spvasm.expected.spvasm
index 5edb687..d746610 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%30 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -66,18 +65,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.wgsl.expected.spvasm
index 5edb687..d746610 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-or-full-mask/0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%30 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%31 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -66,18 +65,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.spvasm.expected.spvasm
index 0671048..b4ab2df 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_int Function %15
@@ -62,18 +61,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.wgsl.expected.spvasm
index 0671048..b4ab2df 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-bitwise-xor/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_int Function %15
@@ -62,18 +61,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.spvasm.expected.spvasm
index 772fda6..217f300 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%float_1 = OpConstant %float 1
%26 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
+ %27 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_bool Function %15
@@ -55,18 +54,17 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %main_out
- %31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %32
- OpReturn
+ %main_inner = OpFunction %main_out None %27
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %x_GLF_color
+ %33 = OpCompositeConstruct %main_out %32
+ OpReturnValue %33
OpFunctionEnd
%main = OpFunction %void None %8
- %34 = OpLabel
- %35 = OpFunctionCall %void %main_1
- %37 = OpLoad %v4float %x_GLF_color
- %38 = OpCompositeConstruct %main_out %37
- %36 = OpFunctionCall %void %tint_symbol_2 %38
+ %35 = OpLabel
+ %36 = OpFunctionCall %main_out %main_inner
+ %37 = OpCompositeExtract %v4float %36 0
+ OpStore %x_GLF_color_1_1 %37
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.wgsl.expected.spvasm
index ae7b276..cf4e979 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-const-variable/0.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -37,7 +36,7 @@
%float_1 = OpConstant %float 1
%28 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_bool Function %15
@@ -60,18 +59,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %main_out
- %33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %34
- OpReturn
+ %main_inner = OpFunction %main_out None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_GLF_color
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %8
- %36 = OpLabel
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %x_GLF_color
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_2 %40
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %v4float %38 0
+ OpStore %x_GLF_color_1_1 %39
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.spvasm.expected.spvasm
index 66e7a56..47743fc 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.spvasm.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -49,7 +49,7 @@
%44 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%45 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %46 = OpTypeFunction %void %main_out
+ %46 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -83,20 +83,20 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %46
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %46
+%gl_FragCoord_param = OpFunctionParameter %v4float
%50 = OpLabel
- %51 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %51
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %11
- %53 = OpLabel
- %54 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %54
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_3 %58
+ %55 = OpLabel
+ %57 = OpLoad %v4float %gl_FragCoord_param_1
+ %56 = OpFunctionCall %main_out %main_inner %57
+ %58 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.wgsl.expected.spvasm
index 5375739..3b82365 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-and-constant/0-opt.wgsl.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -49,7 +49,7 @@
%46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%47 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -88,20 +88,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %48
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %48
+%gl_FragCoord_param = OpFunctionParameter %v4float
%52 = OpLabel
- %53 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %53
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %55 = OpLabel
- %56 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %56
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_3 %60
+ %57 = OpLabel
+ %59 = OpLoad %v4float %gl_FragCoord_param_1
+ %58 = OpFunctionCall %main_out %main_inner %59
+ %60 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.spvasm.expected.spvasm
index 9bea875..8e06c42 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.spvasm.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -42,7 +42,7 @@
%29 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%30 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %31 = OpTypeFunction %void %main_out
+ %31 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -60,20 +60,20 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %31
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %31
+%gl_FragCoord_param = OpFunctionParameter %v4float
%35 = OpLabel
- %36 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %36
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %11
- %38 = OpLabel
- %39 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_3 %43
+ %40 = OpLabel
+ %42 = OpLoad %v4float %gl_FragCoord_param_1
+ %41 = OpFunctionCall %main_out %main_inner %42
+ %43 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.wgsl.expected.spvasm
index 53bc076..e747b52 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-logical-or-constant/0.wgsl.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -42,7 +42,7 @@
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%32 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %33 = OpTypeFunction %void %main_out
+ %33 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -65,20 +65,20 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %33
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %33
+%gl_FragCoord_param = OpFunctionParameter %v4float
%37 = OpLabel
- %38 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %38
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %11
- %40 = OpLabel
- %41 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %41
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_3 %45
+ %42 = OpLabel
+ %44 = OpLoad %v4float %gl_FragCoord_param_1
+ %43 = OpFunctionCall %main_out %main_inner %44
+ %45 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.spvasm.expected.spvasm
index 3ae71bd..ec16d2f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 51
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "minusOne"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %minValue "minValue"
OpName %negMinValue "negMinValue"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%minValue = OpVariable %_ptr_Function_int Function %18
@@ -78,18 +77,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %40
-%tint_symbol = OpFunctionParameter %main_out
- %44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %45
- OpReturn
+ %main_inner = OpFunction %main_out None %40
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %v4float %x_GLF_color
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %12
- %47 = OpLabel
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %v4float %x_GLF_color
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_2 %51
+ %48 = OpLabel
+ %49 = OpFunctionCall %main_out %main_inner
+ %50 = OpCompositeExtract %v4float %49 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.wgsl.expected.spvasm
index 3ae71bd..ec16d2f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-min-int-value/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 51
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "minusOne"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %minValue "minValue"
OpName %negMinValue "negMinValue"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%minValue = OpVariable %_ptr_Function_int Function %18
@@ -78,18 +77,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %40
-%tint_symbol = OpFunctionParameter %main_out
- %44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %45
- OpReturn
+ %main_inner = OpFunction %main_out None %40
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %v4float %x_GLF_color
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %12
- %47 = OpLabel
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %v4float %x_GLF_color
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_2 %51
+ %48 = OpLabel
+ %49 = OpFunctionCall %main_out %main_inner
+ %50 = OpCompositeExtract %v4float %49 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.spvasm.expected.spvasm
index 358ea77..f6420f5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -38,7 +37,7 @@
%27 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%28 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -57,18 +56,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %main_out
- %33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %34
- OpReturn
+ %main_inner = OpFunction %main_out None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_GLF_color
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %8
- %36 = OpLabel
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %x_GLF_color
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_2 %40
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %v4float %38 0
+ OpStore %x_GLF_color_1_1 %39
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.wgsl.expected.spvasm
index 358ea77..f6420f5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-negate-variable/0.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 41
+; Bound: 40
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -38,7 +37,7 @@
%27 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%28 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %29 = OpTypeFunction %void %main_out
+ %29 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -57,18 +56,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %29
-%tint_symbol = OpFunctionParameter %main_out
- %33 = OpLabel
- %34 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %34
- OpReturn
+ %main_inner = OpFunction %main_out None %29
+ %32 = OpLabel
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %x_GLF_color
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %8
- %36 = OpLabel
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %x_GLF_color
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_2 %40
+ %37 = OpLabel
+ %38 = OpFunctionCall %main_out %main_inner
+ %39 = OpCompositeExtract %v4float %38 0
+ OpStore %x_GLF_color_1_1 %39
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.spvasm.expected.spvasm
index b31bcda..65dd437 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 121
+; Bound: 120
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -21,27 +21,26 @@
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%buf0 = OpTypeStruct %uint
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -64,7 +63,7 @@
%107 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%108 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %18
@@ -179,18 +178,17 @@
%102 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %109
-%tint_symbol = OpFunctionParameter %main_out
- %113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %114
- OpReturn
+ %main_inner = OpFunction %main_out None %109
+ %112 = OpLabel
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %12
- %116 = OpLabel
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_2 %120
+ %117 = OpLabel
+ %118 = OpFunctionCall %main_out %main_inner
+ %119 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.wgsl.expected.spvasm
index 8468b80..a2b34a0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-gte32/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -21,27 +21,26 @@
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%buf0 = OpTypeStruct %uint
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -64,7 +63,7 @@
%117 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%118 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %18
@@ -204,18 +203,17 @@
%112 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %12
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.spvasm.expected.spvasm
index 9f2db98..18dfe48 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -60,18 +59,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.wgsl.expected.spvasm
index 9f2db98..18dfe48 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-shift-right-arithmetic/0.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 44
+; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -40,7 +39,7 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
+ %32 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -60,18 +59,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %8
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.spvasm.expected.spvasm
index 541bbd0..b08e603 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%25 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%26 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
+ %27 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %15
@@ -55,18 +54,17 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %main_out
- %31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %32
- OpReturn
+ %main_inner = OpFunction %main_out None %27
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %x_GLF_color
+ %33 = OpCompositeConstruct %main_out %32
+ OpReturnValue %33
OpFunctionEnd
%main = OpFunction %void None %8
- %34 = OpLabel
- %35 = OpFunctionCall %void %main_1
- %37 = OpLoad %v4float %x_GLF_color
- %38 = OpCompositeConstruct %main_out %37
- %36 = OpFunctionCall %void %tint_symbol_2 %38
+ %35 = OpLabel
+ %36 = OpFunctionCall %main_out %main_inner
+ %37 = OpCompositeExtract %v4float %36 0
+ OpStore %x_GLF_color_1_1 %37
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.wgsl.expected.spvasm
index 541bbd0..b08e603 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fold-switch-udiv/0.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -37,7 +36,7 @@
%25 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%26 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
+ %27 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %15
@@ -55,18 +54,17 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %27
-%tint_symbol = OpFunctionParameter %main_out
- %31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %32
- OpReturn
+ %main_inner = OpFunction %main_out None %27
+ %30 = OpLabel
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %x_GLF_color
+ %33 = OpCompositeConstruct %main_out %32
+ OpReturnValue %33
OpFunctionEnd
%main = OpFunction %void None %8
- %34 = OpLabel
- %35 = OpFunctionCall %void %main_1
- %37 = OpLoad %v4float %x_GLF_color
- %38 = OpCompositeConstruct %main_out %37
- %36 = OpFunctionCall %void %tint_symbol_2 %38
+ %35 = OpLabel
+ %36 = OpFunctionCall %main_out %main_inner
+ %37 = OpCompositeExtract %v4float %36 0
+ OpStore %x_GLF_color_1_1 %37
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.spvasm.expected.spvasm
index 10d16c9..1cc4981 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -91,18 +90,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.wgsl.expected.spvasm
index 10d16c9..1cc4981 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-clamp-cmp-const-first/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -91,18 +90,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.spvasm.expected.spvasm
index 4b46ac2..a5d3ed4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -68,18 +67,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %12
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.wgsl.expected.spvasm
index 4b46ac2..a5d3ed4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-merge-add-sub-uniform/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -68,18 +67,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %12
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.spvasm.expected.spvasm
index e0f212a..2791bce 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "twoandthree"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,27 +20,26 @@
OpName %x_47_phi "x_47_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -60,7 +59,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %18
@@ -104,18 +103,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %12
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.wgsl.expected.spvasm
index e0f212a..2791bce 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-construct-extract/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
%35 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "twoandthree"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,27 +20,26 @@
OpName %x_47_phi "x_47_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -60,7 +59,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %18
@@ -104,18 +103,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %12
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.spvasm.expected.spvasm
index d9bb8a7..89884c7 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -68,18 +67,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %11
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.wgsl.expected.spvasm
index d9bb8a7..89884c7 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-extract/0-opt.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -68,18 +67,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %11
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.spvasm.expected.spvasm
index 61c450f..4bb2e2f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %main_out
+ %35 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -69,18 +68,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %40
- OpReturn
+ %main_inner = OpFunction %main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %main_1
+ %40 = OpLoad %v4float %x_GLF_color
+ %41 = OpCompositeConstruct %main_out %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %11
- %42 = OpLabel
- %43 = OpFunctionCall %void %main_1
- %45 = OpLoad %v4float %x_GLF_color
- %46 = OpCompositeConstruct %main_out %45
- %44 = OpFunctionCall %void %tint_symbol_2 %46
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.wgsl.expected.spvasm
index 61c450f..4bb2e2f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-dot-no-extract/0.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %main_out
+ %35 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0
@@ -69,18 +68,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %40
- OpReturn
+ %main_inner = OpFunction %main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %main_1
+ %40 = OpLoad %v4float %x_GLF_color
+ %41 = OpCompositeConstruct %main_out %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %11
- %42 = OpLabel
- %43 = OpFunctionCall %void %main_1
- %45 = OpLoad %v4float %x_GLF_color
- %46 = OpCompositeConstruct %main_out %45
- %44 = OpFunctionCall %void %tint_symbol_2 %46
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.spvasm.expected.spvasm
index 85eee57..6996dcd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -41,7 +40,7 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -83,18 +82,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %8
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.wgsl.expected.spvasm
index 85eee57..6996dcd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-add-sub/0-opt.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -41,7 +40,7 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -83,18 +82,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %8
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.spvasm.expected.spvasm
index ea91153..4be3bd8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%40 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%41 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %42 = OpTypeFunction %void %main_out
+ %42 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -78,18 +77,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %42
-%tint_symbol = OpFunctionParameter %main_out
- %46 = OpLabel
- %47 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %47
- OpReturn
+ %main_inner = OpFunction %main_out None %42
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %main_1
+ %47 = OpLoad %v4float %x_GLF_color
+ %48 = OpCompositeConstruct %main_out %47
+ OpReturnValue %48
OpFunctionEnd
%main = OpFunction %void None %11
- %49 = OpLabel
- %50 = OpFunctionCall %void %main_1
- %52 = OpLoad %v4float %x_GLF_color
- %53 = OpCompositeConstruct %main_out %52
- %51 = OpFunctionCall %void %tint_symbol_2 %53
+ %50 = OpLabel
+ %51 = OpFunctionCall %main_out %main_inner
+ %52 = OpCompositeExtract %v4float %51 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.wgsl.expected.spvasm
index 056fe41..cbf22d4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-div-mul/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -83,18 +82,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %11
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.spvasm.expected.spvasm
index 83d0a8f..0a0d2b8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "four"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -52,7 +51,7 @@
%39 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%40 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%a = OpVariable %_ptr_Function_float Function %17
@@ -77,18 +76,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %11
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.wgsl.expected.spvasm
index 595ed70..63aee27 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-divs/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "four"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -52,7 +51,7 @@
%41 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%42 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%a = OpVariable %_ptr_Function_float Function %17
@@ -82,18 +81,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %43
-%tint_symbol = OpFunctionParameter %main_out
- %47 = OpLabel
- %48 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %48
- OpReturn
+ %main_inner = OpFunction %main_out None %43
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %main_1
+ %48 = OpLoad %v4float %x_GLF_color
+ %49 = OpCompositeConstruct %main_out %48
+ OpReturnValue %49
OpFunctionEnd
%main = OpFunction %void None %11
- %50 = OpLabel
- %51 = OpFunctionCall %void %main_1
- %53 = OpLoad %v4float %x_GLF_color
- %54 = OpCompositeConstruct %main_out %53
- %52 = OpFunctionCall %void %tint_symbol_2 %54
+ %51 = OpLabel
+ %52 = OpFunctionCall %main_out %main_inner
+ %53 = OpCompositeExtract %v4float %52 0
+ OpStore %x_GLF_color_1_1 %53
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.spvasm.expected.spvasm
index 3380bc1..637a850 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%40 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%41 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %42 = OpTypeFunction %void %main_out
+ %42 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -78,18 +77,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %42
-%tint_symbol = OpFunctionParameter %main_out
- %46 = OpLabel
- %47 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %47
- OpReturn
+ %main_inner = OpFunction %main_out None %42
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %main_1
+ %47 = OpLoad %v4float %x_GLF_color
+ %48 = OpCompositeConstruct %main_out %47
+ OpReturnValue %48
OpFunctionEnd
%main = OpFunction %void None %11
- %49 = OpLabel
- %50 = OpFunctionCall %void %main_1
- %52 = OpLoad %v4float %x_GLF_color
- %53 = OpCompositeConstruct %main_out %52
- %51 = OpFunctionCall %void %tint_symbol_2 %53
+ %50 = OpLabel
+ %51 = OpFunctionCall %main_out %main_inner
+ %52 = OpCompositeExtract %v4float %51 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.wgsl.expected.spvasm
index a3e6ce2..9a491a8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-mul-div/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 56
+; Bound: 55
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%43 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -83,18 +82,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %44
-%tint_symbol = OpFunctionParameter %main_out
- %48 = OpLabel
- %49 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %49
- OpReturn
+ %main_inner = OpFunction %main_out None %44
+ %47 = OpLabel
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %v4float %x_GLF_color
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %11
- %51 = OpLabel
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %v4float %x_GLF_color
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_2 %55
+ %52 = OpLabel
+ %53 = OpFunctionCall %main_out %main_inner
+ %54 = OpCompositeExtract %v4float %53 0
+ OpStore %x_GLF_color_1_1 %54
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.spvasm.expected.spvasm
index 8756e12..9eb7c82 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -47,7 +46,7 @@
%53 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %15
@@ -101,18 +100,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.wgsl.expected.spvasm
index 8756e12..9eb7c82 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-add/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -47,7 +46,7 @@
%53 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %15
@@ -101,18 +100,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.spvasm.expected.spvasm
index 2c915e9..de0f5f9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -48,7 +47,7 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %15
@@ -102,18 +101,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %8
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.wgsl.expected.spvasm
index 2c915e9..de0f5f9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-sub-sub/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %b "b"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -48,7 +47,7 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%b = OpVariable %_ptr_Function_bool Function %15
@@ -102,18 +101,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %8
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.spvasm.expected.spvasm
index 30086d1..088d06c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "five"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%49 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -97,18 +96,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.wgsl.expected.spvasm
index 30086d1..088d06c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-merge-var-sub/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "five"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%49 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -97,18 +96,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.spvasm.expected.spvasm
index 0427ed3..8129be1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -61,7 +60,7 @@
%float_0 = OpConstant %float 0
%51 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%v = OpVariable %_ptr_Function_v3float Function %18
@@ -90,18 +89,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %52
-%tint_symbol = OpFunctionParameter %main_out
- %56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %57
- OpReturn
+ %main_inner = OpFunction %main_out None %52
+ %55 = OpLabel
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %11
- %59 = OpLabel
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_2 %63
+ %60 = OpLabel
+ %61 = OpFunctionCall %main_out %main_inner
+ %62 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.wgsl.expected.spvasm
index 0427ed3..8129be1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-mix-uniform-weight/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 64
+; Bound: 63
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -61,7 +60,7 @@
%float_0 = OpConstant %float 0
%51 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%v = OpVariable %_ptr_Function_v3float Function %18
@@ -90,18 +89,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %52
-%tint_symbol = OpFunctionParameter %main_out
- %56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %57
- OpReturn
+ %main_inner = OpFunction %main_out None %52
+ %55 = OpLabel
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %11
- %59 = OpLabel
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_2 %63
+ %60 = OpLabel
+ %61 = OpFunctionCall %main_out %main_inner
+ %62 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.spvasm.expected.spvasm
index 10f5bab..f0b5fc9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "four"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -68,18 +67,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %12
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.wgsl.expected.spvasm
index 10f5bab..f0b5fc9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-div/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "four"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%32 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%33 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -68,18 +67,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %12
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.spvasm.expected.spvasm
index 567ae13..34c5d52 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x = OpVariable %_ptr_Function_int Function %18
@@ -74,18 +73,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.wgsl.expected.spvasm
index 567ae13..34c5d52 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-negate-sub/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x = OpVariable %_ptr_Function_int Function %18
@@ -74,18 +73,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.spvasm.expected.spvasm
index f1fcd90..97e91e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -52,7 +51,7 @@
%35 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%36 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_v2float %x_5 %uint_0
@@ -71,18 +70,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %37
-%tint_symbol = OpFunctionParameter %main_out
- %41 = OpLabel
- %42 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %42
- OpReturn
+ %main_inner = OpFunction %main_out None %37
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %main_1
+ %42 = OpLoad %v4float %x_GLF_color
+ %43 = OpCompositeConstruct %main_out %42
+ OpReturnValue %43
OpFunctionEnd
%main = OpFunction %void None %12
- %44 = OpLabel
- %45 = OpFunctionCall %void %main_1
- %47 = OpLoad %v4float %x_GLF_color
- %48 = OpCompositeConstruct %main_out %47
- %46 = OpFunctionCall %void %tint_symbol_2 %48
+ %45 = OpLabel
+ %46 = OpFunctionCall %main_out %main_inner
+ %47 = OpCompositeExtract %v4float %46 0
+ OpStore %x_GLF_color_1_1 %47
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.wgsl.expected.spvasm
index f1fcd90..97e91e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-redundant-mix/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 49
+; Bound: 48
; Schema: 0
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -52,7 +51,7 @@
%35 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%36 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_v2float %x_5 %uint_0
@@ -71,18 +70,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %37
-%tint_symbol = OpFunctionParameter %main_out
- %41 = OpLabel
- %42 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %42
- OpReturn
+ %main_inner = OpFunction %main_out None %37
+ %40 = OpLabel
+ %41 = OpFunctionCall %void %main_1
+ %42 = OpLoad %v4float %x_GLF_color
+ %43 = OpCompositeConstruct %main_out %42
+ OpReturnValue %43
OpFunctionEnd
%main = OpFunction %void None %12
- %44 = OpLabel
- %45 = OpFunctionCall %void %main_1
- %47 = OpLoad %v4float %x_GLF_color
- %48 = OpCompositeConstruct %main_out %47
- %46 = OpFunctionCall %void %tint_symbol_2 %48
+ %45 = OpLabel
+ %46 = OpFunctionCall %main_out %main_inner
+ %47 = OpCompositeExtract %v4float %46 0
+ OpStore %x_GLF_color_1_1 %47
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.spvasm
index 4d94830..e6eac5b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -51,7 +50,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %36 = OpTypeFunction %void %main_out
+ %36 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_v2float %x_5 %uint_0
@@ -70,18 +69,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %main_out
- %40 = OpLabel
- %41 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %41
- OpReturn
+ %main_inner = OpFunction %main_out None %36
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %main_1
+ %41 = OpLoad %v4float %x_GLF_color
+ %42 = OpCompositeConstruct %main_out %41
+ OpReturnValue %42
OpFunctionEnd
%main = OpFunction %void None %12
- %43 = OpLabel
- %44 = OpFunctionCall %void %main_1
- %46 = OpLoad %v4float %x_GLF_color
- %47 = OpCompositeConstruct %main_out %46
- %45 = OpFunctionCall %void %tint_symbol_2 %47
+ %44 = OpLabel
+ %45 = OpFunctionCall %main_out %main_inner
+ %46 = OpCompositeExtract %v4float %45 0
+ OpStore %x_GLF_color_1_1 %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.spvasm
index 4d94830..e6eac5b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -51,7 +50,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %36 = OpTypeFunction %void %main_out
+ %36 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_v2float %x_5 %uint_0
@@ -70,18 +69,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %main_out
- %40 = OpLabel
- %41 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %41
- OpReturn
+ %main_inner = OpFunction %main_out None %36
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %main_1
+ %41 = OpLoad %v4float %x_GLF_color
+ %42 = OpCompositeConstruct %main_out %41
+ OpReturnValue %42
OpFunctionEnd
%main = OpFunction %void None %12
- %43 = OpLabel
- %44 = OpFunctionCall %void %main_1
- %46 = OpLoad %v4float %x_GLF_color
- %47 = OpCompositeConstruct %main_out %46
- %45 = OpFunctionCall %void %tint_symbol_2 %47
+ %44 = OpLabel
+ %45 = OpFunctionCall %main_out %main_inner
+ %46 = OpCompositeExtract %v4float %45 0
+ OpStore %x_GLF_color_1_1 %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.spvasm
index 86501a3..958e74b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "threeandfour"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -63,10 +62,10 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %9
+ %v = OpVariable %_ptr_Function_v4float Function %5
OpStore %v %22
%27 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %uint_1
%28 = OpLoad %float %27
@@ -93,18 +92,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %12
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.spvasm
index 86501a3..958e74b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "threeandfour"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -63,10 +62,10 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %9
+ %v = OpVariable %_ptr_Function_v4float Function %5
OpStore %v %22
%27 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %uint_1
%28 = OpLoad %float %27
@@ -93,18 +92,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %12
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.spvasm.expected.spvasm
index e87aa5b..0f90304 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -40,7 +39,7 @@
%41 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%42 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -72,18 +71,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %43
-%tint_symbol = OpFunctionParameter %main_out
- %47 = OpLabel
- %48 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %48
- OpReturn
+ %main_inner = OpFunction %main_out None %43
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %main_1
+ %48 = OpLoad %v4float %x_GLF_color
+ %49 = OpCompositeConstruct %main_out %48
+ OpReturnValue %49
OpFunctionEnd
%main = OpFunction %void None %8
- %50 = OpLabel
- %51 = OpFunctionCall %void %main_1
- %53 = OpLoad %v4float %x_GLF_color
- %54 = OpCompositeConstruct %main_out %53
- %52 = OpFunctionCall %void %tint_symbol_2 %54
+ %51 = OpLabel
+ %52 = OpFunctionCall %main_out %main_inner
+ %53 = OpCompositeExtract %v4float %52 0
+ OpStore %x_GLF_color_1_1 %53
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.wgsl.expected.spvasm
index e87aa5b..0f90304 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-split-vector-init/0-opt.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -40,7 +39,7 @@
%41 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%42 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -72,18 +71,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %43
-%tint_symbol = OpFunctionParameter %main_out
- %47 = OpLabel
- %48 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %48
- OpReturn
+ %main_inner = OpFunction %main_out None %43
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %main_1
+ %48 = OpLoad %v4float %x_GLF_color
+ %49 = OpCompositeConstruct %main_out %48
+ OpReturnValue %49
OpFunctionEnd
%main = OpFunction %void None %8
- %50 = OpLabel
- %51 = OpFunctionCall %void %main_1
- %53 = OpLoad %v4float %x_GLF_color
- %54 = OpCompositeConstruct %main_out %53
- %52 = OpFunctionCall %void %tint_symbol_2 %54
+ %51 = OpLabel
+ %52 = OpFunctionCall %main_out %main_inner
+ %53 = OpCompositeExtract %v4float %52 0
+ OpStore %x_GLF_color_1_1 %53
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.spvasm.expected.spvasm
index 311c2d4..09b93ac 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zeroOne"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -62,7 +61,7 @@
%float_0 = OpConstant %float 0
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %18
@@ -94,18 +93,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %12
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.wgsl.expected.spvasm
index 311c2d4..09b93ac 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-vec-mix-uniform/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zeroOne"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %d "d"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -62,7 +61,7 @@
%float_0 = OpConstant %float 0
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %18
@@ -94,18 +93,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %12
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.spvasm.expected.spvasm
index 0d3cc7f..2841f82 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%int_3 = OpConstant %int 3
%v2int = OpTypeVector %int 2
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -122,18 +121,17 @@
OpStore %x_GLF_color %76
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.wgsl.expected.spvasm
index 0d3cc7f..2841f82 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-array-initializing-modulo/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%int_3 = OpConstant %int 3
%v2int = OpTypeVector %int 2
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -122,18 +121,17 @@
OpStore %x_GLF_color %76
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.spvasm.expected.spvasm
index 4323c1e..4055cd4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 109
+; Bound: 108
; Schema: 0
OpCapability Shader
%52 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -75,7 +74,7 @@
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %97 = OpTypeFunction %void %main_out
+ %97 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_3 Function %27
@@ -157,18 +156,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %97
-%tint_symbol = OpFunctionParameter %main_out
- %101 = OpLabel
- %102 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %102
- OpReturn
+ %main_inner = OpFunction %main_out None %97
+ %100 = OpLabel
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %20
- %104 = OpLabel
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_2 %108
+ %105 = OpLabel
+ %106 = OpFunctionCall %main_out %main_inner
+ %107 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %107
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.wgsl.expected.spvasm
index 4323c1e..4055cd4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-loop-min-increment-array-element/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 109
+; Bound: 108
; Schema: 0
OpCapability Shader
%52 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,15 +16,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -75,7 +74,7 @@
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %97 = OpTypeFunction %void %main_out
+ %97 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_3 Function %27
@@ -157,18 +156,17 @@
%77 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %97
-%tint_symbol = OpFunctionParameter %main_out
- %101 = OpLabel
- %102 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %102
- OpReturn
+ %main_inner = OpFunction %main_out None %97
+ %100 = OpLabel
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %20
- %104 = OpLabel
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_2 %108
+ %105 = OpLabel
+ %106 = OpFunctionCall %main_out %main_inner
+ %107 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %107
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.spvasm.expected.spvasm
index 89156fd..b10aa66 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -130,18 +129,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %15
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.wgsl.expected.spvasm
index 89156fd..b10aa66 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-for-switch-fallthrough/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -130,18 +129,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %15
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.spvasm.expected.spvasm
index 2097959..cc72c64 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,16 +18,16 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %29
@@ -116,20 +116,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %23
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.wgsl.expected.spvasm
index 2fb16eb..2e63fe9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fract-asin-undefined-never-used/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,16 +18,16 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %29
@@ -116,20 +116,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %23
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.spvasm.expected.spvasm
index 8371f68..26e9f23 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %b "b"
@@ -21,30 +21,29 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -62,7 +61,7 @@
%float_1 = OpConstant %float 1
%44 = OpConstantComposite %v2float %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %21
@@ -128,18 +127,17 @@
%63 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %14
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.wgsl.expected.spvasm
index 8371f68..26e9f23 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fract-smoothstep-undefined/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %b "b"
@@ -21,30 +21,29 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -62,7 +61,7 @@
%float_1 = OpConstant %float 1
%44 = OpConstantComposite %v2float %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %21
@@ -128,18 +127,17 @@
%63 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %14
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.spvasm.expected.spvasm
index 698e085..bfd9935 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.spvasm.expected.spvasm
@@ -5,36 +5,40 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -42,11 +46,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -58,7 +58,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -109,20 +109,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %18
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.wgsl.expected.spvasm
index 698e085..bfd9935 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-bitwise-not/0-opt.wgsl.expected.spvasm
@@ -5,36 +5,40 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -42,11 +46,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -58,7 +58,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -109,20 +109,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %18
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.spvasm.expected.spvasm
index 7fc19f9..04622ad 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%61 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -16,8 +18,6 @@
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %b "b"
@@ -27,9 +27,11 @@
OpName %x_83_phi "x_83_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -42,11 +44,15 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -59,15 +65,9 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -89,7 +89,7 @@
%int_3 = OpConstant %int 3
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%data = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %31
@@ -217,20 +217,20 @@
OpStore %x_GLF_color %139
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %140
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %140
+%gl_FragCoord_param = OpFunctionParameter %v4float
%144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %145
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %23
- %147 = OpLabel
- %148 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %148
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_3 %152
+ %149 = OpLabel
+ %151 = OpLoad %v4float %gl_FragCoord_param_1
+ %150 = OpFunctionCall %main_out %main_inner %151
+ %152 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %152
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.wgsl.expected.spvasm
index 7fc19f9..04622ad 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-clamp-array-access/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%61 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -16,8 +18,6 @@
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %b "b"
@@ -27,9 +27,11 @@
OpName %x_83_phi "x_83_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -42,11 +44,15 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -59,15 +65,9 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -89,7 +89,7 @@
%int_3 = OpConstant %int 3
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%data = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %31
@@ -217,20 +217,20 @@
OpStore %x_GLF_color %139
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %140
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %140
+%gl_FragCoord_param = OpFunctionParameter %v4float
%144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %145
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %23
- %147 = OpLabel
- %148 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %148
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_3 %152
+ %149 = OpLabel
+ %151 = OpLoad %v4float %gl_FragCoord_param_1
+ %150 = OpFunctionCall %main_out %main_inner %151
+ %152 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %152
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.spvasm.expected.spvasm
index 76e8564..2aadd56 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,17 +17,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %icoord "icoord"
OpName %x_40 "x_40"
OpName %icoord_1 "icoord_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf0 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -82,7 +82,7 @@
%_ptr_Function_int = OpTypePointer Function %int
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%icoord = OpVariable %_ptr_Function_v2int Function %30
@@ -177,20 +177,20 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %119
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %119
+%gl_FragCoord_param = OpFunctionParameter %v4float
%123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %124
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %124 = OpFunctionCall %void %main_1
+ %125 = OpLoad %v4float %x_GLF_color
+ %126 = OpCompositeConstruct %main_out %125
+ OpReturnValue %126
OpFunctionEnd
%main = OpFunction %void None %23
- %126 = OpLabel
- %127 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %127
- %128 = OpFunctionCall %void %main_1
- %130 = OpLoad %v4float %x_GLF_color
- %131 = OpCompositeConstruct %main_out %130
- %129 = OpFunctionCall %void %tint_symbol_3 %131
+ %128 = OpLabel
+ %130 = OpLoad %v4float %gl_FragCoord_param_1
+ %129 = OpFunctionCall %main_out %main_inner %130
+ %131 = OpCompositeExtract %v4float %129 0
+ OpStore %x_GLF_color_1_1 %131
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.wgsl.expected.spvasm
index 76e8564..2aadd56 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-fragcoord-multiply/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,17 +17,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %icoord "icoord"
OpName %x_40 "x_40"
OpName %icoord_1 "icoord_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf0 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2int = OpTypeVector %int 2
@@ -82,7 +82,7 @@
%_ptr_Function_int = OpTypePointer Function %int
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%icoord = OpVariable %_ptr_Function_v2int Function %30
@@ -177,20 +177,20 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %119
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %119
+%gl_FragCoord_param = OpFunctionParameter %v4float
%123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %124
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %124 = OpFunctionCall %void %main_1
+ %125 = OpLoad %v4float %x_GLF_color
+ %126 = OpCompositeConstruct %main_out %125
+ OpReturnValue %126
OpFunctionEnd
%main = OpFunction %void None %23
- %126 = OpLabel
- %127 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %127
- %128 = OpFunctionCall %void %main_1
- %130 = OpLoad %v4float %x_GLF_color
- %131 = OpCompositeConstruct %main_out %130
- %129 = OpFunctionCall %void %tint_symbol_3 %131
+ %128 = OpLabel
+ %130 = OpLoad %v4float %gl_FragCoord_param_1
+ %129 = OpFunctionCall %main_out %main_inner %130
+ %131 = OpCompositeExtract %v4float %129 0
+ OpStore %x_GLF_color_1_1 %131
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.spvasm.expected.spvasm
index 7b6efef..53467bd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,17 +17,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%23 = OpTypeFunction %float %_ptr_Function_float
%bool = OpTypeBool
@@ -80,7 +80,7 @@
%86 = OpConstantNull %float
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %115 = OpTypeFunction %void %main_out
+ %115 = OpTypeFunction %main_out %v4float
%func_f1_ = OpFunction %float None %23
%x = OpFunctionParameter %_ptr_Function_float
%27 = OpLabel
@@ -191,20 +191,20 @@
%94 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %115
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %115
+%gl_FragCoord_param = OpFunctionParameter %v4float
%119 = OpLabel
- %120 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %120
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %120 = OpFunctionCall %void %main_1
+ %121 = OpLoad %v4float %x_GLF_color
+ %122 = OpCompositeConstruct %main_out %121
+ OpReturnValue %122
OpFunctionEnd
%main = OpFunction %void None %81
- %122 = OpLabel
- %123 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %123
- %124 = OpFunctionCall %void %main_1
- %126 = OpLoad %v4float %x_GLF_color
- %127 = OpCompositeConstruct %main_out %126
- %125 = OpFunctionCall %void %tint_symbol_3 %127
+ %124 = OpLabel
+ %126 = OpLoad %v4float %gl_FragCoord_param_1
+ %125 = OpFunctionCall %main_out %main_inner %126
+ %127 = OpCompositeExtract %v4float %125 0
+ OpStore %x_GLF_color_1_1 %127
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.wgsl.expected.spvasm
index 7b6efef..53467bd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-function-fragcoord-condition-always-return/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -15,17 +17,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,31 +40,29 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%23 = OpTypeFunction %float %_ptr_Function_float
%bool = OpTypeBool
@@ -80,7 +80,7 @@
%86 = OpConstantNull %float
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %115 = OpTypeFunction %void %main_out
+ %115 = OpTypeFunction %main_out %v4float
%func_f1_ = OpFunction %float None %23
%x = OpFunctionParameter %_ptr_Function_float
%27 = OpLabel
@@ -191,20 +191,20 @@
%94 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %115
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %115
+%gl_FragCoord_param = OpFunctionParameter %v4float
%119 = OpLabel
- %120 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %120
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %120 = OpFunctionCall %void %main_1
+ %121 = OpLoad %v4float %x_GLF_color
+ %122 = OpCompositeConstruct %main_out %121
+ OpReturnValue %122
OpFunctionEnd
%main = OpFunction %void None %81
- %122 = OpLabel
- %123 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %123
- %124 = OpFunctionCall %void %main_1
- %126 = OpLoad %v4float %x_GLF_color
- %127 = OpCompositeConstruct %main_out %126
- %125 = OpFunctionCall %void %tint_symbol_3 %127
+ %124 = OpLabel
+ %126 = OpLoad %v4float %gl_FragCoord_param_1
+ %125 = OpFunctionCall %main_out %main_inner %126
+ %127 = OpCompositeExtract %v4float %125 0
+ OpStore %x_GLF_color_1_1 %127
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.spvasm.expected.spvasm
index 66c0a8c..3ccba4e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
@@ -18,17 +20,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_13 "x_13"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_vf2_ "func_vf2_"
OpName %pos "pos"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -46,10 +48,14 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -59,20 +65,14 @@
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %14
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %14
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %14
%bool = OpTypeBool
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -90,7 +90,7 @@
%68 = OpConstantNull %v2float
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %91 = OpTypeFunction %void %main_out
+ %91 = OpTypeFunction %main_out %v4float
%func_vf2_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%31 = OpLabel
@@ -156,20 +156,20 @@
OpStore %x_GLF_color %90
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %91
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %91
+%gl_FragCoord_param = OpFunctionParameter %v4float
%95 = OpLabel
- %96 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %96
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %63
- %98 = OpLabel
- %99 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %99
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_3 %103
+ %100 = OpLabel
+ %102 = OpLoad %v4float %gl_FragCoord_param_1
+ %101 = OpFunctionCall %main_out %main_inner %102
+ %103 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %103
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.wgsl.expected.spvasm
index 66c0a8c..3ccba4e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-function-vec2-never-discard/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
@@ -18,17 +20,17 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_13 "x_13"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_vf2_ "func_vf2_"
OpName %pos "pos"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -46,10 +48,14 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -59,20 +65,14 @@
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %14 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %14
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %14
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %14
%bool = OpTypeBool
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -90,7 +90,7 @@
%68 = OpConstantNull %v2float
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %91 = OpTypeFunction %void %main_out
+ %91 = OpTypeFunction %main_out %v4float
%func_vf2_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%31 = OpLabel
@@ -156,20 +156,20 @@
OpStore %x_GLF_color %90
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %91
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %91
+%gl_FragCoord_param = OpFunctionParameter %v4float
%95 = OpLabel
- %96 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %96
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %63
- %98 = OpLabel
- %99 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %99
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_3 %103
+ %100 = OpLabel
+ %102 = OpLoad %v4float %gl_FragCoord_param_1
+ %101 = OpFunctionCall %main_out %main_inner %102
+ %103 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %103
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.spvasm.expected.spvasm
index d85fb18..ea2c15e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.spvasm.expected.spvasm
@@ -1,51 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_54 "x_54"
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -58,7 +57,7 @@
%int_100 = OpConstant %int 100
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%x_54 = OpVariable %_ptr_Function_bool Function %46
@@ -149,18 +148,17 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %18
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.wgsl.expected.spvasm
index d85fb18..ea2c15e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-bound-true-logical-or/0-opt.wgsl.expected.spvasm
@@ -1,51 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_54 "x_54"
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -58,7 +57,7 @@
%int_100 = OpConstant %int 100
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%x_54 = OpVariable %_ptr_Function_bool Function %46
@@ -149,18 +148,17 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %18
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.spvasm.expected.spvasm
index f1de9d2..6308fc5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 213
+; Bound: 212
; Schema: 0
OpCapability Shader
%127 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -19,7 +20,6 @@
OpMemberName %buf2 0 "one"
OpName %x_15 "x_15"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %v "v"
@@ -29,9 +29,9 @@
OpName %zero "zero"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_18 ArrayStride 16
@@ -49,13 +49,16 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_18 = OpConstant %uint 18
%_arr_float_uint_18 = OpTypeArray %float %uint_18
@@ -70,12 +73,8 @@
%buf2 = OpTypeStruct %int
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_15 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %23 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %23
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %23
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%26 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -108,14 +107,14 @@
%bool = OpTypeBool
%int_17 = OpConstant %int 17
%main_out = OpTypeStruct %v4float
- %201 = OpTypeFunction %void %main_out
+ %201 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %26
%29 = OpLabel
%m = OpVariable %_ptr_Function_mat4v4float Function %33
- %v = OpVariable %_ptr_Function_v4float Function %23
+ %v = OpVariable %_ptr_Function_v4float Function %5
%f = OpVariable %_ptr_Function_float Function %38
- %a = OpVariable %_ptr_Function_int Function %4
- %b = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
+ %b = OpVariable %_ptr_Function_int Function %9
%zero = OpVariable %_ptr_Function_float Function %38
OpStore %x_GLF_global_loop_count %int_0
%47 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
@@ -297,18 +296,17 @@
OpStore %x_GLF_color %200
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %201
-%tint_symbol = OpFunctionParameter %main_out
- %205 = OpLabel
- %206 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %206
- OpReturn
+ %main_inner = OpFunction %main_out None %201
+ %204 = OpLabel
+ %205 = OpFunctionCall %void %main_1
+ %206 = OpLoad %v4float %x_GLF_color
+ %207 = OpCompositeConstruct %main_out %206
+ OpReturnValue %207
OpFunctionEnd
%main = OpFunction %void None %26
- %208 = OpLabel
- %209 = OpFunctionCall %void %main_1
- %211 = OpLoad %v4float %x_GLF_color
- %212 = OpCompositeConstruct %main_out %211
- %210 = OpFunctionCall %void %tint_symbol_2 %212
+ %209 = OpLabel
+ %210 = OpFunctionCall %main_out %main_inner
+ %211 = OpCompositeExtract %v4float %210 0
+ OpStore %x_GLF_color_1_1 %211
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.wgsl.expected.spvasm
index f1de9d2..6308fc5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-float-accumulate-matrix/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 213
+; Bound: 212
; Schema: 0
OpCapability Shader
%127 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -19,7 +20,6 @@
OpMemberName %buf2 0 "one"
OpName %x_15 "x_15"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %v "v"
@@ -29,9 +29,9 @@
OpName %zero "zero"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_18 ArrayStride 16
@@ -49,13 +49,16 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_18 = OpConstant %uint 18
%_arr_float_uint_18 = OpTypeArray %float %uint_18
@@ -70,12 +73,8 @@
%buf2 = OpTypeStruct %int
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_15 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %23 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %23
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %23
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%26 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -108,14 +107,14 @@
%bool = OpTypeBool
%int_17 = OpConstant %int 17
%main_out = OpTypeStruct %v4float
- %201 = OpTypeFunction %void %main_out
+ %201 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %26
%29 = OpLabel
%m = OpVariable %_ptr_Function_mat4v4float Function %33
- %v = OpVariable %_ptr_Function_v4float Function %23
+ %v = OpVariable %_ptr_Function_v4float Function %5
%f = OpVariable %_ptr_Function_float Function %38
- %a = OpVariable %_ptr_Function_int Function %4
- %b = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
+ %b = OpVariable %_ptr_Function_int Function %9
%zero = OpVariable %_ptr_Function_float Function %38
OpStore %x_GLF_global_loop_count %int_0
%47 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
@@ -297,18 +296,17 @@
OpStore %x_GLF_color %200
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %201
-%tint_symbol = OpFunctionParameter %main_out
- %205 = OpLabel
- %206 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %206
- OpReturn
+ %main_inner = OpFunction %main_out None %201
+ %204 = OpLabel
+ %205 = OpFunctionCall %void %main_1
+ %206 = OpLoad %v4float %x_GLF_color
+ %207 = OpCompositeConstruct %main_out %206
+ OpReturnValue %207
OpFunctionEnd
%main = OpFunction %void None %26
- %208 = OpLabel
- %209 = OpFunctionCall %void %main_1
- %211 = OpLoad %v4float %x_GLF_color
- %212 = OpCompositeConstruct %main_out %211
- %210 = OpFunctionCall %void %tint_symbol_2 %212
+ %209 = OpLabel
+ %210 = OpFunctionCall %main_out %main_inner
+ %211 = OpCompositeExtract %v4float %210 0
+ OpStore %x_GLF_color_1_1 %211
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.spvasm.expected.spvasm
index 53d2926..3a19101 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.spvasm.expected.spvasm
@@ -1,51 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 99
+; Bound: 98
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%18 = OpTypeFunction %int
%int_100 = OpConstant %int 100
%bool = OpTypeBool
@@ -60,7 +59,7 @@
%false = OpConstantFalse %bool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %87 = OpTypeFunction %void %main_out
+ %87 = OpTypeFunction %main_out
%func_ = OpFunction %int None %18
%20 = OpLabel
OpBranch %21
@@ -92,7 +91,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %43
%46 = OpLabel
- %a = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
OpBranch %49
%49 = OpLabel
@@ -148,18 +147,17 @@
%67 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %87
-%tint_symbol = OpFunctionParameter %main_out
- %91 = OpLabel
- %92 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %92
- OpReturn
+ %main_inner = OpFunction %main_out None %87
+ %90 = OpLabel
+ %91 = OpFunctionCall %void %main_1
+ %92 = OpLoad %v4float %x_GLF_color
+ %93 = OpCompositeConstruct %main_out %92
+ OpReturnValue %93
OpFunctionEnd
%main = OpFunction %void None %43
- %94 = OpLabel
- %95 = OpFunctionCall %void %main_1
- %97 = OpLoad %v4float %x_GLF_color
- %98 = OpCompositeConstruct %main_out %97
- %96 = OpFunctionCall %void %tint_symbol_2 %98
+ %95 = OpLabel
+ %96 = OpFunctionCall %main_out %main_inner
+ %97 = OpCompositeExtract %v4float %96 0
+ OpStore %x_GLF_color_1_1 %97
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.wgsl.expected.spvasm
index db5634e..534cc39 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-main-function-call/0-opt.wgsl.expected.spvasm
@@ -1,51 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 101
+; Bound: 100
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_int_uint_3 = OpTypeArray %int %uint_3
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%18 = OpTypeFunction %int
%int_100 = OpConstant %int 100
%bool = OpTypeBool
@@ -60,7 +59,7 @@
%false = OpConstantFalse %bool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %89 = OpTypeFunction %void %main_out
+ %89 = OpTypeFunction %main_out
%func_ = OpFunction %int None %18
%20 = OpLabel
OpBranch %21
@@ -92,7 +91,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %43
%46 = OpLabel
- %a = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
OpBranch %49
%49 = OpLabel
@@ -153,18 +152,17 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %89
-%tint_symbol = OpFunctionParameter %main_out
- %93 = OpLabel
- %94 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %94
- OpReturn
+ %main_inner = OpFunction %main_out None %89
+ %92 = OpLabel
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %43
- %96 = OpLabel
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_2 %100
+ %97 = OpLabel
+ %98 = OpFunctionCall %main_out %main_inner
+ %99 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %99
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.spvasm.expected.spvasm
index 5db6580..1a4e770 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_23 "x_23"
OpName %x_27 "x_27"
@@ -25,17 +25,21 @@
OpName %x_38 "x_38"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +60,7 @@
%int_100 = OpConstant %int 100
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_23 = OpVariable %_ptr_Function_int Function %21
@@ -175,18 +174,17 @@
%86 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %15
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.wgsl.expected.spvasm
index 5db6580..1a4e770 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-multiply-one-minus/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_23 "x_23"
OpName %x_27 "x_27"
@@ -25,17 +25,21 @@
OpName %x_38 "x_38"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +60,7 @@
%int_100 = OpConstant %int 100
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_23 = OpVariable %_ptr_Function_int Function %21
@@ -175,18 +174,17 @@
%86 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %15
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.spvasm.expected.spvasm
index 6b93297..72bea40 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.spvasm.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 81
+; Bound: 80
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -55,7 +54,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %69 = OpTypeFunction %void %main_out
+ %69 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
OpStore %x_GLF_global_loop_count %int_0
@@ -119,18 +118,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %69
-%tint_symbol = OpFunctionParameter %main_out
- %73 = OpLabel
- %74 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %74
- OpReturn
+ %main_inner = OpFunction %main_out None %69
+ %72 = OpLabel
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %18
- %76 = OpLabel
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_2 %80
+ %77 = OpLabel
+ %78 = OpFunctionCall %main_out %main_inner
+ %79 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %79
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.wgsl.expected.spvasm
index 6b93297..72bea40 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-global-loop-counter-squared-comparison/0-opt.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 81
+; Bound: 80
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -55,7 +54,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %69 = OpTypeFunction %void %main_out
+ %69 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
OpStore %x_GLF_global_loop_count %int_0
@@ -119,18 +118,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %69
-%tint_symbol = OpFunctionParameter %main_out
- %73 = OpLabel
- %74 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %74
- OpReturn
+ %main_inner = OpFunction %main_out None %69
+ %72 = OpLabel
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %18
- %76 = OpLabel
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_2 %80
+ %77 = OpLabel
+ %78 = OpFunctionCall %main_out %main_inner
+ %79 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %79
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.spvasm.expected.spvasm
index 2016928..f2d2876 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%43 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%44 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -87,18 +86,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %12
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.wgsl.expected.spvasm
index 2016928..f2d2876 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-conversion-identical-branches/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%43 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%44 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -87,18 +86,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %12
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.spvasm.expected.spvasm
index 69687bb..b378849 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,14 +17,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,30 +37,28 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -70,7 +70,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%29 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
@@ -116,20 +116,20 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %62
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %62
+%gl_FragCoord_param = OpFunctionParameter %v4float
%66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %67
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %22
- %69 = OpLabel
- %70 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %70
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_3 %74
+ %71 = OpLabel
+ %73 = OpLoad %v4float %gl_FragCoord_param_1
+ %72 = OpFunctionCall %main_out %main_inner %73
+ %74 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.wgsl.expected.spvasm
index 69687bb..b378849 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-switch-fallthrough/0.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,14 +17,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,30 +37,28 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -70,7 +70,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%29 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
@@ -116,20 +116,20 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %62
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %62
+%gl_FragCoord_param = OpFunctionParameter %v4float
%66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %67
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %22
- %69 = OpLabel
- %70 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %70
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_3 %74
+ %71 = OpLabel
+ %73 = OpLoad %v4float %gl_FragCoord_param_1
+ %72 = OpFunctionCall %main_out %main_inner %73
+ %74 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.spvasm.expected.spvasm
index a7e3461..c78c5a6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,17 +20,21 @@
OpName %x_66_phi "x_66_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -38,13 +42,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%int_3 = OpConstant %int 3
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -165,18 +164,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %15
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.wgsl.expected.spvasm
index a7e3461..c78c5a6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-true-continue/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,17 +20,21 @@
OpName %x_66_phi "x_66_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -38,13 +42,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%int_3 = OpConstant %int 3
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -165,18 +164,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %15
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.spvasm.expected.spvasm
index 03697ab..b46675e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%true = OpConstantTrue %bool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -113,18 +112,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %15
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.wgsl.expected.spvasm
index 03697ab..b46675e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-if-true-discard-in-do-while-never-reached/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%true = OpConstantTrue %bool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -113,18 +112,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %15
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.spvasm.expected.spvasm
index 5e511e0..16fd48a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%56 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -110,18 +109,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %12
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.wgsl.expected.spvasm
index 5e511e0..16fd48a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%56 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -110,18 +109,17 @@
%50 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %12
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.spvasm.expected.spvasm
index 9d4d51a..a28e313 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 124
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
@@ -24,9 +24,9 @@
OpName %x_80_phi "x_80_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_3_0 = OpTypeArray %float %uint_3
@@ -78,7 +77,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_3_0 Function %26
@@ -189,18 +188,17 @@
%96 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %113
-%tint_symbol = OpFunctionParameter %main_out
- %117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %118
- OpReturn
+ %main_inner = OpFunction %main_out None %113
+ %116 = OpLabel
+ %117 = OpFunctionCall %void %main_1
+ %118 = OpLoad %v4float %x_GLF_color
+ %119 = OpCompositeConstruct %main_out %118
+ OpReturnValue %119
OpFunctionEnd
%main = OpFunction %void None %19
- %120 = OpLabel
- %121 = OpFunctionCall %void %main_1
- %123 = OpLoad %v4float %x_GLF_color
- %124 = OpCompositeConstruct %main_out %123
- %122 = OpFunctionCall %void %tint_symbol_2 %124
+ %121 = OpLabel
+ %122 = OpFunctionCall %main_out %main_inner
+ %123 = OpCompositeExtract %v4float %122 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.wgsl.expected.spvasm
index 9d4d51a..a28e313 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-array-element-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 124
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %a "a"
@@ -24,9 +24,9 @@
OpName %x_80_phi "x_80_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_3_0 = OpTypeArray %float %uint_3
@@ -78,7 +77,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_3_0 Function %26
@@ -189,18 +188,17 @@
%96 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %113
-%tint_symbol = OpFunctionParameter %main_out
- %117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %118
- OpReturn
+ %main_inner = OpFunction %main_out None %113
+ %116 = OpLabel
+ %117 = OpFunctionCall %void %main_1
+ %118 = OpLoad %v4float %x_GLF_color
+ %119 = OpCompositeConstruct %main_out %118
+ OpReturnValue %119
OpFunctionEnd
%main = OpFunction %void None %19
- %120 = OpLabel
- %121 = OpFunctionCall %void %main_1
- %123 = OpLoad %v4float %x_GLF_color
- %124 = OpCompositeConstruct %main_out %123
- %122 = OpFunctionCall %void %tint_symbol_2 %124
+ %121 = OpLabel
+ %122 = OpFunctionCall %main_out %main_inner
+ %123 = OpCompositeExtract %v4float %122 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.spvasm.expected.spvasm
index 2189bcd..a563269 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
@@ -24,9 +24,9 @@
OpName %x_64_phi "x_64_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,9 +39,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%float_1_10000002 = OpConstant %float 1.10000002
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %25
@@ -168,18 +167,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %19
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.wgsl.expected.spvasm
index 2189bcd..a563269 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-float-in-loop-abs/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
@@ -24,9 +24,9 @@
OpName %x_64_phi "x_64_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -39,9 +39,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%float_1_10000002 = OpConstant %float 1.10000002
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %25
@@ -168,18 +167,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %19
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.spvasm.expected.spvasm
index 209a878..9036139 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.spvasm.expected.spvasm
@@ -1,52 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %x_66_phi "x_66_phi"
OpName %x_67 "x_67"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,11 +58,11 @@
%int_10 = OpConstant %int 10
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%func_ = OpFunction %void None %18
%21 = OpLabel
- %x_66_phi = OpVariable %_ptr_Function_int Function %4
- %x_67 = OpVariable %_ptr_Function_int Function %4
+ %x_66_phi = OpVariable %_ptr_Function_int Function %9
+ %x_67 = OpVariable %_ptr_Function_int Function %9
%27 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
%28 = OpLoad %int %27
%30 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
@@ -176,18 +175,17 @@
%84 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %18
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.wgsl.expected.spvasm
index 209a878..9036139 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-global-counter-loop-function/0-opt.wgsl.expected.spvasm
@@ -1,52 +1,51 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %x_66_phi "x_66_phi"
OpName %x_67 "x_67"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,11 +58,11 @@
%int_10 = OpConstant %int 10
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%func_ = OpFunction %void None %18
%21 = OpLabel
- %x_66_phi = OpVariable %_ptr_Function_int Function %4
- %x_67 = OpVariable %_ptr_Function_int Function %4
+ %x_66_phi = OpVariable %_ptr_Function_int Function %9
+ %x_67 = OpVariable %_ptr_Function_int Function %9
%27 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_1
%28 = OpLoad %int %27
%30 = OpAccessChain %_ptr_Uniform_int %x_7 %uint_0 %int_0
@@ -176,18 +175,17 @@
%84 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %18
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.spvasm.expected.spvasm
index 413b393..823ca34 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.spvasm.expected.spvasm
@@ -1,46 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
%52 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -64,7 +63,7 @@
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%65 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function__arr_int_uint_3 Function %21
@@ -116,18 +115,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %12
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.wgsl.expected.spvasm
index 413b393..823ca34 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-inside-clamp/0-opt.wgsl.expected.spvasm
@@ -1,46 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
%52 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -64,7 +63,7 @@
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%65 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function__arr_int_uint_3 Function %21
@@ -116,18 +115,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %12
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.spvasm.expected.spvasm
index 761bab9..181a7a2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.spvasm.expected.spvasm
@@ -1,35 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 103
+; Bound: 102
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -67,7 +66,7 @@
%int_9 = OpConstant %int 9
%59 = OpConstantComposite %_arr_int_uint_9 %int_1 %int_2 %int_3 %int_4 %int_5 %int_6 %int_7 %int_8 %int_9
%main_out = OpTypeStruct %v4float
- %91 = OpTypeFunction %void %main_out
+ %91 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -144,18 +143,17 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %91
-%tint_symbol = OpFunctionParameter %main_out
- %95 = OpLabel
- %96 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %96
- OpReturn
+ %main_inner = OpFunction %main_out None %91
+ %94 = OpLabel
+ %95 = OpFunctionCall %void %main_1
+ %96 = OpLoad %v4float %x_GLF_color
+ %97 = OpCompositeConstruct %main_out %96
+ OpReturnValue %97
OpFunctionEnd
%main = OpFunction %void None %15
- %98 = OpLabel
- %99 = OpFunctionCall %void %main_1
- %101 = OpLoad %v4float %x_GLF_color
- %102 = OpCompositeConstruct %main_out %101
- %100 = OpFunctionCall %void %tint_symbol_2 %102
+ %99 = OpLabel
+ %100 = OpFunctionCall %main_out %main_inner
+ %101 = OpCompositeExtract %v4float %100 0
+ OpStore %x_GLF_color_1_1 %101
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.wgsl.expected.spvasm
index 761bab9..181a7a2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-int-loop-counter-mod-array/0-opt.wgsl.expected.spvasm
@@ -1,35 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 103
+; Bound: 102
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -67,7 +66,7 @@
%int_9 = OpConstant %int 9
%59 = OpConstantComposite %_arr_int_uint_9 %int_1 %int_2 %int_3 %int_4 %int_5 %int_6 %int_7 %int_8 %int_9
%main_out = OpTypeStruct %v4float
- %91 = OpTypeFunction %void %main_out
+ %91 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -144,18 +143,17 @@
%71 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %91
-%tint_symbol = OpFunctionParameter %main_out
- %95 = OpLabel
- %96 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %96
- OpReturn
+ %main_inner = OpFunction %main_out None %91
+ %94 = OpLabel
+ %95 = OpFunctionCall %void %main_1
+ %96 = OpLoad %v4float %x_GLF_color
+ %97 = OpCompositeConstruct %main_out %96
+ OpReturnValue %97
OpFunctionEnd
%main = OpFunction %void None %15
- %98 = OpLabel
- %99 = OpFunctionCall %void %main_1
- %101 = OpLoad %v4float %x_GLF_color
- %102 = OpCompositeConstruct %main_out %101
- %100 = OpFunctionCall %void %tint_symbol_2 %102
+ %99 = OpLabel
+ %100 = OpFunctionCall %main_out %main_inner
+ %101 = OpCompositeExtract %v4float %100 0
+ OpStore %x_GLF_color_1_1 %101
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.spvasm.expected.spvasm
index 0a7063b..d0e8ea0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 133
+; Bound: 132
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -22,17 +22,21 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -64,7 +63,7 @@
%int_5 = OpConstant %int 5
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %121 = OpTypeFunction %void %main_out
+ %121 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -203,18 +202,17 @@
%101 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %121
-%tint_symbol = OpFunctionParameter %main_out
- %125 = OpLabel
- %126 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %126
- OpReturn
+ %main_inner = OpFunction %main_out None %121
+ %124 = OpLabel
+ %125 = OpFunctionCall %void %main_1
+ %126 = OpLoad %v4float %x_GLF_color
+ %127 = OpCompositeConstruct %main_out %126
+ OpReturnValue %127
OpFunctionEnd
%main = OpFunction %void None %15
- %128 = OpLabel
- %129 = OpFunctionCall %void %main_1
- %131 = OpLoad %v4float %x_GLF_color
- %132 = OpCompositeConstruct %main_out %131
- %130 = OpFunctionCall %void %tint_symbol_2 %132
+ %129 = OpLabel
+ %130 = OpFunctionCall %main_out %main_inner
+ %131 = OpCompositeExtract %v4float %130 0
+ OpStore %x_GLF_color_1_1 %131
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.wgsl.expected.spvasm
index 94f92e8..dd6dbe2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-multiple-integers/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 135
+; Bound: 134
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -22,17 +22,21 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -40,13 +44,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -64,7 +63,7 @@
%int_5 = OpConstant %int 5
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %123 = OpTypeFunction %void %main_out
+ %123 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -208,18 +207,17 @@
%103 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %123
-%tint_symbol = OpFunctionParameter %main_out
- %127 = OpLabel
- %128 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %128
- OpReturn
+ %main_inner = OpFunction %main_out None %123
+ %126 = OpLabel
+ %127 = OpFunctionCall %void %main_1
+ %128 = OpLoad %v4float %x_GLF_color
+ %129 = OpCompositeConstruct %main_out %128
+ OpReturnValue %129
OpFunctionEnd
%main = OpFunction %void None %15
- %130 = OpLabel
- %131 = OpFunctionCall %void %main_1
- %133 = OpLoad %v4float %x_GLF_color
- %134 = OpCompositeConstruct %main_out %133
- %132 = OpFunctionCall %void %tint_symbol_2 %134
+ %131 = OpLabel
+ %132 = OpFunctionCall %main_out %main_inner
+ %133 = OpCompositeExtract %v4float %132 0
+ OpStore %x_GLF_color_1_1 %133
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.spvasm.expected.spvasm
index dcf9f7f..27ab1ca 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %a "a"
@@ -22,9 +22,9 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -37,9 +37,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -47,18 +51,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -84,7 +83,7 @@
%v3bool = OpTypeVector %bool 3
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m = OpVariable %_ptr_Function_mat3v3float Function %28
@@ -165,18 +164,17 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %20
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.wgsl.expected.spvasm
index dcf9f7f..27ab1ca 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-array-matrix-element/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %a "a"
@@ -22,9 +22,9 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -37,9 +37,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -47,18 +51,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -84,7 +83,7 @@
%v3bool = OpTypeVector %bool 3
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m = OpVariable %_ptr_Function_mat3v3float Function %28
@@ -165,18 +164,17 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %20
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.spvasm.expected.spvasm
index 03ce671..38c5268 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 141
+; Bound: 140
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v "v"
@@ -22,9 +22,9 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -83,11 +82,11 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_int Function %26
- %v = OpVariable %_ptr_Function_v4float Function %17
+ %v = OpVariable %_ptr_Function_v4float Function %5
%m = OpVariable %_ptr_Function_mat3v4float Function %32
%indexable = OpVariable %_ptr_Function_mat4v4float Function %36
%40 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
@@ -183,18 +182,17 @@
%109 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %129
-%tint_symbol = OpFunctionParameter %main_out
- %133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %134
- OpReturn
+ %main_inner = OpFunction %main_out None %129
+ %132 = OpLabel
+ %133 = OpFunctionCall %void %main_1
+ %134 = OpLoad %v4float %x_GLF_color
+ %135 = OpCompositeConstruct %main_out %134
+ OpReturnValue %135
OpFunctionEnd
%main = OpFunction %void None %20
- %136 = OpLabel
- %137 = OpFunctionCall %void %main_1
- %139 = OpLoad %v4float %x_GLF_color
- %140 = OpCompositeConstruct %main_out %139
- %138 = OpFunctionCall %void %tint_symbol_2 %140
+ %137 = OpLabel
+ %138 = OpFunctionCall %main_out %main_inner
+ %139 = OpCompositeExtract %v4float %138 0
+ OpStore %x_GLF_color_1_1 %139
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.wgsl.expected.spvasm
index 03ce671..38c5268 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-increment-vector-component-with-matrix-copy/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 141
+; Bound: 140
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v "v"
@@ -22,9 +22,9 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf1 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -83,11 +82,11 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_int Function %26
- %v = OpVariable %_ptr_Function_v4float Function %17
+ %v = OpVariable %_ptr_Function_v4float Function %5
%m = OpVariable %_ptr_Function_mat3v4float Function %32
%indexable = OpVariable %_ptr_Function_mat4v4float Function %36
%40 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
@@ -183,18 +182,17 @@
%109 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %129
-%tint_symbol = OpFunctionParameter %main_out
- %133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %134
- OpReturn
+ %main_inner = OpFunction %main_out None %129
+ %132 = OpLabel
+ %133 = OpFunctionCall %void %main_1
+ %134 = OpLoad %v4float %x_GLF_color
+ %135 = OpCompositeConstruct %main_out %134
+ OpReturnValue %135
OpFunctionEnd
%main = OpFunction %void None %20
- %136 = OpLabel
- %137 = OpFunctionCall %void %main_1
- %139 = OpLoad %v4float %x_GLF_color
- %140 = OpCompositeConstruct %main_out %139
- %138 = OpFunctionCall %void %tint_symbol_2 %140
+ %137 = OpLabel
+ %138 = OpFunctionCall %main_out %main_inner
+ %139 = OpCompositeExtract %v4float %138 0
+ OpStore %x_GLF_color_1_1 %139
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.spvasm.expected.spvasm
index 62468de..db453f3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.spvasm.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%11 = OpTypeFunction %v4float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -47,7 +47,7 @@
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %v4float None %11
%13 = OpLabel
%x = OpVariable %_ptr_Function_float Function %16
@@ -88,20 +88,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %45
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %45
+%gl_FragCoord_param = OpFunctionParameter %v4float
%49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %50
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %50 = OpFunctionCall %void %main_1
+ %51 = OpLoad %v4float %x_GLF_color
+ %52 = OpCompositeConstruct %main_out %51
+ OpReturnValue %52
OpFunctionEnd
%main = OpFunction %void None %31
- %52 = OpLabel
- %53 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %53
- %54 = OpFunctionCall %void %main_1
- %56 = OpLoad %v4float %x_GLF_color
- %57 = OpCompositeConstruct %main_out %56
- %55 = OpFunctionCall %void %tint_symbol_3 %57
+ %54 = OpLabel
+ %56 = OpLoad %v4float %gl_FragCoord_param_1
+ %55 = OpFunctionCall %main_out %main_inner %56
+ %57 = OpCompositeExtract %v4float %55 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.wgsl.expected.spvasm
index 62468de..db453f3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-empty-block/0-opt.wgsl.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%11 = OpTypeFunction %v4float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -47,7 +47,7 @@
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %v4float None %11
%13 = OpLabel
%x = OpVariable %_ptr_Function_float Function %16
@@ -88,20 +88,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %45
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %45
+%gl_FragCoord_param = OpFunctionParameter %v4float
%49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %50
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %50 = OpFunctionCall %void %main_1
+ %51 = OpLoad %v4float %x_GLF_color
+ %52 = OpCompositeConstruct %main_out %51
+ OpReturnValue %52
OpFunctionEnd
%main = OpFunction %void None %31
- %52 = OpLabel
- %53 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %53
- %54 = OpFunctionCall %void %main_1
- %56 = OpLoad %v4float %x_GLF_color
- %57 = OpCompositeConstruct %main_out %56
- %55 = OpFunctionCall %void %tint_symbol_3 %57
+ %54 = OpLabel
+ %56 = OpLoad %v4float %gl_FragCoord_param_1
+ %55 = OpFunctionCall %main_out %main_inner %56
+ %57 = OpCompositeExtract %v4float %55 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.spvasm.expected.spvasm
index f712093..6265fa8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %returnRed_ "returnRed_"
OpName %x_33 "x_33"
OpName %x_34 "x_34"
@@ -23,27 +23,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %v4float
%bool = OpTypeBool
%false = OpConstantFalse %bool
@@ -62,15 +61,15 @@
%void = OpTypeVoid
%56 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%returnRed_ = OpFunction %v4float None %12
%14 = OpLabel
%x_33 = OpVariable %_ptr_Function_bool Function %19
- %x_34 = OpVariable %_ptr_Function_v4float Function %9
- %x_48 = OpVariable %_ptr_Function_v4float Function %9
+ %x_34 = OpVariable %_ptr_Function_v4float Function %5
+ %x_48 = OpVariable %_ptr_Function_v4float Function %5
%x_36_phi = OpVariable %_ptr_Function_bool Function %19
- %x_51_phi = OpVariable %_ptr_Function_v4float Function %9
- %x_48_phi = OpVariable %_ptr_Function_v4float Function %9
+ %x_51_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_48_phi = OpVariable %_ptr_Function_v4float Function %5
%x_49_phi = OpVariable %_ptr_Function_bool Function %19
OpStore %x_33 %false
OpStore %x_36_phi %false
@@ -146,18 +145,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %56
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.wgsl.expected.spvasm
index f712093..6265fa8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-nested-loops/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %returnRed_ "returnRed_"
OpName %x_33 "x_33"
OpName %x_34 "x_34"
@@ -23,27 +23,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %v4float
%bool = OpTypeBool
%false = OpConstantFalse %bool
@@ -62,15 +61,15 @@
%void = OpTypeVoid
%56 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%returnRed_ = OpFunction %v4float None %12
%14 = OpLabel
%x_33 = OpVariable %_ptr_Function_bool Function %19
- %x_34 = OpVariable %_ptr_Function_v4float Function %9
- %x_48 = OpVariable %_ptr_Function_v4float Function %9
+ %x_34 = OpVariable %_ptr_Function_v4float Function %5
+ %x_48 = OpVariable %_ptr_Function_v4float Function %5
%x_36_phi = OpVariable %_ptr_Function_bool Function %19
- %x_51_phi = OpVariable %_ptr_Function_v4float Function %9
- %x_48_phi = OpVariable %_ptr_Function_v4float Function %9
+ %x_51_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_48_phi = OpVariable %_ptr_Function_v4float Function %5
%x_49_phi = OpVariable %_ptr_Function_bool Function %19
OpStore %x_33 %false
OpStore %x_36_phi %false
@@ -146,18 +145,17 @@
%61 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %56
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.spvasm.expected.spvasm
index f2a69e2..f0cbfb3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%8 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -43,7 +42,7 @@
%false = OpConstantFalse %bool
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%func_ = OpFunction %float None %8
%10 = OpLabel
%i = OpVariable %_ptr_Function_int Function %14
@@ -103,18 +102,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %44
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.wgsl.expected.spvasm
index f2a69e2..f0cbfb3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-return-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %i "i"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%8 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -43,7 +42,7 @@
%false = OpConstantFalse %bool
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%func_ = OpFunction %float None %8
%10 = OpLabel
%i = OpVariable %_ptr_Function_int Function %14
@@ -103,18 +102,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %44
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.spvasm.expected.spvasm
index eaaf448..782abec 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.spvasm.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%11 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -50,7 +50,7 @@
%float_0 = OpConstant %float 0
%50 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %11
%13 = OpLabel
%x = OpVariable %_ptr_Function_float Function %16
@@ -92,20 +92,20 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %51
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %51
+%gl_FragCoord_param = OpFunctionParameter %v4float
%55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %56
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %39
- %58 = OpLabel
- %59 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %59
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_3 %63
+ %60 = OpLabel
+ %62 = OpLoad %v4float %gl_FragCoord_param_1
+ %61 = OpFunctionCall %main_out %main_inner %62
+ %63 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.wgsl.expected.spvasm
index eaaf448..782abec 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inline-pass-unreachable-func/0-opt.wgsl.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%11 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -50,7 +50,7 @@
%float_0 = OpConstant %float 0
%50 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %11
%13 = OpLabel
%x = OpVariable %_ptr_Function_float Function %16
@@ -92,20 +92,20 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %51
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %51
+%gl_FragCoord_param = OpFunctionParameter %v4float
%55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %56
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %39
- %58 = OpLabel
- %59 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %59
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_3 %63
+ %60 = OpLabel
+ %62 = OpLoad %v4float %gl_FragCoord_param_1
+ %61 = OpFunctionCall %main_out %main_inner %62
+ %63 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.spvasm.expected.spvasm
index e953d6b..65424da 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,17 +17,17 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %arr "arr"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,10 +40,15 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -49,21 +56,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -82,7 +82,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %107 = OpTypeFunction %void %main_out
+ %107 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -178,20 +178,20 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %107
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %107
+%gl_FragCoord_param = OpFunctionParameter %v4float
%111 = OpLabel
- %112 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %112
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %112 = OpFunctionCall %void %main_1
+ %113 = OpLoad %v4float %x_GLF_color
+ %114 = OpCompositeConstruct %main_out %113
+ OpReturnValue %114
OpFunctionEnd
%main = OpFunction %void None %23
- %114 = OpLabel
- %115 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %115
- %116 = OpFunctionCall %void %main_1
- %118 = OpLoad %v4float %x_GLF_color
- %119 = OpCompositeConstruct %main_out %118
- %117 = OpFunctionCall %void %tint_symbol_3 %119
+ %116 = OpLabel
+ %118 = OpLoad %v4float %gl_FragCoord_param_1
+ %117 = OpFunctionCall %main_out %main_inner %118
+ %119 = OpCompositeExtract %v4float %117 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.wgsl.expected.spvasm
index e953d6b..65424da 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-increase-negative/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,17 +17,17 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %arr "arr"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,10 +40,15 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -49,21 +56,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -82,7 +82,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %107 = OpTypeFunction %void %main_out
+ %107 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -178,20 +178,20 @@
%89 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %107
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %107
+%gl_FragCoord_param = OpFunctionParameter %v4float
%111 = OpLabel
- %112 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %112
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %112 = OpFunctionCall %void %main_1
+ %113 = OpLoad %v4float %x_GLF_color
+ %114 = OpCompositeConstruct %main_out %113
+ OpReturnValue %114
OpFunctionEnd
%main = OpFunction %void None %23
- %114 = OpLabel
- %115 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %115
- %116 = OpFunctionCall %void %main_1
- %118 = OpLoad %v4float %x_GLF_color
- %119 = OpCompositeConstruct %main_out %118
- %117 = OpFunctionCall %void %tint_symbol_3 %119
+ %116 = OpLabel
+ %118 = OpLoad %v4float %gl_FragCoord_param_1
+ %117 = OpFunctionCall %main_out %main_inner %118
+ %119 = OpCompositeExtract %v4float %117 0
+ OpStore %x_GLF_color_1_1 %119
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.spvasm.expected.spvasm
index 895c6ea..cab9df1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -46,18 +50,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -72,7 +71,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_int Function %26
@@ -146,18 +145,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %20
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.wgsl.expected.spvasm
index 895c6ea..cab9df1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-ldexp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -46,18 +50,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -72,7 +71,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_int Function %26
@@ -146,18 +145,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %20
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.spvasm.expected.spvasm
index ef89a41..fdd607e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 124
+; Bound: 123
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %f "f"
OpName %a "a"
@@ -21,17 +21,21 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -39,13 +43,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %int %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%85 = OpConstantNull %float
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float
- %112 = OpTypeFunction %void %main_out
+ %112 = OpTypeFunction %main_out
%func_f1_ = OpFunction %int None %15
%f = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -176,18 +175,17 @@
%92 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %112
-%tint_symbol = OpFunctionParameter %main_out
- %116 = OpLabel
- %117 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %117
- OpReturn
+ %main_inner = OpFunction %main_out None %112
+ %115 = OpLabel
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %80
- %119 = OpLabel
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_2 %123
+ %120 = OpLabel
+ %121 = OpFunctionCall %main_out %main_inner
+ %122 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.wgsl.expected.spvasm
index ef89a41..fdd607e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-neg-func-arg/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 124
+; Bound: 123
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_f1_ "func_f1_"
OpName %f "f"
OpName %a "a"
@@ -21,17 +21,21 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -39,13 +43,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %int %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%85 = OpConstantNull %float
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float
- %112 = OpTypeFunction %void %main_out
+ %112 = OpTypeFunction %main_out
%func_f1_ = OpFunction %int None %15
%f = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -176,18 +175,17 @@
%92 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %112
-%tint_symbol = OpFunctionParameter %main_out
- %116 = OpLabel
- %117 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %117
- OpReturn
+ %main_inner = OpFunction %main_out None %112
+ %115 = OpLabel
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %80
- %119 = OpLabel
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_2 %123
+ %120 = OpLabel
+ %121 = OpFunctionCall %main_out %main_inner
+ %122 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.spvasm.expected.spvasm
index ed58ead..4cdf233 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_ "f1_"
OpName %i "i"
OpName %A "A"
@@ -25,9 +25,11 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,10 +42,15 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,21 +58,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%23 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%28 = OpConstantNull %int
@@ -85,7 +85,7 @@
%void = OpTypeVoid
%91 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out %v4float
%f1_ = OpFunction %int None %23
%25 = OpLabel
%i = OpVariable %_ptr_Function_int Function %28
@@ -182,20 +182,20 @@
OpStore %x_GLF_color %107
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %108
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %108
+%gl_FragCoord_param = OpFunctionParameter %v4float
%112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %113
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %91
- %115 = OpLabel
- %116 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %116
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_3 %120
+ %117 = OpLabel
+ %119 = OpLoad %v4float %gl_FragCoord_param_1
+ %118 = OpFunctionCall %main_out %main_inner %119
+ %120 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.wgsl.expected.spvasm
index ed58ead..4cdf233 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-add-sub-pre-increase/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_ "f1_"
OpName %i "i"
OpName %A "A"
@@ -25,9 +25,11 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,10 +42,15 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,21 +58,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%23 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
%28 = OpConstantNull %int
@@ -85,7 +85,7 @@
%void = OpTypeVoid
%91 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out %v4float
%f1_ = OpFunction %int None %23
%25 = OpLabel
%i = OpVariable %_ptr_Function_int Function %28
@@ -182,20 +182,20 @@
OpStore %x_GLF_color %107
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %108
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %108
+%gl_FragCoord_param = OpFunctionParameter %v4float
%112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %113
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %91
- %115 = OpLabel
- %116 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %116
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_3 %120
+ %117 = OpLabel
+ %119 = OpLoad %v4float %gl_FragCoord_param_1
+ %118 = OpFunctionCall %main_out %main_inner %119
+ %120 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.spvasm.expected.spvasm
index a1804d0..0bc2fa4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 160
+; Bound: 159
; Schema: 0
OpCapability Shader
%45 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_110_phi "x_110_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -58,12 +61,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -81,12 +80,12 @@
%int_3 = OpConstant %int 3
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %148 = OpTypeFunction %void %main_out
+ %148 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
- %ref = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%x_85 = OpVariable %_ptr_Function_bool Function %33
%x_97 = OpVariable %_ptr_Function_bool Function %33
%x_109 = OpVariable %_ptr_Function_bool Function %33
@@ -222,18 +221,17 @@
%127 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %148
-%tint_symbol = OpFunctionParameter %main_out
- %152 = OpLabel
- %153 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %153
- OpReturn
+ %main_inner = OpFunction %main_out None %148
+ %151 = OpLabel
+ %152 = OpFunctionCall %void %main_1
+ %153 = OpLoad %v4float %x_GLF_color
+ %154 = OpCompositeConstruct %main_out %153
+ OpReturnValue %154
OpFunctionEnd
%main = OpFunction %void None %20
- %155 = OpLabel
- %156 = OpFunctionCall %void %main_1
- %158 = OpLoad %v4float %x_GLF_color
- %159 = OpCompositeConstruct %main_out %158
- %157 = OpFunctionCall %void %tint_symbol_2 %159
+ %156 = OpLabel
+ %157 = OpFunctionCall %main_out %main_inner
+ %158 = OpCompositeExtract %v4float %157 0
+ OpStore %x_GLF_color_1_1 %158
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.wgsl.expected.spvasm
index a1804d0..0bc2fa4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-pack-unpack/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 160
+; Bound: 159
; Schema: 0
OpCapability Shader
%45 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_110_phi "x_110_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -58,12 +61,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -81,12 +80,12 @@
%int_3 = OpConstant %int 3
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %148 = OpTypeFunction %void %main_out
+ %148 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
- %ref = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%x_85 = OpVariable %_ptr_Function_bool Function %33
%x_97 = OpVariable %_ptr_Function_bool Function %33
%x_109 = OpVariable %_ptr_Function_bool Function %33
@@ -222,18 +221,17 @@
%127 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %148
-%tint_symbol = OpFunctionParameter %main_out
- %152 = OpLabel
- %153 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %153
- OpReturn
+ %main_inner = OpFunction %main_out None %148
+ %151 = OpLabel
+ %152 = OpFunctionCall %void %main_1
+ %153 = OpLoad %v4float %x_GLF_color
+ %154 = OpCompositeConstruct %main_out %153
+ OpReturnValue %154
OpFunctionEnd
%main = OpFunction %void None %20
- %155 = OpLabel
- %156 = OpFunctionCall %void %main_1
- %158 = OpLoad %v4float %x_GLF_color
- %159 = OpCompositeConstruct %main_out %158
- %157 = OpFunctionCall %void %tint_symbol_2 %159
+ %156 = OpLabel
+ %157 = OpFunctionCall %main_out %main_inner
+ %158 = OpCompositeExtract %v4float %157 0
+ OpStore %x_GLF_color_1_1 %158
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.spvasm.expected.spvasm
index 4075f23..130904a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 106
+; Bound: 105
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %count0 "count0"
OpName %count1 "count1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -56,7 +55,7 @@
%int_0 = OpConstant %int 0
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%count0 = OpVariable %_ptr_Function_int Function %21
@@ -156,18 +155,17 @@
%88 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %94
-%tint_symbol = OpFunctionParameter %main_out
- %98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %99
- OpReturn
+ %main_inner = OpFunction %main_out None %94
+ %97 = OpLabel
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %15
- %101 = OpLabel
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_2 %105
+ %102 = OpLabel
+ %103 = OpFunctionCall %main_out %main_inner
+ %104 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.wgsl.expected.spvasm
index 4075f23..130904a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-switch/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 106
+; Bound: 105
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %count0 "count0"
OpName %count1 "count1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -56,7 +55,7 @@
%int_0 = OpConstant %int 0
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%count0 = OpVariable %_ptr_Function_int Function %21
@@ -156,18 +155,17 @@
%88 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %94
-%tint_symbol = OpFunctionParameter %main_out
- %98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %99
- OpReturn
+ %main_inner = OpFunction %main_out None %94
+ %97 = OpLabel
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %15
- %101 = OpLabel
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_2 %105
+ %102 = OpLabel
+ %103 = OpFunctionCall %main_out %main_inner
+ %104 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.spvasm.expected.spvasm
index 2d8d7ba..3a60029 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,15 +15,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -35,9 +35,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -45,17 +49,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_2_0 = OpTypeArray %float %uint_2
@@ -71,7 +70,7 @@
%int_2 = OpConstant %int 2
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_2_0 Function %26
@@ -122,18 +121,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %19
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.wgsl.expected.spvasm
index 2d8d7ba..3a60029 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-and-or-xor-xor-add/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,15 +15,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -35,9 +35,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2_0 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -45,17 +49,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_arr_float_uint_2_0 = OpTypeArray %float %uint_2
@@ -71,7 +70,7 @@
%int_2 = OpConstant %int 2
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_2_0 Function %26
@@ -122,18 +121,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %19
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.spvasm.expected.spvasm
index 2b47873..1a3d162 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.spvasm.expected.spvasm
@@ -1,35 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 59
+; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -38,8 +39,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -81,18 +80,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %47
-%tint_symbol = OpFunctionParameter %main_out
- %51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %52
- OpReturn
+ %main_inner = OpFunction %main_out None %47
+ %50 = OpLabel
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %15
- %54 = OpLabel
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_2 %58
+ %55 = OpLabel
+ %56 = OpFunctionCall %main_out %main_inner
+ %57 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.wgsl.expected.spvasm
index 2b47873..1a3d162 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-isnan/0-opt.wgsl.expected.spvasm
@@ -1,35 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 59
+; Bound: 58
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -38,8 +39,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -81,18 +80,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %47
-%tint_symbol = OpFunctionParameter %main_out
- %51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %52
- OpReturn
+ %main_inner = OpFunction %main_out None %47
+ %50 = OpLabel
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %15
- %54 = OpLabel
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_2 %58
+ %55 = OpLabel
+ %56 = OpFunctionCall %main_out %main_inner
+ %57 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.spvasm.expected.spvasm
index 6a92dec..6001a9b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%32 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
@@ -15,13 +16,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -34,27 +34,26 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -65,7 +64,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%27 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
@@ -111,18 +110,17 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %20
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.wgsl.expected.spvasm
index 6a92dec..6001a9b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ldexp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%32 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
@@ -15,13 +16,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -34,27 +34,26 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -65,7 +64,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%27 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
@@ -111,18 +110,17 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %20
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.spvasm.expected.spvasm
index 3c4cb67..e2d9db9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_14 "x_14"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_f1_ "f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -27,9 +27,11 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -42,31 +44,29 @@
OpDecorate %x_14 NonWritable
OpDecorate %x_14 DescriptorSet 0
OpDecorate %x_14 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_14 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%23 = OpTypeFunction %float %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -85,7 +85,7 @@
%67 = OpTypeFunction %void
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %102 = OpTypeFunction %void %main_out
+ %102 = OpTypeFunction %main_out %v4float
%f1_f1_ = OpFunction %float None %23
%a = OpFunctionParameter %_ptr_Function_float
%27 = OpLabel
@@ -167,20 +167,20 @@
%81 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %102
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %102
+%gl_FragCoord_param = OpFunctionParameter %v4float
%106 = OpLabel
- %107 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %107
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %107 = OpFunctionCall %void %main_1
+ %108 = OpLoad %v4float %x_GLF_color
+ %109 = OpCompositeConstruct %main_out %108
+ OpReturnValue %109
OpFunctionEnd
%main = OpFunction %void None %67
- %109 = OpLabel
- %110 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %110
- %111 = OpFunctionCall %void %main_1
- %113 = OpLoad %v4float %x_GLF_color
- %114 = OpCompositeConstruct %main_out %113
- %112 = OpFunctionCall %void %tint_symbol_3 %114
+ %111 = OpLabel
+ %113 = OpLoad %v4float %gl_FragCoord_param_1
+ %112 = OpFunctionCall %main_out %main_inner %113
+ %114 = OpCompositeExtract %v4float %112 0
+ OpStore %x_GLF_color_1_1 %114
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.wgsl.expected.spvasm
index 3c4cb67..e2d9db9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-pre-increment-clamp/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_14 "x_14"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_f1_ "f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -27,9 +27,11 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -42,31 +44,29 @@
OpDecorate %x_14 NonWritable
OpDecorate %x_14 DescriptorSet 0
OpDecorate %x_14 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_14 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%23 = OpTypeFunction %float %_ptr_Function_float
%_ptr_Function_int = OpTypePointer Function %int
@@ -85,7 +85,7 @@
%67 = OpTypeFunction %void
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %102 = OpTypeFunction %void %main_out
+ %102 = OpTypeFunction %main_out %v4float
%f1_f1_ = OpFunction %float None %23
%a = OpFunctionParameter %_ptr_Function_float
%27 = OpLabel
@@ -167,20 +167,20 @@
%81 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %102
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %102
+%gl_FragCoord_param = OpFunctionParameter %v4float
%106 = OpLabel
- %107 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %107
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %107 = OpFunctionCall %void %main_1
+ %108 = OpLoad %v4float %x_GLF_color
+ %109 = OpCompositeConstruct %main_out %108
+ OpReturnValue %109
OpFunctionEnd
%main = OpFunction %void None %67
- %109 = OpLabel
- %110 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %110
- %111 = OpFunctionCall %void %main_1
- %113 = OpLoad %v4float %x_GLF_color
- %114 = OpCompositeConstruct %main_out %113
- %112 = OpFunctionCall %void %tint_symbol_3 %114
+ %111 = OpLabel
+ %113 = OpLoad %v4float %gl_FragCoord_param_1
+ %112 = OpFunctionCall %main_out %main_inner %113
+ %114 = OpCompositeExtract %v4float %112 0
+ OpStore %x_GLF_color_1_1 %114
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.spvasm.expected.spvasm
index f6de722..cb59323 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,16 +17,16 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -37,31 +39,29 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf0 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -80,7 +80,7 @@
%v3float = OpTypeVector %float 3
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %83 = OpTypeFunction %void %main_out
+ %83 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -134,20 +134,20 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %83
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %83
+%gl_FragCoord_param = OpFunctionParameter %v4float
%87 = OpLabel
- %88 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %88
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %88 = OpFunctionCall %void %main_1
+ %89 = OpLoad %v4float %x_GLF_color
+ %90 = OpCompositeConstruct %main_out %89
+ OpReturnValue %90
OpFunctionEnd
%main = OpFunction %void None %23
- %90 = OpLabel
- %91 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %91
- %92 = OpFunctionCall %void %main_1
- %94 = OpLoad %v4float %x_GLF_color
- %95 = OpCompositeConstruct %main_out %94
- %93 = OpFunctionCall %void %tint_symbol_3 %95
+ %92 = OpLabel
+ %94 = OpLoad %v4float %gl_FragCoord_param_1
+ %93 = OpFunctionCall %main_out %main_inner %94
+ %95 = OpCompositeExtract %v4float %93 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.wgsl.expected.spvasm
index f6de722..cb59323 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-ternary-vector-access/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,16 +17,16 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -37,31 +39,29 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
%buf0 = OpTypeStruct %_arr_float_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -80,7 +80,7 @@
%v3float = OpTypeVector %float 3
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %83 = OpTypeFunction %void %main_out
+ %83 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -134,20 +134,20 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %83
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %83
+%gl_FragCoord_param = OpFunctionParameter %v4float
%87 = OpLabel
- %88 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %88
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %88 = OpFunctionCall %void %main_1
+ %89 = OpLoad %v4float %x_GLF_color
+ %90 = OpCompositeConstruct %main_out %89
+ OpReturnValue %90
OpFunctionEnd
%main = OpFunction %void None %23
- %90 = OpLabel
- %91 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %91
- %92 = OpFunctionCall %void %main_1
- %94 = OpLoad %v4float %x_GLF_color
- %95 = OpCompositeConstruct %main_out %94
- %93 = OpFunctionCall %void %tint_symbol_3 %95
+ %92 = OpLabel
+ %94 = OpLoad %v4float %gl_FragCoord_param_1
+ %93 = OpFunctionCall %main_out %main_inner %94
+ %95 = OpCompositeExtract %v4float %93 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.spvasm.expected.spvasm
index 6651b21..57dc194 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -34,8 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -43,18 +47,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -68,7 +67,7 @@
%float_1 = OpConstant %float 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%i = OpVariable %_ptr_Function_int Function %26
@@ -123,18 +122,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %20
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.wgsl.expected.spvasm
index 6651b21..57dc194 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-compares-while-modulo/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -34,8 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -43,18 +47,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -68,7 +67,7 @@
%float_1 = OpConstant %float 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%i = OpVariable %_ptr_Function_int Function %26
@@ -123,18 +122,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %20
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.spvasm.expected.spvasm
index d38b160..1370642 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%99 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_f1_ "f1_f1_"
OpName %a "a"
OpName %main_1 "main_1"
@@ -27,9 +27,11 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -42,14 +44,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -57,15 +61,11 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%22 = OpTypeFunction %float %_ptr_Function_float
%void = OpTypeVoid
@@ -82,7 +82,7 @@
%float_1 = OpConstant %float 1
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out %v4float
%f1_f1_ = OpFunction %float None %22
%a = OpFunctionParameter %_ptr_Function_float
%26 = OpLabel
@@ -92,7 +92,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %30
%33 = OpLabel
- %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %7
%a_1 = OpVariable %_ptr_Function_float Function %37
%x_40 = OpVariable %_ptr_Function_float Function %37
%param = OpVariable %_ptr_Function_float Function %37
@@ -172,20 +172,20 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %109
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %109
+%gl_FragCoord_param = OpFunctionParameter %v4float
%113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %114
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %30
- %116 = OpLabel
- %117 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %117
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_3 %121
+ %118 = OpLabel
+ %120 = OpLoad %v4float %gl_FragCoord_param_1
+ %119 = OpFunctionCall %main_out %main_inner %120
+ %121 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %121
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.wgsl.expected.spvasm
index d38b160..1370642 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-mul-div-rem-if-undefined-divide-mix/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%99 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f1_f1_ "f1_f1_"
OpName %a "a"
OpName %main_1 "main_1"
@@ -27,9 +27,11 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -42,14 +44,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -57,15 +61,11 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Function_float = OpTypePointer Function %float
%22 = OpTypeFunction %float %_ptr_Function_float
%void = OpTypeVoid
@@ -82,7 +82,7 @@
%float_1 = OpConstant %float 1
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %109 = OpTypeFunction %void %main_out
+ %109 = OpTypeFunction %main_out %v4float
%f1_f1_ = OpFunction %float None %22
%a = OpFunctionParameter %_ptr_Function_float
%26 = OpLabel
@@ -92,7 +92,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %30
%33 = OpLabel
- %v2 = OpVariable %_ptr_Function_v4float Function %5
+ %v2 = OpVariable %_ptr_Function_v4float Function %7
%a_1 = OpVariable %_ptr_Function_float Function %37
%x_40 = OpVariable %_ptr_Function_float Function %37
%param = OpVariable %_ptr_Function_float Function %37
@@ -172,20 +172,20 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %109
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %109
+%gl_FragCoord_param = OpFunctionParameter %v4float
%113 = OpLabel
- %114 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %114
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %30
- %116 = OpLabel
- %117 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %117
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_3 %121
+ %118 = OpLabel
+ %120 = OpLoad %v4float %gl_FragCoord_param_1
+ %119 = OpFunctionCall %main_out %main_inner %120
+ %121 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %121
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.spvasm.expected.spvasm
index 470393d..7997003 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 159
+; Bound: 158
; Schema: 0
OpCapability Shader
%50 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_110_phi "x_110_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_7 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
%_arr_float_uint_7 = OpTypeArray %float %uint_7
@@ -58,12 +61,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -87,11 +86,11 @@
%int_5 = OpConstant %int 5
%int_6 = OpConstant %int 6
%main_out = OpTypeStruct %v4float
- %147 = OpTypeFunction %void %main_out
+ %147 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %31
%x_75 = OpVariable %_ptr_Function_bool Function %35
%x_92 = OpVariable %_ptr_Function_bool Function %35
@@ -221,18 +220,17 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %147
-%tint_symbol = OpFunctionParameter %main_out
- %151 = OpLabel
- %152 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %152
- OpReturn
+ %main_inner = OpFunction %main_out None %147
+ %150 = OpLabel
+ %151 = OpFunctionCall %void %main_1
+ %152 = OpLoad %v4float %x_GLF_color
+ %153 = OpCompositeConstruct %main_out %152
+ OpReturnValue %153
OpFunctionEnd
%main = OpFunction %void None %20
- %154 = OpLabel
- %155 = OpFunctionCall %void %main_1
- %157 = OpLoad %v4float %x_GLF_color
- %158 = OpCompositeConstruct %main_out %157
- %156 = OpFunctionCall %void %tint_symbol_2 %158
+ %155 = OpLabel
+ %156 = OpFunctionCall %main_out %main_inner
+ %157 = OpCompositeExtract %v4float %156 0
+ OpStore %x_GLF_color_1_1 %157
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.wgsl.expected.spvasm
index 470393d..7997003 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-pack-unpack/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 159
+; Bound: 158
; Schema: 0
OpCapability Shader
%50 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_110_phi "x_110_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_7 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
%_arr_float_uint_7 = OpTypeArray %float %uint_7
@@ -58,12 +61,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -87,11 +86,11 @@
%int_5 = OpConstant %int 5
%int_6 = OpConstant %int 6
%main_out = OpTypeStruct %v4float
- %147 = OpTypeFunction %void %main_out
+ %147 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %31
%x_75 = OpVariable %_ptr_Function_bool Function %35
%x_92 = OpVariable %_ptr_Function_bool Function %35
@@ -221,18 +220,17 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %147
-%tint_symbol = OpFunctionParameter %main_out
- %151 = OpLabel
- %152 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %152
- OpReturn
+ %main_inner = OpFunction %main_out None %147
+ %150 = OpLabel
+ %151 = OpFunctionCall %void %main_1
+ %152 = OpLoad %v4float %x_GLF_color
+ %153 = OpCompositeConstruct %main_out %152
+ OpReturnValue %153
OpFunctionEnd
%main = OpFunction %void None %20
- %154 = OpLabel
- %155 = OpFunctionCall %void %main_1
- %157 = OpLoad %v4float %x_GLF_color
- %158 = OpCompositeConstruct %main_out %157
- %156 = OpFunctionCall %void %tint_symbol_2 %158
+ %155 = OpLabel
+ %156 = OpFunctionCall %main_out %main_inner
+ %157 = OpCompositeExtract %v4float %156 0
+ OpStore %x_GLF_color_1_1 %157
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.spvasm.expected.spvasm
index 42db932..01257e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,17 +17,17 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %x_57 "x_57"
OpName %x_58_phi "x_58_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,14 +40,16 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -53,16 +57,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -78,7 +78,7 @@
%_ptr_Function_bool = OpTypePointer Function %bool
%56 = OpConstantNull %bool
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -151,20 +151,20 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %88
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %88
+%gl_FragCoord_param = OpFunctionParameter %v4float
%92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %93
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %23
- %95 = OpLabel
- %96 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %96
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_3 %100
+ %97 = OpLabel
+ %99 = OpLoad %v4float %gl_FragCoord_param_1
+ %98 = OpFunctionCall %main_out %main_inner %99
+ %100 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %100
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.wgsl.expected.spvasm
index 42db932..01257e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-left-shift-for/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,17 +17,17 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %x_57 "x_57"
OpName %x_58_phi "x_58_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,14 +40,16 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -53,16 +57,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -78,7 +78,7 @@
%_ptr_Function_bool = OpTypePointer Function %bool
%56 = OpConstantNull %bool
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -151,20 +151,20 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %88
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %88
+%gl_FragCoord_param = OpFunctionParameter %v4float
%92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %93
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %23
- %95 = OpLabel
- %96 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %96
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_3 %100
+ %97 = OpLabel
+ %99 = OpLoad %v4float %gl_FragCoord_param_1
+ %98 = OpFunctionCall %main_out %main_inner %99
+ %100 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %100
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.spvasm
index 8b6f4d4..bb68672 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 166
+; Bound: 165
; Schema: 0
OpCapability Shader
%124 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -25,9 +25,9 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,9 +40,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -50,18 +54,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_int_uint_2 = OpTypeArray %int %uint_2
@@ -85,7 +84,7 @@
%false = OpConstantFalse %bool
%112 = OpConstantComposite %v2bool %false %false
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%A = OpVariable %_ptr_Function__arr_int_uint_2 Function %27
@@ -222,18 +221,17 @@
%134 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %154
-%tint_symbol = OpFunctionParameter %main_out
- %158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %159
- OpReturn
+ %main_inner = OpFunction %main_out None %154
+ %157 = OpLabel
+ %158 = OpFunctionCall %void %main_1
+ %159 = OpLoad %v4float %x_GLF_color
+ %160 = OpCompositeConstruct %main_out %159
+ OpReturnValue %160
OpFunctionEnd
%main = OpFunction %void None %20
- %161 = OpLabel
- %162 = OpFunctionCall %void %main_1
- %164 = OpLoad %v4float %x_GLF_color
- %165 = OpCompositeConstruct %main_out %164
- %163 = OpFunctionCall %void %tint_symbol_2 %165
+ %162 = OpLabel
+ %163 = OpFunctionCall %main_out %main_inner
+ %164 = OpCompositeExtract %v4float %163 0
+ OpStore %x_GLF_color_1_1 %164
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.spvasm
index 8b6f4d4..bb68672 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 166
+; Bound: 165
; Schema: 0
OpCapability Shader
%124 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -25,9 +25,9 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -40,9 +40,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -50,18 +54,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_arr_int_uint_2 = OpTypeArray %int %uint_2
@@ -85,7 +84,7 @@
%false = OpConstantFalse %bool
%112 = OpConstantComposite %v2bool %false %false
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%A = OpVariable %_ptr_Function__arr_int_uint_2 Function %27
@@ -222,18 +221,17 @@
%134 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %154
-%tint_symbol = OpFunctionParameter %main_out
- %158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %159
- OpReturn
+ %main_inner = OpFunction %main_out None %154
+ %157 = OpLabel
+ %158 = OpFunctionCall %void %main_1
+ %159 = OpLoad %v4float %x_GLF_color
+ %160 = OpCompositeConstruct %main_out %159
+ OpReturnValue %160
OpFunctionEnd
%main = OpFunction %void None %20
- %161 = OpLabel
- %162 = OpFunctionCall %void %main_1
- %164 = OpLoad %v4float %x_GLF_color
- %165 = OpCompositeConstruct %main_out %164
- %163 = OpFunctionCall %void %tint_symbol_2 %165
+ %162 = OpLabel
+ %163 = OpFunctionCall %main_out %main_inner
+ %164 = OpCompositeExtract %v4float %163 0
+ OpStore %x_GLF_color_1_1 %164
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.spvasm.expected.spvasm
index 635a181..5512b0d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 153
+; Bound: 152
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -43,8 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -52,18 +56,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -86,11 +85,11 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %141 = OpTypeFunction %void %main_out
+ %141 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %31
%x_69 = OpVariable %_ptr_Function_bool Function %35
%x_85 = OpVariable %_ptr_Function_bool Function %35
@@ -215,18 +214,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %141
-%tint_symbol = OpFunctionParameter %main_out
- %145 = OpLabel
- %146 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %146
- OpReturn
+ %main_inner = OpFunction %main_out None %141
+ %144 = OpLabel
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %20
- %148 = OpLabel
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_2 %152
+ %149 = OpLabel
+ %150 = OpFunctionCall %main_out %main_inner
+ %151 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %151
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.wgsl.expected.spvasm
index 635a181..5512b0d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-pack-unpack/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 153
+; Bound: 152
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -43,8 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -52,18 +56,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -86,11 +85,11 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %141 = OpTypeFunction %void %main_out
+ %141 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %26
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %31
%x_69 = OpVariable %_ptr_Function_bool Function %35
%x_85 = OpVariable %_ptr_Function_bool Function %35
@@ -215,18 +214,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %141
-%tint_symbol = OpFunctionParameter %main_out
- %145 = OpLabel
- %146 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %146
- OpReturn
+ %main_inner = OpFunction %main_out None %141
+ %144 = OpLabel
+ %145 = OpFunctionCall %void %main_1
+ %146 = OpLoad %v4float %x_GLF_color
+ %147 = OpCompositeConstruct %main_out %146
+ OpReturnValue %147
OpFunctionEnd
%main = OpFunction %void None %20
- %148 = OpLabel
- %149 = OpFunctionCall %void %main_1
- %151 = OpLoad %v4float %x_GLF_color
- %152 = OpCompositeConstruct %main_out %151
- %150 = OpFunctionCall %void %tint_symbol_2 %152
+ %149 = OpLabel
+ %150 = OpFunctionCall %main_out %main_inner
+ %151 = OpCompositeExtract %v4float %150 0
+ OpStore %x_GLF_color_1_1 %151
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.spvasm.expected.spvasm
index 84dd174..4155669 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 152
+; Bound: 151
; Schema: 0
OpCapability Shader
%46 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -57,12 +60,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -81,11 +80,11 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %25
- %v1 = OpVariable %_ptr_Function_v4float Function %16
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %30
%x_69 = OpVariable %_ptr_Function_bool Function %34
%x_85 = OpVariable %_ptr_Function_bool Function %34
@@ -214,18 +213,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %140
-%tint_symbol = OpFunctionParameter %main_out
- %144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %145
- OpReturn
+ %main_inner = OpFunction %main_out None %140
+ %143 = OpLabel
+ %144 = OpFunctionCall %void %main_1
+ %145 = OpLoad %v4float %x_GLF_color
+ %146 = OpCompositeConstruct %main_out %145
+ OpReturnValue %146
OpFunctionEnd
%main = OpFunction %void None %19
- %147 = OpLabel
- %148 = OpFunctionCall %void %main_1
- %150 = OpLoad %v4float %x_GLF_color
- %151 = OpCompositeConstruct %main_out %150
- %149 = OpFunctionCall %void %tint_symbol_2 %151
+ %148 = OpLabel
+ %149 = OpFunctionCall %main_out %main_inner
+ %150 = OpCompositeExtract %v4float %149 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.wgsl.expected.spvasm
index 84dd174..4155669 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-packsnorm-unpackunorm/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 152
+; Bound: 151
; Schema: 0
OpCapability Shader
%46 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %v1 "v1"
@@ -28,9 +28,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -57,12 +60,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -81,11 +80,11 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %25
- %v1 = OpVariable %_ptr_Function_v4float Function %16
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%E = OpVariable %_ptr_Function_float Function %30
%x_69 = OpVariable %_ptr_Function_bool Function %34
%x_85 = OpVariable %_ptr_Function_bool Function %34
@@ -214,18 +213,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %140
-%tint_symbol = OpFunctionParameter %main_out
- %144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %145
- OpReturn
+ %main_inner = OpFunction %main_out None %140
+ %143 = OpLabel
+ %144 = OpFunctionCall %void %main_1
+ %145 = OpLoad %v4float %x_GLF_color
+ %146 = OpCompositeConstruct %main_out %145
+ OpReturnValue %146
OpFunctionEnd
%main = OpFunction %void None %19
- %147 = OpLabel
- %148 = OpFunctionCall %void %main_1
- %150 = OpLoad %v4float %x_GLF_color
- %151 = OpCompositeConstruct %main_out %150
- %149 = OpFunctionCall %void %tint_symbol_2 %151
+ %148 = OpLabel
+ %149 = OpFunctionCall %main_out %main_inner
+ %150 = OpCompositeExtract %v4float %149 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.spvasm.expected.spvasm
index 6302166..f9314fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,9 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -48,12 +51,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -64,10 +63,10 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %16
+ %color = OpVariable %_ptr_Function_v4float Function %5
%28 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%29 = OpLoad %float %28
%30 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
@@ -99,18 +98,17 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %19
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.wgsl.expected.spvasm
index 6302166..f9314fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-simplify-demanded-switch-or-xor/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,9 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -48,12 +51,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -64,10 +63,10 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %16
+ %color = OpVariable %_ptr_Function_v4float Function %5
%28 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
%29 = OpLoad %float %28
%30 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_0
@@ -99,18 +98,17 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %19
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.spvasm.expected.spvasm
index 9bb8ae6..946dce4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 114
+; Bound: 113
; Schema: 0
OpCapability Shader
%62 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
@@ -26,9 +26,9 @@
OpName %x_68_phi "x_68_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -41,9 +41,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -56,12 +59,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -79,7 +78,7 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %102 = OpTypeFunction %void %main_out
+ %102 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -176,18 +175,17 @@
%82 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %102
-%tint_symbol = OpFunctionParameter %main_out
- %106 = OpLabel
- %107 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %107
- OpReturn
+ %main_inner = OpFunction %main_out None %102
+ %105 = OpLabel
+ %106 = OpFunctionCall %void %main_1
+ %107 = OpLoad %v4float %x_GLF_color
+ %108 = OpCompositeConstruct %main_out %107
+ OpReturnValue %108
OpFunctionEnd
%main = OpFunction %void None %20
- %109 = OpLabel
- %110 = OpFunctionCall %void %main_1
- %112 = OpLoad %v4float %x_GLF_color
- %113 = OpCompositeConstruct %main_out %112
- %111 = OpFunctionCall %void %tint_symbol_2 %113
+ %110 = OpLabel
+ %111 = OpFunctionCall %main_out %main_inner
+ %112 = OpCompositeExtract %v4float %111 0
+ OpStore %x_GLF_color_1_1 %112
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.wgsl.expected.spvasm
index 9bb8ae6..946dce4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-vector-ops-asin/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 114
+; Bound: 113
; Schema: 0
OpCapability Shader
%62 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
@@ -26,9 +26,9 @@
OpName %x_68_phi "x_68_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -41,9 +41,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -56,12 +59,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -79,7 +78,7 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %102 = OpTypeFunction %void %main_out
+ %102 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -176,18 +175,17 @@
%82 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %102
-%tint_symbol = OpFunctionParameter %main_out
- %106 = OpLabel
- %107 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %107
- OpReturn
+ %main_inner = OpFunction %main_out None %102
+ %105 = OpLabel
+ %106 = OpFunctionCall %void %main_1
+ %107 = OpLoad %v4float %x_GLF_color
+ %108 = OpCompositeConstruct %main_out %107
+ OpReturnValue %108
OpFunctionEnd
%main = OpFunction %void None %20
- %109 = OpLabel
- %110 = OpFunctionCall %void %main_1
- %112 = OpLoad %v4float %x_GLF_color
- %113 = OpCompositeConstruct %main_out %112
- %111 = OpFunctionCall %void %tint_symbol_2 %113
+ %110 = OpLabel
+ %111 = OpFunctionCall %main_out %main_inner
+ %112 = OpCompositeExtract %v4float %111 0
+ OpStore %x_GLF_color_1_1 %112
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.spvasm.expected.spvasm
index 91daf4a..5907280 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -50,7 +49,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_1
@@ -80,18 +79,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %14
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.wgsl.expected.spvasm
index 91daf4a..5907280 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-inst-value-tracking-inversesqrt/0-opt.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -50,7 +49,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_1
@@ -80,18 +79,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %14
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.spvasm.expected.spvasm
index 22f831d..885e4b4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 70
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_5 = OpConstant %int 5
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %59 = OpTypeFunction %void %main_out
+ %59 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -96,18 +95,17 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %59
-%tint_symbol = OpFunctionParameter %main_out
- %63 = OpLabel
- %64 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %64
- OpReturn
+ %main_inner = OpFunction %main_out None %59
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %15
- %66 = OpLabel
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_2 %70
+ %67 = OpLabel
+ %68 = OpFunctionCall %main_out %main_inner
+ %69 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %69
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.wgsl.expected.spvasm
index 22f831d..885e4b4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-bit-shifting/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 70
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_5 = OpConstant %int 5
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %59 = OpTypeFunction %void %main_out
+ %59 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -96,18 +95,17 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %59
-%tint_symbol = OpFunctionParameter %main_out
- %63 = OpLabel
- %64 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %64
- OpReturn
+ %main_inner = OpFunction %main_out None %59
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %15
- %66 = OpLabel
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_2 %70
+ %67 = OpLabel
+ %68 = OpFunctionCall %main_out %main_inner
+ %69 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %69
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.spvasm.expected.spvasm
index 065f841..0afcff1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,8 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,18 +47,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -67,7 +66,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -109,18 +108,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %20
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.wgsl.expected.spvasm
index 065f841..0afcff1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inclusive-or/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,8 +34,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,18 +47,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -67,7 +66,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -109,18 +108,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %20
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.spvasm.expected.spvasm
index b54ea8d..b07c299 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 257
+; Bound: 256
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_i1_ "f_i1_"
OpName %a "a"
OpName %i "i"
@@ -24,18 +24,22 @@
OpName %i_2 "i_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_12 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_12 = OpConstant %uint 12
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_12
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
%21 = OpConstantNull %int
@@ -75,7 +74,7 @@
%int_9 = OpConstant %int 9
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %v4float
- %245 = OpTypeFunction %void %main_out
+ %245 = OpTypeFunction %main_out
%f_i1_ = OpFunction %int None %15
%a = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -354,18 +353,17 @@
OpStore %x_GLF_color %244
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %245
-%tint_symbol = OpFunctionParameter %main_out
- %249 = OpLabel
- %250 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %250
- OpReturn
+ %main_inner = OpFunction %main_out None %245
+ %248 = OpLabel
+ %249 = OpFunctionCall %void %main_1
+ %250 = OpLoad %v4float %x_GLF_color
+ %251 = OpCompositeConstruct %main_out %250
+ OpReturnValue %251
OpFunctionEnd
%main = OpFunction %void None %54
- %252 = OpLabel
- %253 = OpFunctionCall %void %main_1
- %255 = OpLoad %v4float %x_GLF_color
- %256 = OpCompositeConstruct %main_out %255
- %254 = OpFunctionCall %void %tint_symbol_2 %256
+ %253 = OpLabel
+ %254 = OpFunctionCall %main_out %main_inner
+ %255 = OpCompositeExtract %v4float %254 0
+ OpStore %x_GLF_color_1_1 %255
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.wgsl.expected.spvasm
index b54ea8d..b07c299 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 257
+; Bound: 256
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_i1_ "f_i1_"
OpName %a "a"
OpName %i "i"
@@ -24,18 +24,22 @@
OpName %i_2 "i_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_12 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_12 = OpConstant %uint 12
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_12
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
%21 = OpConstantNull %int
@@ -75,7 +74,7 @@
%int_9 = OpConstant %int 9
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %v4float
- %245 = OpTypeFunction %void %main_out
+ %245 = OpTypeFunction %main_out
%f_i1_ = OpFunction %int None %15
%a = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -354,18 +353,17 @@
OpStore %x_GLF_color %244
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %245
-%tint_symbol = OpFunctionParameter %main_out
- %249 = OpLabel
- %250 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %250
- OpReturn
+ %main_inner = OpFunction %main_out None %245
+ %248 = OpLabel
+ %249 = OpFunctionCall %void %main_1
+ %250 = OpLoad %v4float %x_GLF_color
+ %251 = OpCompositeConstruct %main_out %250
+ OpReturnValue %251
OpFunctionEnd
%main = OpFunction %void None %54
- %252 = OpLabel
- %253 = OpFunctionCall %void %main_1
- %255 = OpLoad %v4float %x_GLF_color
- %256 = OpCompositeConstruct %main_out %255
- %254 = OpFunctionCall %void %tint_symbol_2 %256
+ %253 = OpLabel
+ %254 = OpFunctionCall %main_out %main_inner
+ %255 = OpCompositeExtract %v4float %254 0
+ OpStore %x_GLF_color_1_1 %255
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.spvasm.expected.spvasm
index eaeec78..39246e9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,14 +16,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -35,12 +35,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -53,8 +54,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -69,7 +68,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -109,18 +108,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %19
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.wgsl.expected.spvasm
index 690533b..132ad8a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-acos-undefined/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -14,14 +15,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -52,8 +53,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -68,7 +67,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -105,18 +104,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %19
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.spvasm.expected.spvasm
index 079ad52..4c20517 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,14 +16,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -35,12 +35,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -53,8 +54,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -69,7 +68,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -109,18 +108,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %19
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.wgsl.expected.spvasm
index 0a23eb0..c42ab11 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-mod-sqrt-undefined/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -14,14 +15,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -52,8 +53,6 @@
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -68,7 +67,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -105,18 +104,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %19
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.spvasm.expected.spvasm
index c602080..52c4730 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
@@ -15,13 +16,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,26 +34,25 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -64,7 +63,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%26 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
@@ -93,18 +92,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %19
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.wgsl.expected.spvasm
index c602080..52c4730 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instruction-simplify-sqrt/0.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_5 "x_5"
@@ -15,13 +16,12 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,26 +34,25 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -64,7 +63,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%26 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %int_0
@@ -93,18 +92,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %19
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.spvasm.expected.spvasm
index 0e18564..05fbcd6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 208
+; Bound: 207
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_ "func_struct_S_i11_"
@@ -31,9 +31,9 @@
OpName %x_143_phi "x_143_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -45,11 +45,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -61,12 +64,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -92,7 +91,7 @@
%int_3 = OpConstant %int 3
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %196 = OpTypeFunction %void %main_out
+ %196 = OpTypeFunction %main_out
%func_struct_S_i11_ = OpFunction %void None %19
%s = OpFunctionParameter %_ptr_Function_S
%25 = OpLabel
@@ -316,18 +315,17 @@
%176 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %196
-%tint_symbol = OpFunctionParameter %main_out
- %200 = OpLabel
- %201 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %201
- OpReturn
+ %main_inner = OpFunction %main_out None %196
+ %199 = OpLabel
+ %200 = OpFunctionCall %void %main_1
+ %201 = OpLoad %v4float %x_GLF_color
+ %202 = OpCompositeConstruct %main_out %201
+ OpReturnValue %202
OpFunctionEnd
%main = OpFunction %void None %44
- %203 = OpLabel
- %204 = OpFunctionCall %void %main_1
- %206 = OpLoad %v4float %x_GLF_color
- %207 = OpCompositeConstruct %main_out %206
- %205 = OpFunctionCall %void %tint_symbol_2 %207
+ %204 = OpLabel
+ %205 = OpFunctionCall %main_out %main_inner
+ %206 = OpCompositeExtract %v4float %205 0
+ OpStore %x_GLF_color_1_1 %206
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.wgsl.expected.spvasm
index 0e18564..05fbcd6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instructions-first-value-phi/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 208
+; Bound: 207
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_ "func_struct_S_i11_"
@@ -31,9 +31,9 @@
OpName %x_143_phi "x_143_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -45,11 +45,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -61,12 +64,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -92,7 +91,7 @@
%int_3 = OpConstant %int 3
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %196 = OpTypeFunction %void %main_out
+ %196 = OpTypeFunction %main_out
%func_struct_S_i11_ = OpFunction %void None %19
%s = OpFunctionParameter %_ptr_Function_S
%25 = OpLabel
@@ -316,18 +315,17 @@
%176 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %196
-%tint_symbol = OpFunctionParameter %main_out
- %200 = OpLabel
- %201 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %201
- OpReturn
+ %main_inner = OpFunction %main_out None %196
+ %199 = OpLabel
+ %200 = OpFunctionCall %void %main_1
+ %201 = OpLoad %v4float %x_GLF_color
+ %202 = OpCompositeConstruct %main_out %201
+ OpReturnValue %202
OpFunctionEnd
%main = OpFunction %void None %44
- %203 = OpLabel
- %204 = OpFunctionCall %void %main_1
- %206 = OpLoad %v4float %x_GLF_color
- %207 = OpCompositeConstruct %main_out %206
- %205 = OpFunctionCall %void %tint_symbol_2 %207
+ %204 = OpLabel
+ %205 = OpFunctionCall %main_out %main_inner
+ %206 = OpCompositeExtract %v4float %205 0
+ OpStore %x_GLF_color_1_1 %206
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.spvasm.expected.spvasm
index 4b3abcc..076cd83 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 82
+; Bound: 81
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -52,8 +53,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -65,7 +64,7 @@
%bool = OpTypeBool
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %70 = OpTypeFunction %void %main_out
+ %70 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%i = OpVariable %_ptr_Function_int Function %25
@@ -125,18 +124,17 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %70
-%tint_symbol = OpFunctionParameter %main_out
- %74 = OpLabel
- %75 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %75
- OpReturn
+ %main_inner = OpFunction %main_out None %70
+ %73 = OpLabel
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %19
- %77 = OpLabel
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_2 %81
+ %78 = OpLabel
+ %79 = OpFunctionCall %main_out %main_inner
+ %80 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.wgsl.expected.spvasm
index 4b3abcc..076cd83 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-instructions-for-if-less-than-equal/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 82
+; Bound: 81
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -14,14 +15,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -52,8 +53,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -65,7 +64,7 @@
%bool = OpTypeBool
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %70 = OpTypeFunction %void %main_out
+ %70 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%i = OpVariable %_ptr_Function_int Function %25
@@ -125,18 +124,17 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %70
-%tint_symbol = OpFunctionParameter %main_out
- %74 = OpLabel
- %75 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %75
- OpReturn
+ %main_inner = OpFunction %main_out None %70
+ %73 = OpLabel
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %19
- %77 = OpLabel
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_2 %81
+ %78 = OpLabel
+ %79 = OpFunctionCall %main_out %main_inner
+ %80 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.spvasm.expected.spvasm
index b2ec6d5..6f850d8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_63677 = OpConstant %int 63677
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -99,18 +98,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %15
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.wgsl.expected.spvasm
index b2ec6d5..6f850d8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-int-div-round-to-zero/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_63677 = OpConstant %int 63677
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -99,18 +98,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %15
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.spvasm.expected.spvasm
index 3b7284c..c0e67e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.spvasm.expected.spvasm
@@ -5,37 +5,41 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,11 +47,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -62,7 +62,7 @@
%int_5 = OpConstant %int 5
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -130,20 +130,20 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %77
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %77
+%gl_FragCoord_param = OpFunctionParameter %v4float
%81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %82
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %18
- %84 = OpLabel
- %85 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %85
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_3 %89
+ %86 = OpLabel
+ %88 = OpLoad %v4float %gl_FragCoord_param_1
+ %87 = OpFunctionCall %main_out %main_inner %88
+ %89 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.wgsl.expected.spvasm
index 3b7284c..c0e67e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-int-full-bits-divide-by-two-loop/0-opt.wgsl.expected.spvasm
@@ -5,37 +5,41 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,11 +47,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -62,7 +62,7 @@
%int_5 = OpConstant %int 5
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -130,20 +130,20 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %77
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %77
+%gl_FragCoord_param = OpFunctionParameter %v4float
%81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %82
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %18
- %84 = OpLabel
- %85 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %85
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_3 %89
+ %86 = OpLabel
+ %88 = OpLoad %v4float %gl_FragCoord_param_1
+ %87 = OpFunctionCall %main_out %main_inner %88
+ %89 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.spvasm.expected.spvasm
index 8a84a5f..7be6d8a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %count "count"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_n93448 = OpConstant %int -93448
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%count = OpVariable %_ptr_Function_int Function %21
@@ -133,18 +132,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %15
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.wgsl.expected.spvasm
index 8a84a5f..7be6d8a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-integer-modulo-negative/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %count "count"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_n93448 = OpConstant %int -93448
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%count = OpVariable %_ptr_Function_int Function %21
@@ -133,18 +132,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %15
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.spvasm.expected.spvasm
index d944525..d89fab8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 138
+; Bound: 137
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %i "i"
@@ -21,19 +21,18 @@
OpName %x_81_phi "x_81_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%v2float = OpTypeVector %float 2
@@ -71,7 +70,7 @@
%124 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%125 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out
%func_ = OpFunction %v3float None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -216,18 +215,17 @@
%121 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %126
-%tint_symbol = OpFunctionParameter %main_out
- %130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %131
- OpReturn
+ %main_inner = OpFunction %main_out None %126
+ %129 = OpLabel
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %61
- %133 = OpLabel
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_2 %137
+ %134 = OpLabel
+ %135 = OpFunctionCall %main_out %main_inner
+ %136 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.wgsl.expected.spvasm
index d944525..d89fab8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-intervalmap-set-stop/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 138
+; Bound: 137
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %i "i"
@@ -21,19 +21,18 @@
OpName %x_81_phi "x_81_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%v2float = OpTypeVector %float 2
@@ -71,7 +70,7 @@
%124 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%125 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out
%func_ = OpFunction %v3float None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -216,18 +215,17 @@
%121 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %126
-%tint_symbol = OpFunctionParameter %main_out
- %130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %131
- OpReturn
+ %main_inner = OpFunction %main_out None %126
+ %129 = OpLabel
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %61
- %133 = OpLabel
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_2 %137
+ %134 = OpLabel
+ %135 = OpFunctionCall %main_out %main_inner
+ %136 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.spvasm.expected.spvasm
index 779691c..3709673 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,14 +16,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,9 +35,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -49,12 +52,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -72,7 +71,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %26
@@ -114,18 +113,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %19
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.wgsl.expected.spvasm
index 779691c..3709673 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-ldexp-undefined-mat-vec-multiply/0.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,14 +16,13 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,9 +35,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -49,12 +52,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -72,7 +71,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %26
@@ -114,18 +113,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %19
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.spvasm.expected.spvasm
index 46246e7..535a1a2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %a "a"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -36,13 +40,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %21
@@ -108,18 +107,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.wgsl.expected.spvasm
index 46246e7..535a1a2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-array-access/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %a "a"
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -36,13 +40,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %21
@@ -108,18 +107,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.spvasm.expected.spvasm
index 4dab00b..f5f58ed 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.spvasm.expected.spvasm
@@ -1,37 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_32_phi "x_32_phi"
OpName %x_33 "x_33"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -40,8 +41,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_32_phi = OpVariable %_ptr_Function_int Function %21
@@ -108,18 +107,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %15
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.wgsl.expected.spvasm
index 4dab00b..f5f58ed 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-left-shift-right-shift-compare/0.wgsl.expected.spvasm
@@ -1,37 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_32_phi "x_32_phi"
OpName %x_33 "x_33"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -40,8 +41,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_32_phi = OpVariable %_ptr_Function_int Function %21
@@ -108,18 +107,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %15
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.spvasm.expected.spvasm
index 74c4d05..3a4b4f1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %i "i"
@@ -19,19 +19,18 @@
OpName %j_1 "j_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%v2float = OpTypeVector %float 2
@@ -64,7 +63,7 @@
%_ptr_Function_v3float = OpTypePointer Function %v3float
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%func_ = OpFunction %v3float None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -187,18 +186,17 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %61
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.wgsl.expected.spvasm
index 74c4d05..3a4b4f1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-liveinterval-different-dest/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %i "i"
@@ -19,19 +19,18 @@
OpName %j_1 "j_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_v3float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%v2float = OpTypeVector %float 2
@@ -64,7 +63,7 @@
%_ptr_Function_v3float = OpTypePointer Function %v3float
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%func_ = OpFunction %v3float None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -187,18 +186,17 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %61
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.spvasm.expected.spvasm
index e9a94b6..1a54bf5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 113
+; Bound: 112
; Schema: 0
OpCapability Shader
%62 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
@@ -23,9 +23,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%int_3 = OpConstant %int 3
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
+ %101 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -168,18 +167,17 @@
%81 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %20
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.wgsl.expected.spvasm
index e9a94b6..1a54bf5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-abs-multiply-offset/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 113
+; Bound: 112
; Schema: 0
OpCapability Shader
%62 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
@@ -23,9 +23,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +75,7 @@
%int_3 = OpConstant %int 3
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
+ %101 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%f = OpVariable %_ptr_Function_float Function %26
@@ -168,18 +167,17 @@
%81 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %20
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.spvasm.expected.spvasm
index e5c6e56..ba91db6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -57,7 +56,7 @@
%60 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%61 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -118,18 +117,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %12
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.wgsl.expected.spvasm
index e5c6e56..ba91db6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-break-floor-nan-never-executed/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
%41 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -57,7 +56,7 @@
%60 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%61 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -118,18 +117,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %12
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.spvasm.expected.spvasm
index 8f44a3e..db6d08b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
%65 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,15 +17,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -37,13 +37,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,11 +73,11 @@
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
- %i = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%35 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
%36 = OpLoad %float %35
@@ -160,18 +159,17 @@
%75 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %22
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.wgsl.expected.spvasm
index 8f44a3e..db6d08b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-clamp-to-one-empty-condition/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 107
+; Bound: 106
; Schema: 0
OpCapability Shader
%65 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,15 +17,14 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -37,13 +37,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,11 +73,11 @@
%bool = OpTypeBool
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %95 = OpTypeFunction %void %main_out
+ %95 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
- %i = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%35 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
%36 = OpLoad %float %35
@@ -160,18 +159,17 @@
%75 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %95
-%tint_symbol = OpFunctionParameter %main_out
- %99 = OpLabel
- %100 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %100
- OpReturn
+ %main_inner = OpFunction %main_out None %95
+ %98 = OpLabel
+ %99 = OpFunctionCall %void %main_1
+ %100 = OpLoad %v4float %x_GLF_color
+ %101 = OpCompositeConstruct %main_out %100
+ OpReturnValue %101
OpFunctionEnd
%main = OpFunction %void None %22
- %102 = OpLabel
- %103 = OpFunctionCall %void %main_1
- %105 = OpLoad %v4float %x_GLF_color
- %106 = OpCompositeConstruct %main_out %105
- %104 = OpFunctionCall %void %tint_symbol_2 %106
+ %103 = OpLabel
+ %104 = OpFunctionCall %main_out %main_inner
+ %105 = OpCompositeExtract %v4float %104 0
+ OpStore %x_GLF_color_1_1 %105
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.spvasm.expected.spvasm
index 8425cb2..4964574 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 139
+; Bound: 138
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %index "index"
@@ -23,18 +23,22 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -42,13 +46,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_3 = OpConstant %uint 3
@@ -70,7 +69,7 @@
%int_0 = OpConstant %int 0
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %127 = OpTypeFunction %void %main_out
+ %127 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_3 Function %23
@@ -202,18 +201,17 @@
%107 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %127
-%tint_symbol = OpFunctionParameter %main_out
- %131 = OpLabel
- %132 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %132
- OpReturn
+ %main_inner = OpFunction %main_out None %127
+ %130 = OpLabel
+ %131 = OpFunctionCall %void %main_1
+ %132 = OpLoad %v4float %x_GLF_color
+ %133 = OpCompositeConstruct %main_out %132
+ OpReturnValue %133
OpFunctionEnd
%main = OpFunction %void None %15
- %134 = OpLabel
- %135 = OpFunctionCall %void %main_1
- %137 = OpLoad %v4float %x_GLF_color
- %138 = OpCompositeConstruct %main_out %137
- %136 = OpFunctionCall %void %tint_symbol_2 %138
+ %135 = OpLabel
+ %136 = OpFunctionCall %main_out %main_inner
+ %137 = OpCompositeExtract %v4float %136 0
+ OpStore %x_GLF_color_1_1 %137
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.wgsl.expected.spvasm
index 35f7480..09f6f31 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-condition-double-negate/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 141
+; Bound: 140
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %index "index"
@@ -23,18 +23,22 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -42,13 +46,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_3 = OpConstant %uint 3
@@ -70,7 +69,7 @@
%int_0 = OpConstant %int 0
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%arr = OpVariable %_ptr_Function__arr_int_uint_3 Function %23
@@ -207,18 +206,17 @@
%109 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %129
-%tint_symbol = OpFunctionParameter %main_out
- %133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %134
- OpReturn
+ %main_inner = OpFunction %main_out None %129
+ %132 = OpLabel
+ %133 = OpFunctionCall %void %main_1
+ %134 = OpLoad %v4float %x_GLF_color
+ %135 = OpCompositeConstruct %main_out %134
+ OpReturnValue %135
OpFunctionEnd
%main = OpFunction %void None %15
- %136 = OpLabel
- %137 = OpFunctionCall %void %main_1
- %139 = OpLoad %v4float %x_GLF_color
- %140 = OpCompositeConstruct %main_out %139
- %138 = OpFunctionCall %void %tint_symbol_2 %140
+ %137 = OpLabel
+ %138 = OpFunctionCall %main_out %main_inner
+ %139 = OpCompositeExtract %v4float %138 0
+ OpStore %x_GLF_color_1_1 %139
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.spvasm.expected.spvasm
index 4ba110f..67eba1f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -22,9 +22,9 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -72,7 +71,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -168,18 +167,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %20
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.wgsl.expected.spvasm
index 4ba110f..67eba1f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-dfdx-constant-divide/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 112
+; Bound: 111
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -22,9 +22,9 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -72,7 +71,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %100 = OpTypeFunction %void %main_out
+ %100 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -168,18 +167,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %100
-%tint_symbol = OpFunctionParameter %main_out
- %104 = OpLabel
- %105 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %105
- OpReturn
+ %main_inner = OpFunction %main_out None %100
+ %103 = OpLabel
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %20
- %107 = OpLabel
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_2 %111
+ %108 = OpLabel
+ %109 = OpFunctionCall %main_out %main_inner
+ %110 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %110
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.spvasm.expected.spvasm
index 06a7de4..d1d7b39 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,8 +17,6 @@
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %m23 "m23"
OpName %i "i"
@@ -24,9 +24,11 @@
OpName %x_81_phi "x_81_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -39,10 +41,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -55,15 +61,9 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -89,7 +89,7 @@
%true = OpConstantTrue %bool
%v3bool = OpTypeVector %bool 3
%main_out = OpTypeStruct %v4float
- %149 = OpTypeFunction %void %main_out
+ %149 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%m23 = OpVariable %_ptr_Function_mat2v3float Function %31
@@ -225,20 +225,20 @@
%129 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %149
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %149
+%gl_FragCoord_param = OpFunctionParameter %v4float
%153 = OpLabel
- %154 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %154
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %154 = OpFunctionCall %void %main_1
+ %155 = OpLoad %v4float %x_GLF_color
+ %156 = OpCompositeConstruct %main_out %155
+ OpReturnValue %156
OpFunctionEnd
%main = OpFunction %void None %23
- %156 = OpLabel
- %157 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %157
- %158 = OpFunctionCall %void %main_1
- %160 = OpLoad %v4float %x_GLF_color
- %161 = OpCompositeConstruct %main_out %160
- %159 = OpFunctionCall %void %tint_symbol_3 %161
+ %158 = OpLabel
+ %160 = OpLoad %v4float %gl_FragCoord_param_1
+ %159 = OpFunctionCall %main_out %main_inner %160
+ %161 = OpCompositeExtract %v4float %159 0
+ OpStore %x_GLF_color_1_1 %161
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.wgsl.expected.spvasm
index c421db8..a2549fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-matrix-element-break-after-first-iteration/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,8 +17,6 @@
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %m23 "m23"
OpName %i "i"
@@ -24,9 +24,11 @@
OpName %x_81_phi "x_81_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -39,10 +41,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -55,15 +61,9 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -89,7 +89,7 @@
%true = OpConstantTrue %bool
%v3bool = OpTypeVector %bool 3
%main_out = OpTypeStruct %v4float
- %151 = OpTypeFunction %void %main_out
+ %151 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%m23 = OpVariable %_ptr_Function_mat2v3float Function %31
@@ -230,20 +230,20 @@
%131 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %151
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %151
+%gl_FragCoord_param = OpFunctionParameter %v4float
%155 = OpLabel
- %156 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %156
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %156 = OpFunctionCall %void %main_1
+ %157 = OpLoad %v4float %x_GLF_color
+ %158 = OpCompositeConstruct %main_out %157
+ OpReturnValue %158
OpFunctionEnd
%main = OpFunction %void None %23
- %158 = OpLabel
- %159 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %159
- %160 = OpFunctionCall %void %main_1
- %162 = OpLoad %v4float %x_GLF_color
- %163 = OpCompositeConstruct %main_out %162
- %161 = OpFunctionCall %void %tint_symbol_3 %163
+ %160 = OpLabel
+ %162 = OpLoad %v4float %gl_FragCoord_param_1
+ %161 = OpFunctionCall %main_out %main_inner %162
+ %163 = OpCompositeExtract %v4float %161 0
+ OpStore %x_GLF_color_1_1 %163
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.spvasm.expected.spvasm
index 2c80162..92b4a68 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 91
+; Bound: 90
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
+ %79 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -134,18 +133,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %15
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.wgsl.expected.spvasm
index 2c80162..92b4a68 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-increment-or-divide-by-loop-index/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 91
+; Bound: 90
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
+ %79 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -134,18 +133,17 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %15
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.spvasm.expected.spvasm
index af6b9c9..8bab8ff 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -114,18 +113,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.wgsl.expected.spvasm
index af6b9c9..8bab8ff 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-integer-half-minus-one/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -114,18 +113,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.spvasm.expected.spvasm
index f4f6126..2f91910 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -102,18 +101,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %15
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.wgsl.expected.spvasm
index f4f6126..2f91910 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-logical-xor/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%bool = OpTypeBool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -102,18 +101,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %15
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.spvasm.expected.spvasm
index d9c850a..102efd2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.spvasm.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 87
+; Bound: 86
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -55,7 +54,7 @@
%false = OpConstantFalse %bool
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %75 = OpTypeFunction %void %main_out
+ %75 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
OpStore %x_GLF_global_loop_count %int_0
@@ -135,18 +134,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %75
-%tint_symbol = OpFunctionParameter %main_out
- %79 = OpLabel
- %80 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %80
- OpReturn
+ %main_inner = OpFunction %main_out None %75
+ %78 = OpLabel
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %18
- %82 = OpLabel
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_2 %86
+ %83 = OpLabel
+ %84 = OpFunctionCall %main_out %main_inner
+ %85 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.wgsl.expected.spvasm
index d9c850a..102efd2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-returns-behind-true-and-false/0-opt.wgsl.expected.spvasm
@@ -1,49 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 87
+; Bound: 86
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%int_0 = OpConstant %int 0
@@ -55,7 +54,7 @@
%false = OpConstantFalse %bool
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %75 = OpTypeFunction %void %main_out
+ %75 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
OpStore %x_GLF_global_loop_count %int_0
@@ -135,18 +134,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %75
-%tint_symbol = OpFunctionParameter %main_out
- %79 = OpLabel
- %80 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %80
- OpReturn
+ %main_inner = OpFunction %main_out None %75
+ %78 = OpLabel
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %18
- %82 = OpLabel
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_2 %86
+ %83 = OpLabel
+ %84 = OpFunctionCall %main_out %main_inner
+ %85 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.spvasm.expected.spvasm
index 193f5f4..1d8dbcd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 124
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_5 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -51,12 +54,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_5 = OpConstant %uint 5
@@ -76,7 +75,7 @@
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_5 Function %27
@@ -189,18 +188,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %113
-%tint_symbol = OpFunctionParameter %main_out
- %117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %118
- OpReturn
+ %main_inner = OpFunction %main_out None %113
+ %116 = OpLabel
+ %117 = OpFunctionCall %void %main_1
+ %118 = OpLoad %v4float %x_GLF_color
+ %119 = OpCompositeConstruct %main_out %118
+ OpReturnValue %119
OpFunctionEnd
%main = OpFunction %void None %19
- %120 = OpLabel
- %121 = OpFunctionCall %void %main_1
- %123 = OpLoad %v4float %x_GLF_color
- %124 = OpCompositeConstruct %main_out %123
- %122 = OpFunctionCall %void %tint_symbol_2 %124
+ %121 = OpLabel
+ %122 = OpFunctionCall %main_out %main_inner
+ %123 = OpCompositeExtract %v4float %122 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.wgsl.expected.spvasm
index 193f5f4..1d8dbcd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-loop-with-two-integers/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 124
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %arr "arr"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -36,10 +36,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_5 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -51,12 +54,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_5 = OpConstant %uint 5
@@ -76,7 +75,7 @@
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%arr = OpVariable %_ptr_Function__arr_float_uint_5 Function %27
@@ -189,18 +188,17 @@
%90 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %113
-%tint_symbol = OpFunctionParameter %main_out
- %117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %118
- OpReturn
+ %main_inner = OpFunction %main_out None %113
+ %116 = OpLabel
+ %117 = OpFunctionCall %void %main_1
+ %118 = OpLoad %v4float %x_GLF_color
+ %119 = OpCompositeConstruct %main_out %118
+ OpReturnValue %119
OpFunctionEnd
%main = OpFunction %void None %19
- %120 = OpLabel
- %121 = OpFunctionCall %void %main_1
- %123 = OpLoad %v4float %x_GLF_color
- %124 = OpCompositeConstruct %main_out %123
- %122 = OpFunctionCall %void %tint_symbol_2 %124
+ %121 = OpLabel
+ %122 = OpFunctionCall %main_out %main_inner
+ %123 = OpCompositeExtract %v4float %122 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.spvasm.expected.spvasm
index 8577b92..6358d60 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -15,8 +17,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_12 "x_12"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %a "a"
@@ -25,9 +25,11 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
@@ -40,15 +42,17 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_5 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -56,16 +60,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_5 = OpConstant %uint 5
@@ -86,7 +86,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %161 = OpTypeFunction %void %main_out
+ %161 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%data = OpVariable %_ptr_Function__arr_int_uint_5 Function %31
@@ -268,20 +268,20 @@
%129 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %161
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %161
+%gl_FragCoord_param = OpFunctionParameter %v4float
%165 = OpLabel
- %166 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %166
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %166 = OpFunctionCall %void %main_1
+ %167 = OpLoad %v4float %x_GLF_color
+ %168 = OpCompositeConstruct %main_out %167
+ OpReturnValue %168
OpFunctionEnd
%main = OpFunction %void None %23
- %168 = OpLabel
- %169 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %169
- %170 = OpFunctionCall %void %main_1
- %172 = OpLoad %v4float %x_GLF_color
- %173 = OpCompositeConstruct %main_out %172
- %171 = OpFunctionCall %void %tint_symbol_3 %173
+ %170 = OpLabel
+ %172 = OpLoad %v4float %gl_FragCoord_param_1
+ %171 = OpFunctionCall %main_out %main_inner %172
+ %173 = OpCompositeExtract %v4float %171 0
+ OpStore %x_GLF_color_1_1 %173
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.wgsl.expected.spvasm
index 8577b92..6358d60 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machine-basic-block-for-for-for-less-than/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -15,8 +17,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_12 "x_12"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %a "a"
@@ -25,9 +25,11 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
@@ -40,15 +42,17 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_5 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -56,16 +60,12 @@
%buf1 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_5 = OpConstant %uint 5
@@ -86,7 +86,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %161 = OpTypeFunction %void %main_out
+ %161 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%data = OpVariable %_ptr_Function__arr_int_uint_5 Function %31
@@ -268,20 +268,20 @@
%129 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %161
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %161
+%gl_FragCoord_param = OpFunctionParameter %v4float
%165 = OpLabel
- %166 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %166
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %166 = OpFunctionCall %void %main_1
+ %167 = OpLoad %v4float %x_GLF_color
+ %168 = OpCompositeConstruct %main_out %167
+ OpReturnValue %168
OpFunctionEnd
%main = OpFunction %void None %23
- %168 = OpLabel
- %169 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %169
- %170 = OpFunctionCall %void %main_1
- %172 = OpLoad %v4float %x_GLF_color
- %173 = OpCompositeConstruct %main_out %172
- %171 = OpFunctionCall %void %tint_symbol_3 %173
+ %170 = OpLabel
+ %172 = OpLoad %v4float %gl_FragCoord_param_1
+ %171 = OpFunctionCall %main_out %main_inner %172
+ %173 = OpCompositeExtract %v4float %171 0
+ OpStore %x_GLF_color_1_1 %173
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.spvasm.expected.spvasm
index fd1fbff..583b944 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%108 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_v1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_v1_1_1 "x_GLF_v1_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
OpName %x_GLF_v1 "x_GLF_v1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %uv "uv"
OpName %v1 "v1"
@@ -25,9 +25,11 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_v1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_v1_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -40,14 +42,16 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_v1_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -60,11 +64,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
- %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -86,11 +86,11 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%uv = OpVariable %_ptr_Function_v2float Function %30
- %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_float Function %35
%i = OpVariable %_ptr_Function_int Function %38
%39 = OpLoad %v4float %gl_FragCoord
@@ -202,20 +202,20 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %126
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %126
+%gl_FragCoord_param = OpFunctionParameter %v4float
%130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %131
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %131 = OpFunctionCall %void %main_1
+ %132 = OpLoad %v4float %x_GLF_v1
+ %133 = OpCompositeConstruct %main_out %132
+ OpReturnValue %133
OpFunctionEnd
%main = OpFunction %void None %23
- %133 = OpLabel
- %134 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %134
- %135 = OpFunctionCall %void %main_1
- %137 = OpLoad %v4float %x_GLF_v1
- %138 = OpCompositeConstruct %main_out %137
- %136 = OpFunctionCall %void %tint_symbol_3 %138
+ %135 = OpLabel
+ %137 = OpLoad %v4float %gl_FragCoord_param_1
+ %136 = OpFunctionCall %main_out %main_inner %137
+ %138 = OpCompositeExtract %v4float %136 0
+ OpStore %x_GLF_v1_1_1 %138
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.wgsl.expected.spvasm
index fd1fbff..583b944 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machine-scheduler-for-if-pow/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%108 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_v1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_v1_1_1 "x_GLF_v1_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
OpName %x_GLF_v1 "x_GLF_v1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %uv "uv"
OpName %v1 "v1"
@@ -25,9 +25,11 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_v1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_v1_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -40,14 +42,16 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_v1_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -60,11 +64,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
- %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -86,11 +86,11 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%uv = OpVariable %_ptr_Function_v2float Function %30
- %v1 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_float Function %35
%i = OpVariable %_ptr_Function_int Function %38
%39 = OpLoad %v4float %gl_FragCoord
@@ -202,20 +202,20 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %126
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %126
+%gl_FragCoord_param = OpFunctionParameter %v4float
%130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %131
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %131 = OpFunctionCall %void %main_1
+ %132 = OpLoad %v4float %x_GLF_v1
+ %133 = OpCompositeConstruct %main_out %132
+ OpReturnValue %133
OpFunctionEnd
%main = OpFunction %void None %23
- %133 = OpLabel
- %134 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %134
- %135 = OpFunctionCall %void %main_1
- %137 = OpLoad %v4float %x_GLF_v1
- %138 = OpCompositeConstruct %main_out %137
- %136 = OpFunctionCall %void %tint_symbol_3 %138
+ %135 = OpLabel
+ %137 = OpLoad %v4float %gl_FragCoord_param_1
+ %136 = OpFunctionCall %main_out %main_inner %137
+ %138 = OpCompositeExtract %v4float %136 0
+ OpStore %x_GLF_v1_1_1 %138
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.spvasm.expected.spvasm
index abd2c6b..0d506da 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%60 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %19
@@ -113,18 +112,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %12
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.wgsl.expected.spvasm
index abd2c6b..0d506da 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-machinevaluetype-one-iter-loop/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%60 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %19
@@ -113,18 +112,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %12
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.spvasm.expected.spvasm
index d46c0ee..6cb11ba 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.spvasm.expected.spvasm
@@ -5,36 +5,40 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -42,11 +46,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +61,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %99 = OpTypeFunction %void %main_out
+ %99 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%i = OpVariable %_ptr_Function_int Function %24
@@ -162,20 +162,20 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %99
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %99
+%gl_FragCoord_param = OpFunctionParameter %v4float
%103 = OpLabel
- %104 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %104
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %18
- %106 = OpLabel
- %107 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %107
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_3 %111
+ %108 = OpLabel
+ %110 = OpLoad %v4float %gl_FragCoord_param_1
+ %109 = OpFunctionCall %main_out %main_inner %110
+ %111 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.wgsl.expected.spvasm
index d46c0ee..6cb11ba 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matching-conditions-break/0-opt.wgsl.expected.spvasm
@@ -5,36 +5,40 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -42,11 +46,7 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +61,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %99 = OpTypeFunction %void %main_out
+ %99 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%i = OpVariable %_ptr_Function_int Function %24
@@ -162,20 +162,20 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %99
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %99
+%gl_FragCoord_param = OpFunctionParameter %v4float
%103 = OpLabel
- %104 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %104
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %104 = OpFunctionCall %void %main_1
+ %105 = OpLoad %v4float %x_GLF_color
+ %106 = OpCompositeConstruct %main_out %105
+ OpReturnValue %106
OpFunctionEnd
%main = OpFunction %void None %18
- %106 = OpLabel
- %107 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %107
- %108 = OpFunctionCall %void %main_1
- %110 = OpLoad %v4float %x_GLF_color
- %111 = OpCompositeConstruct %main_out %110
- %109 = OpFunctionCall %void %tint_symbol_3 %111
+ %108 = OpLabel
+ %110 = OpLoad %v4float %gl_FragCoord_param_1
+ %109 = OpFunctionCall %main_out %main_inner %110
+ %111 = OpCompositeExtract %v4float %109 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.spvasm.expected.spvasm
index 847dc61..59ab268 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 138
+; Bound: 137
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %a "a"
@@ -23,18 +23,22 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_4 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -42,13 +46,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
%21 = OpConstantNull %int
@@ -68,7 +67,7 @@
%84 = OpTypeFunction %void
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %15
%x = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -198,18 +197,17 @@
%106 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %126
-%tint_symbol = OpFunctionParameter %main_out
- %130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %131
- OpReturn
+ %main_inner = OpFunction %main_out None %126
+ %129 = OpLabel
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %84
- %133 = OpLabel
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_2 %137
+ %134 = OpLabel
+ %135 = OpFunctionCall %main_out %main_inner
+ %136 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.wgsl.expected.spvasm
index 847dc61..59ab268 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true-inside-loop/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 138
+; Bound: 137
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %a "a"
@@ -23,18 +23,22 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_4 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -42,13 +46,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
%21 = OpConstantNull %int
@@ -68,7 +67,7 @@
%84 = OpTypeFunction %void
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %126 = OpTypeFunction %void %main_out
+ %126 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %15
%x = OpFunctionParameter %_ptr_Function_int
%19 = OpLabel
@@ -198,18 +197,17 @@
%106 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %126
-%tint_symbol = OpFunctionParameter %main_out
- %130 = OpLabel
- %131 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %131
- OpReturn
+ %main_inner = OpFunction %main_out None %126
+ %129 = OpLabel
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %84
- %133 = OpLabel
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_2 %137
+ %134 = OpLabel
+ %135 = OpFunctionCall %main_out %main_inner
+ %136 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.spvasm.expected.spvasm
index ee3c7b8..1dfb495 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%uint_1 = OpConstant %uint 1
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %23
@@ -113,18 +112,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %15
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.wgsl.expected.spvasm
index b279bcf..4975569 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matrix-double-transpose/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%uint_1 = OpConstant %uint 1
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %23
@@ -118,18 +117,17 @@
%57 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %15
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.spvasm.expected.spvasm
index a34f056..053f61f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.spvasm.expected.spvasm
@@ -1,47 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %m1 "m1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%m0 = OpVariable %_ptr_Function_mat2v2float Function %22
@@ -112,18 +111,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %14
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.wgsl.expected.spvasm
index a34f056..053f61f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-matrix-square-mul-with-vector/0-opt.wgsl.expected.spvasm
@@ -1,47 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %m1 "m1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%m0 = OpVariable %_ptr_Function_mat2v2float Function %22
@@ -112,18 +111,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %14
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.spvasm.expected.spvasm
index 329e139..07268c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -72,18 +71,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.wgsl.expected.spvasm
index 329e139..07268c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-max-clamp-same-minval/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%26 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -49,7 +48,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -72,18 +71,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.spvasm.expected.spvasm
index 63a17ef..83047dc 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.spvasm.expected.spvasm
@@ -6,37 +6,41 @@
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -44,10 +48,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +61,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -98,20 +98,20 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %58
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %58
+%gl_FragCoord_param = OpFunctionParameter %v4float
%62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %63
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %18
- %65 = OpLabel
- %66 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_3 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %gl_FragCoord_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69
+ %70 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.wgsl.expected.spvasm
index 63a17ef..83047dc 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-max-min-less-than/0-opt.wgsl.expected.spvasm
@@ -6,37 +6,41 @@
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -44,10 +48,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -61,7 +61,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%a = OpVariable %_ptr_Function_int Function %24
@@ -98,20 +98,20 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %58
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %58
+%gl_FragCoord_param = OpFunctionParameter %v4float
%62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %63
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %18
- %65 = OpLabel
- %66 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_3 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %gl_FragCoord_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69
+ %70 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.spvasm.expected.spvasm
index 16fa1d7..ecbadf6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 174
+; Bound: 173
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_43 "x_43"
OpName %x_44 "x_44"
@@ -30,34 +30,33 @@
OpName %x_88_1 "x_88_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_S_i1_i1_i11_i1_ "func_struct_S_i1_i1_i11_i1_"
OpName %s "s"
OpName %x "x"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpDecorate %_arr_S_uint_2 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -88,8 +87,8 @@
%float_1 = OpConstant %float 1
%115 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %116 = OpTypeFunction %void %main_out
- %128 = OpTypeFunction %int %_ptr_Function_S %_ptr_Function_int
+ %116 = OpTypeFunction %main_out
+ %127 = OpTypeFunction %int %_ptr_Function_S %_ptr_Function_int
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_43 = OpVariable %_ptr_Function_int Function %18
@@ -212,63 +211,62 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %116
-%tint_symbol = OpFunctionParameter %main_out
- %120 = OpLabel
- %121 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %121
- OpReturn
+ %main_inner = OpFunction %main_out None %116
+ %119 = OpLabel
+ %120 = OpFunctionCall %void %main_1
+ %121 = OpLoad %v4float %x_GLF_color
+ %122 = OpCompositeConstruct %main_out %121
+ OpReturnValue %122
OpFunctionEnd
%main = OpFunction %void None %12
- %123 = OpLabel
- %124 = OpFunctionCall %void %main_1
- %126 = OpLoad %v4float %x_GLF_color
- %127 = OpCompositeConstruct %main_out %126
- %125 = OpFunctionCall %void %tint_symbol_2 %127
+ %124 = OpLabel
+ %125 = OpFunctionCall %main_out %main_inner
+ %126 = OpCompositeExtract %v4float %125 0
+ OpStore %x_GLF_color_1_1 %126
OpReturn
OpFunctionEnd
-%func_struct_S_i1_i1_i11_i1_ = OpFunction %int None %128
+%func_struct_S_i1_i1_i11_i1_ = OpFunction %int None %127
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
- %132 = OpLabel
- %134 = OpLoad %int %x
- %136 = OpAccessChain %_ptr_Function_int %s %uint_0
- OpStore %136 %134
- %138 = OpAccessChain %_ptr_Function_int %s %uint_0
- %139 = OpLoad %int %138
- %140 = OpIEqual %bool %139 %int_2
- OpSelectionMerge %141 None
- OpBranchConditional %140 %142 %141
- %142 = OpLabel
- %144 = OpAccessChain %_ptr_Function_int %s %uint_0
- OpStore %144 %int_9
- OpBranch %141
+ %131 = OpLabel
+ %133 = OpLoad %int %x
+ %135 = OpAccessChain %_ptr_Function_int %s %uint_0
+ OpStore %135 %133
+ %137 = OpAccessChain %_ptr_Function_int %s %uint_0
+ %138 = OpLoad %int %137
+ %139 = OpIEqual %bool %138 %int_2
+ OpSelectionMerge %140 None
+ OpBranchConditional %139 %141 %140
%141 = OpLabel
- %146 = OpLoad %int %x
- %148 = OpAccessChain %_ptr_Function_int %s %uint_1
- %149 = OpIAdd %int %146 %int_1
- OpStore %148 %149
- %151 = OpLoad %int %x
- %153 = OpAccessChain %_ptr_Function_int %s %uint_2
- %154 = OpIAdd %int %151 %int_2
- OpStore %153 %154
- %156 = OpAccessChain %_ptr_Function_int %s %uint_1
- %157 = OpLoad %int %156
- %158 = OpIEqual %bool %157 %int_2
- OpSelectionMerge %159 None
- OpBranchConditional %158 %160 %159
- %160 = OpLabel
- %162 = OpAccessChain %_ptr_Function_int %s %uint_1
- OpStore %162 %int_7
- OpBranch %159
+ %143 = OpAccessChain %_ptr_Function_int %s %uint_0
+ OpStore %143 %int_9
+ OpBranch %140
+ %140 = OpLabel
+ %145 = OpLoad %int %x
+ %147 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %148 = OpIAdd %int %145 %int_1
+ OpStore %147 %148
+ %150 = OpLoad %int %x
+ %152 = OpAccessChain %_ptr_Function_int %s %uint_2
+ %153 = OpIAdd %int %150 %int_2
+ OpStore %152 %153
+ %155 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %156 = OpLoad %int %155
+ %157 = OpIEqual %bool %156 %int_2
+ OpSelectionMerge %158 None
+ OpBranchConditional %157 %159 %158
%159 = OpLabel
- %164 = OpAccessChain %_ptr_Function_int %s %uint_0
- %165 = OpLoad %int %164
- %167 = OpAccessChain %_ptr_Function_int %s %uint_1
- %168 = OpLoad %int %167
- %170 = OpAccessChain %_ptr_Function_int %s %uint_2
- %171 = OpLoad %int %170
- %172 = OpIAdd %int %165 %168
- %173 = OpIAdd %int %172 %171
- OpReturnValue %173
+ %161 = OpAccessChain %_ptr_Function_int %s %uint_1
+ OpStore %161 %int_7
+ OpBranch %158
+ %158 = OpLabel
+ %163 = OpAccessChain %_ptr_Function_int %s %uint_0
+ %164 = OpLoad %int %163
+ %166 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %167 = OpLoad %int %166
+ %169 = OpAccessChain %_ptr_Function_int %s %uint_2
+ %170 = OpLoad %int %169
+ %171 = OpIAdd %int %164 %167
+ %172 = OpIAdd %int %171 %170
+ OpReturnValue %172
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.wgsl.expected.spvasm
index 16fa1d7..ecbadf6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-sum-struct-members/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 174
+; Bound: 173
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_43 "x_43"
OpName %x_44 "x_44"
@@ -30,34 +30,33 @@
OpName %x_88_1 "x_88_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_struct_S_i1_i1_i11_i1_ "func_struct_S_i1_i1_i11_i1_"
OpName %s "s"
OpName %x "x"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpDecorate %_arr_S_uint_2 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -88,8 +87,8 @@
%float_1 = OpConstant %float 1
%115 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %116 = OpTypeFunction %void %main_out
- %128 = OpTypeFunction %int %_ptr_Function_S %_ptr_Function_int
+ %116 = OpTypeFunction %main_out
+ %127 = OpTypeFunction %int %_ptr_Function_S %_ptr_Function_int
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_43 = OpVariable %_ptr_Function_int Function %18
@@ -212,63 +211,62 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %116
-%tint_symbol = OpFunctionParameter %main_out
- %120 = OpLabel
- %121 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %121
- OpReturn
+ %main_inner = OpFunction %main_out None %116
+ %119 = OpLabel
+ %120 = OpFunctionCall %void %main_1
+ %121 = OpLoad %v4float %x_GLF_color
+ %122 = OpCompositeConstruct %main_out %121
+ OpReturnValue %122
OpFunctionEnd
%main = OpFunction %void None %12
- %123 = OpLabel
- %124 = OpFunctionCall %void %main_1
- %126 = OpLoad %v4float %x_GLF_color
- %127 = OpCompositeConstruct %main_out %126
- %125 = OpFunctionCall %void %tint_symbol_2 %127
+ %124 = OpLabel
+ %125 = OpFunctionCall %main_out %main_inner
+ %126 = OpCompositeExtract %v4float %125 0
+ OpStore %x_GLF_color_1_1 %126
OpReturn
OpFunctionEnd
-%func_struct_S_i1_i1_i11_i1_ = OpFunction %int None %128
+%func_struct_S_i1_i1_i11_i1_ = OpFunction %int None %127
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
- %132 = OpLabel
- %134 = OpLoad %int %x
- %136 = OpAccessChain %_ptr_Function_int %s %uint_0
- OpStore %136 %134
- %138 = OpAccessChain %_ptr_Function_int %s %uint_0
- %139 = OpLoad %int %138
- %140 = OpIEqual %bool %139 %int_2
- OpSelectionMerge %141 None
- OpBranchConditional %140 %142 %141
- %142 = OpLabel
- %144 = OpAccessChain %_ptr_Function_int %s %uint_0
- OpStore %144 %int_9
- OpBranch %141
+ %131 = OpLabel
+ %133 = OpLoad %int %x
+ %135 = OpAccessChain %_ptr_Function_int %s %uint_0
+ OpStore %135 %133
+ %137 = OpAccessChain %_ptr_Function_int %s %uint_0
+ %138 = OpLoad %int %137
+ %139 = OpIEqual %bool %138 %int_2
+ OpSelectionMerge %140 None
+ OpBranchConditional %139 %141 %140
%141 = OpLabel
- %146 = OpLoad %int %x
- %148 = OpAccessChain %_ptr_Function_int %s %uint_1
- %149 = OpIAdd %int %146 %int_1
- OpStore %148 %149
- %151 = OpLoad %int %x
- %153 = OpAccessChain %_ptr_Function_int %s %uint_2
- %154 = OpIAdd %int %151 %int_2
- OpStore %153 %154
- %156 = OpAccessChain %_ptr_Function_int %s %uint_1
- %157 = OpLoad %int %156
- %158 = OpIEqual %bool %157 %int_2
- OpSelectionMerge %159 None
- OpBranchConditional %158 %160 %159
- %160 = OpLabel
- %162 = OpAccessChain %_ptr_Function_int %s %uint_1
- OpStore %162 %int_7
- OpBranch %159
+ %143 = OpAccessChain %_ptr_Function_int %s %uint_0
+ OpStore %143 %int_9
+ OpBranch %140
+ %140 = OpLabel
+ %145 = OpLoad %int %x
+ %147 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %148 = OpIAdd %int %145 %int_1
+ OpStore %147 %148
+ %150 = OpLoad %int %x
+ %152 = OpAccessChain %_ptr_Function_int %s %uint_2
+ %153 = OpIAdd %int %150 %int_2
+ OpStore %152 %153
+ %155 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %156 = OpLoad %int %155
+ %157 = OpIEqual %bool %156 %int_2
+ OpSelectionMerge %158 None
+ OpBranchConditional %157 %159 %158
%159 = OpLabel
- %164 = OpAccessChain %_ptr_Function_int %s %uint_0
- %165 = OpLoad %int %164
- %167 = OpAccessChain %_ptr_Function_int %s %uint_1
- %168 = OpLoad %int %167
- %170 = OpAccessChain %_ptr_Function_int %s %uint_2
- %171 = OpLoad %int %170
- %172 = OpIAdd %int %165 %168
- %173 = OpIAdd %int %172 %171
- OpReturnValue %173
+ %161 = OpAccessChain %_ptr_Function_int %s %uint_1
+ OpStore %161 %int_7
+ OpBranch %158
+ %158 = OpLabel
+ %163 = OpAccessChain %_ptr_Function_int %s %uint_0
+ %164 = OpLoad %int %163
+ %166 = OpAccessChain %_ptr_Function_int %s %uint_1
+ %167 = OpLoad %int %166
+ %169 = OpAccessChain %_ptr_Function_int %s %uint_2
+ %170 = OpLoad %int %169
+ %171 = OpIAdd %int %164 %167
+ %172 = OpIAdd %int %171 %170
+ OpReturnValue %172
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.spvasm.expected.spvasm
index 0216afc..82bb00f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_vf2_ "func_vf2_"
OpName %v "v"
OpName %main_1 "main_1"
@@ -19,26 +19,25 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%11 = OpTypeFunction %float %_ptr_Function_v2float
@@ -59,7 +58,7 @@
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%53 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%func_vf2_ = OpFunction %float None %11
%v = OpFunctionParameter %_ptr_Function_v2float
%16 = OpLabel
@@ -97,18 +96,17 @@
%48 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %35
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.wgsl.expected.spvasm
index 0216afc..82bb00f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mem-pass-unused-component/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_vf2_ "func_vf2_"
OpName %v "v"
OpName %main_1 "main_1"
@@ -19,26 +19,25 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%11 = OpTypeFunction %float %_ptr_Function_v2float
@@ -59,7 +58,7 @@
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%53 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%func_vf2_ = OpFunction %float None %11
%v = OpFunctionParameter %_ptr_Function_v2float
%16 = OpLabel
@@ -97,18 +96,17 @@
%48 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %35
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.spvasm.expected.spvasm
index 5b579f1..9a52195 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %b "b"
OpName %x_34 "x_34"
@@ -20,26 +20,25 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%11 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -56,7 +55,7 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%func_ = OpFunction %float None %11
%13 = OpLabel
%b = OpVariable %_ptr_Function_float Function %16
@@ -115,18 +114,17 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %45
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.wgsl.expected.spvasm
index 5b579f1..9a52195 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-merge-return-condition-twice/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %b "b"
OpName %x_34 "x_34"
@@ -20,26 +20,25 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%11 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%16 = OpConstantNull %float
@@ -56,7 +55,7 @@
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%55 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%func_ = OpFunction %float None %11
%13 = OpLabel
%b = OpVariable %_ptr_Function_float Function %16
@@ -115,18 +114,17 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %45
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.spvasm.expected.spvasm
index b9c090d..1c74ef4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,15 +18,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -37,31 +39,29 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f = OpVariable %_ptr_Function_float Function %29
@@ -114,20 +114,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %23
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.wgsl.expected.spvasm
index b9c090d..1c74ef4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-min-intbitstofloat-undefined-never-used/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -16,15 +18,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -37,31 +39,29 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_1 = OpConstant %int 1
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f = OpVariable %_ptr_Function_float Function %29
@@ -114,20 +114,20 @@
%45 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %23
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.spvasm.expected.spvasm
index 0a0f186..b01bf9e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.spvasm.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +40,7 @@
%int = OpTypeInt 32 1
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -62,20 +62,20 @@
OpStore %x_GLF_color %37
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %38
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %38
+%gl_FragCoord_param = OpFunctionParameter %v4float
%42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %43
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %46
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_3 %50
+ %47 = OpLabel
+ %49 = OpLoad %v4float %gl_FragCoord_param_1
+ %48 = OpFunctionCall %main_out %main_inner %49
+ %50 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.wgsl.expected.spvasm
index 0a0f186..b01bf9e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-min-nested-loop-same-value-for-variables/0-opt.wgsl.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +40,7 @@
%int = OpTypeInt 32 1
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -62,20 +62,20 @@
OpStore %x_GLF_color %37
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %38
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %38
+%gl_FragCoord_param = OpFunctionParameter %v4float
%42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %43
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %46
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_3 %50
+ %47 = OpLabel
+ %49 = OpLoad %v4float %gl_FragCoord_param_1
+ %48 = OpFunctionCall %main_out %main_inner %49
+ %50 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.spvasm.expected.spvasm
index 8cf95c0..67f9420 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "one"
@@ -16,16 +18,16 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -37,29 +39,27 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%buf1 = OpTypeStruct %uint
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf0 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%21 = OpTypeFunction %float
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
@@ -77,7 +77,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %69 = OpTypeFunction %void %main_out
+ %69 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %21
%23 = OpLabel
OpSelectionMerge %24 None
@@ -91,7 +91,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %30
%33 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %5
+ %v = OpVariable %_ptr_Function_v4float Function %7
OpStore %v %36
%38 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_1
%39 = OpLoad %float %38
@@ -131,20 +131,20 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %69
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %69
+%gl_FragCoord_param = OpFunctionParameter %v4float
%73 = OpLabel
- %74 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %74
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %30
- %76 = OpLabel
- %77 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %77
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_3 %81
+ %78 = OpLabel
+ %80 = OpLoad %v4float %gl_FragCoord_param_1
+ %79 = OpFunctionCall %main_out %main_inner %80
+ %81 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.wgsl.expected.spvasm
index 8cf95c0..67f9420 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-missing-return-value-function-never-called/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "one"
@@ -16,16 +18,16 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -37,29 +39,27 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%buf1 = OpTypeStruct %uint
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf0 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%21 = OpTypeFunction %float
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
@@ -77,7 +77,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %69 = OpTypeFunction %void %main_out
+ %69 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %21
%23 = OpLabel
OpSelectionMerge %24 None
@@ -91,7 +91,7 @@
OpFunctionEnd
%main_1 = OpFunction %void None %30
%33 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %5
+ %v = OpVariable %_ptr_Function_v4float Function %7
OpStore %v %36
%38 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_1
%39 = OpLoad %float %38
@@ -131,20 +131,20 @@
%59 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %69
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %69
+%gl_FragCoord_param = OpFunctionParameter %v4float
%73 = OpLabel
- %74 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %74
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %74 = OpFunctionCall %void %main_1
+ %75 = OpLoad %v4float %x_GLF_color
+ %76 = OpCompositeConstruct %main_out %75
+ OpReturnValue %76
OpFunctionEnd
%main = OpFunction %void None %30
- %76 = OpLabel
- %77 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %77
- %78 = OpFunctionCall %void %main_1
- %80 = OpLoad %v4float %x_GLF_color
- %81 = OpCompositeConstruct %main_out %80
- %79 = OpFunctionCall %void %tint_symbol_3 %81
+ %78 = OpLabel
+ %80 = OpLoad %v4float %gl_FragCoord_param_1
+ %79 = OpFunctionCall %main_out %main_inner %80
+ %81 = OpCompositeExtract %v4float %79 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.spvasm.expected.spvasm
index 0617387..4b6b857 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.spvasm.expected.spvasm
@@ -1,37 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
%25 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -55,7 +54,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -91,18 +90,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %14
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.wgsl.expected.spvasm
index 6114885..205d90a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-mod-uint-bits-float/0-opt.wgsl.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -38,8 +39,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -86,18 +85,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %14
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.spvasm.expected.spvasm
index 7ecd623..250ca06 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -18,16 +20,16 @@
OpMemberName %buf1 0 "x_GLF_uniform_uint_values"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -46,9 +48,14 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -56,11 +63,8 @@
%buf2 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
@@ -70,11 +74,7 @@
%buf1 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_12 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -90,7 +90,7 @@
%bool = OpTypeBool
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
%main_out = OpTypeStruct %v4float
- %83 = OpTypeFunction %void %main_out
+ %83 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %27
%30 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %33
@@ -147,20 +147,20 @@
%63 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %83
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %83
+%gl_FragCoord_param = OpFunctionParameter %v4float
%87 = OpLabel
- %88 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %88
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %88 = OpFunctionCall %void %main_1
+ %89 = OpLoad %v4float %x_GLF_color
+ %90 = OpCompositeConstruct %main_out %89
+ OpReturnValue %90
OpFunctionEnd
%main = OpFunction %void None %27
- %90 = OpLabel
- %91 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %91
- %92 = OpFunctionCall %void %main_1
- %94 = OpLoad %v4float %x_GLF_color
- %95 = OpCompositeConstruct %main_out %94
- %93 = OpFunctionCall %void %tint_symbol_3 %95
+ %92 = OpLabel
+ %94 = OpLoad %v4float %gl_FragCoord_param_1
+ %93 = OpFunctionCall %main_out %main_inner %94
+ %95 = OpCompositeExtract %v4float %93 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.wgsl.expected.spvasm
index 7ecd623..250ca06 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-modulo-zero-never-executed/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
@@ -18,16 +20,16 @@
OpMemberName %buf1 0 "x_GLF_uniform_uint_values"
OpName %x_12 "x_12"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -46,9 +48,14 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -56,11 +63,8 @@
%buf2 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
@@ -70,11 +74,7 @@
%buf1 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_12 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -90,7 +90,7 @@
%bool = OpTypeBool
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
%main_out = OpTypeStruct %v4float
- %83 = OpTypeFunction %void %main_out
+ %83 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %27
%30 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %33
@@ -147,20 +147,20 @@
%63 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %83
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %83
+%gl_FragCoord_param = OpFunctionParameter %v4float
%87 = OpLabel
- %88 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %88
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %88 = OpFunctionCall %void %main_1
+ %89 = OpLoad %v4float %x_GLF_color
+ %90 = OpCompositeConstruct %main_out %89
+ OpReturnValue %90
OpFunctionEnd
%main = OpFunction %void None %27
- %90 = OpLabel
- %91 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %91
- %92 = OpFunctionCall %void %main_1
- %94 = OpLoad %v4float %x_GLF_color
- %95 = OpCompositeConstruct %main_out %94
- %93 = OpFunctionCall %void %tint_symbol_3 %95
+ %92 = OpLabel
+ %94 = OpLoad %v4float %gl_FragCoord_param_1
+ %93 = OpFunctionCall %main_out %main_inner %94
+ %95 = OpCompositeExtract %v4float %93 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.spvasm.expected.spvasm
index 5b0ff4d6..5959b0f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.spvasm.expected.spvasm
@@ -1,15 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 633
+; Bound: 632
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m23 "m23"
OpName %m24 "m24"
@@ -61,22 +61,21 @@
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -129,7 +128,7 @@
%float_8 = OpConstant %float 8
%620 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %621 = OpTypeFunction %void %main_out
+ %621 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%m23 = OpVariable %_ptr_Function_mat2v3float Function %20
@@ -140,46 +139,46 @@
%m42 = OpVariable %_ptr_Function_mat4v2float Function %41
%m43 = OpVariable %_ptr_Function_mat4v3float Function %45
%m44 = OpVariable %_ptr_Function_mat4v4float Function %49
- %i = OpVariable %_ptr_Function_int Function %4
- %i_1 = OpVariable %_ptr_Function_int Function %4
- %i_2 = OpVariable %_ptr_Function_int Function %4
- %i_3 = OpVariable %_ptr_Function_int Function %4
- %i_4 = OpVariable %_ptr_Function_int Function %4
- %i_5 = OpVariable %_ptr_Function_int Function %4
- %i_6 = OpVariable %_ptr_Function_int Function %4
- %i_7 = OpVariable %_ptr_Function_int Function %4
- %i_8 = OpVariable %_ptr_Function_int Function %4
- %i_9 = OpVariable %_ptr_Function_int Function %4
- %i_10 = OpVariable %_ptr_Function_int Function %4
- %i_11 = OpVariable %_ptr_Function_int Function %4
- %i_12 = OpVariable %_ptr_Function_int Function %4
- %i_13 = OpVariable %_ptr_Function_int Function %4
- %i_14 = OpVariable %_ptr_Function_int Function %4
- %i_15 = OpVariable %_ptr_Function_int Function %4
- %i_16 = OpVariable %_ptr_Function_int Function %4
- %i_17 = OpVariable %_ptr_Function_int Function %4
- %i_18 = OpVariable %_ptr_Function_int Function %4
- %i_19 = OpVariable %_ptr_Function_int Function %4
- %i_20 = OpVariable %_ptr_Function_int Function %4
- %i_21 = OpVariable %_ptr_Function_int Function %4
- %i_22 = OpVariable %_ptr_Function_int Function %4
- %i_23 = OpVariable %_ptr_Function_int Function %4
- %i_24 = OpVariable %_ptr_Function_int Function %4
- %i_25 = OpVariable %_ptr_Function_int Function %4
- %i_26 = OpVariable %_ptr_Function_int Function %4
- %i_27 = OpVariable %_ptr_Function_int Function %4
- %i_28 = OpVariable %_ptr_Function_int Function %4
- %i_29 = OpVariable %_ptr_Function_int Function %4
- %i_30 = OpVariable %_ptr_Function_int Function %4
- %i_31 = OpVariable %_ptr_Function_int Function %4
- %i_32 = OpVariable %_ptr_Function_int Function %4
- %i_33 = OpVariable %_ptr_Function_int Function %4
- %i_34 = OpVariable %_ptr_Function_int Function %4
- %i_35 = OpVariable %_ptr_Function_int Function %4
- %i_36 = OpVariable %_ptr_Function_int Function %4
- %i_37 = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
+ %i_1 = OpVariable %_ptr_Function_int Function %9
+ %i_2 = OpVariable %_ptr_Function_int Function %9
+ %i_3 = OpVariable %_ptr_Function_int Function %9
+ %i_4 = OpVariable %_ptr_Function_int Function %9
+ %i_5 = OpVariable %_ptr_Function_int Function %9
+ %i_6 = OpVariable %_ptr_Function_int Function %9
+ %i_7 = OpVariable %_ptr_Function_int Function %9
+ %i_8 = OpVariable %_ptr_Function_int Function %9
+ %i_9 = OpVariable %_ptr_Function_int Function %9
+ %i_10 = OpVariable %_ptr_Function_int Function %9
+ %i_11 = OpVariable %_ptr_Function_int Function %9
+ %i_12 = OpVariable %_ptr_Function_int Function %9
+ %i_13 = OpVariable %_ptr_Function_int Function %9
+ %i_14 = OpVariable %_ptr_Function_int Function %9
+ %i_15 = OpVariable %_ptr_Function_int Function %9
+ %i_16 = OpVariable %_ptr_Function_int Function %9
+ %i_17 = OpVariable %_ptr_Function_int Function %9
+ %i_18 = OpVariable %_ptr_Function_int Function %9
+ %i_19 = OpVariable %_ptr_Function_int Function %9
+ %i_20 = OpVariable %_ptr_Function_int Function %9
+ %i_21 = OpVariable %_ptr_Function_int Function %9
+ %i_22 = OpVariable %_ptr_Function_int Function %9
+ %i_23 = OpVariable %_ptr_Function_int Function %9
+ %i_24 = OpVariable %_ptr_Function_int Function %9
+ %i_25 = OpVariable %_ptr_Function_int Function %9
+ %i_26 = OpVariable %_ptr_Function_int Function %9
+ %i_27 = OpVariable %_ptr_Function_int Function %9
+ %i_28 = OpVariable %_ptr_Function_int Function %9
+ %i_29 = OpVariable %_ptr_Function_int Function %9
+ %i_30 = OpVariable %_ptr_Function_int Function %9
+ %i_31 = OpVariable %_ptr_Function_int Function %9
+ %i_32 = OpVariable %_ptr_Function_int Function %9
+ %i_33 = OpVariable %_ptr_Function_int Function %9
+ %i_34 = OpVariable %_ptr_Function_int Function %9
+ %i_35 = OpVariable %_ptr_Function_int Function %9
+ %i_36 = OpVariable %_ptr_Function_int Function %9
+ %i_37 = OpVariable %_ptr_Function_int Function %9
%sum = OpVariable %_ptr_Function_float Function %91
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
OpStore %m23 %96
OpStore %m24 %98
@@ -1158,18 +1157,17 @@
%617 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %621
-%tint_symbol = OpFunctionParameter %main_out
- %625 = OpLabel
- %626 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %626
- OpReturn
+ %main_inner = OpFunction %main_out None %621
+ %624 = OpLabel
+ %625 = OpFunctionCall %void %main_1
+ %626 = OpLoad %v4float %x_GLF_color
+ %627 = OpCompositeConstruct %main_out %626
+ OpReturnValue %627
OpFunctionEnd
%main = OpFunction %void None %12
- %628 = OpLabel
- %629 = OpFunctionCall %void %main_1
- %631 = OpLoad %v4float %x_GLF_color
- %632 = OpCompositeConstruct %main_out %631
- %630 = OpFunctionCall %void %tint_symbol_2 %632
+ %629 = OpLabel
+ %630 = OpFunctionCall %main_out %main_inner
+ %631 = OpCompositeExtract %v4float %630 0
+ OpStore %x_GLF_color_1_1 %631
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.wgsl.expected.spvasm
index 5b0ff4d6..5959b0f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-multiple-one-iteration-loops-global-counter-write-matrices/0-opt.wgsl.expected.spvasm
@@ -1,15 +1,15 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 633
+; Bound: 632
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m23 "m23"
OpName %m24 "m24"
@@ -61,22 +61,21 @@
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+ %int = OpTypeInt 32 1
+%_ptr_Private_int = OpTypePointer Private %int
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -129,7 +128,7 @@
%float_8 = OpConstant %float 8
%620 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %621 = OpTypeFunction %void %main_out
+ %621 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%m23 = OpVariable %_ptr_Function_mat2v3float Function %20
@@ -140,46 +139,46 @@
%m42 = OpVariable %_ptr_Function_mat4v2float Function %41
%m43 = OpVariable %_ptr_Function_mat4v3float Function %45
%m44 = OpVariable %_ptr_Function_mat4v4float Function %49
- %i = OpVariable %_ptr_Function_int Function %4
- %i_1 = OpVariable %_ptr_Function_int Function %4
- %i_2 = OpVariable %_ptr_Function_int Function %4
- %i_3 = OpVariable %_ptr_Function_int Function %4
- %i_4 = OpVariable %_ptr_Function_int Function %4
- %i_5 = OpVariable %_ptr_Function_int Function %4
- %i_6 = OpVariable %_ptr_Function_int Function %4
- %i_7 = OpVariable %_ptr_Function_int Function %4
- %i_8 = OpVariable %_ptr_Function_int Function %4
- %i_9 = OpVariable %_ptr_Function_int Function %4
- %i_10 = OpVariable %_ptr_Function_int Function %4
- %i_11 = OpVariable %_ptr_Function_int Function %4
- %i_12 = OpVariable %_ptr_Function_int Function %4
- %i_13 = OpVariable %_ptr_Function_int Function %4
- %i_14 = OpVariable %_ptr_Function_int Function %4
- %i_15 = OpVariable %_ptr_Function_int Function %4
- %i_16 = OpVariable %_ptr_Function_int Function %4
- %i_17 = OpVariable %_ptr_Function_int Function %4
- %i_18 = OpVariable %_ptr_Function_int Function %4
- %i_19 = OpVariable %_ptr_Function_int Function %4
- %i_20 = OpVariable %_ptr_Function_int Function %4
- %i_21 = OpVariable %_ptr_Function_int Function %4
- %i_22 = OpVariable %_ptr_Function_int Function %4
- %i_23 = OpVariable %_ptr_Function_int Function %4
- %i_24 = OpVariable %_ptr_Function_int Function %4
- %i_25 = OpVariable %_ptr_Function_int Function %4
- %i_26 = OpVariable %_ptr_Function_int Function %4
- %i_27 = OpVariable %_ptr_Function_int Function %4
- %i_28 = OpVariable %_ptr_Function_int Function %4
- %i_29 = OpVariable %_ptr_Function_int Function %4
- %i_30 = OpVariable %_ptr_Function_int Function %4
- %i_31 = OpVariable %_ptr_Function_int Function %4
- %i_32 = OpVariable %_ptr_Function_int Function %4
- %i_33 = OpVariable %_ptr_Function_int Function %4
- %i_34 = OpVariable %_ptr_Function_int Function %4
- %i_35 = OpVariable %_ptr_Function_int Function %4
- %i_36 = OpVariable %_ptr_Function_int Function %4
- %i_37 = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
+ %i_1 = OpVariable %_ptr_Function_int Function %9
+ %i_2 = OpVariable %_ptr_Function_int Function %9
+ %i_3 = OpVariable %_ptr_Function_int Function %9
+ %i_4 = OpVariable %_ptr_Function_int Function %9
+ %i_5 = OpVariable %_ptr_Function_int Function %9
+ %i_6 = OpVariable %_ptr_Function_int Function %9
+ %i_7 = OpVariable %_ptr_Function_int Function %9
+ %i_8 = OpVariable %_ptr_Function_int Function %9
+ %i_9 = OpVariable %_ptr_Function_int Function %9
+ %i_10 = OpVariable %_ptr_Function_int Function %9
+ %i_11 = OpVariable %_ptr_Function_int Function %9
+ %i_12 = OpVariable %_ptr_Function_int Function %9
+ %i_13 = OpVariable %_ptr_Function_int Function %9
+ %i_14 = OpVariable %_ptr_Function_int Function %9
+ %i_15 = OpVariable %_ptr_Function_int Function %9
+ %i_16 = OpVariable %_ptr_Function_int Function %9
+ %i_17 = OpVariable %_ptr_Function_int Function %9
+ %i_18 = OpVariable %_ptr_Function_int Function %9
+ %i_19 = OpVariable %_ptr_Function_int Function %9
+ %i_20 = OpVariable %_ptr_Function_int Function %9
+ %i_21 = OpVariable %_ptr_Function_int Function %9
+ %i_22 = OpVariable %_ptr_Function_int Function %9
+ %i_23 = OpVariable %_ptr_Function_int Function %9
+ %i_24 = OpVariable %_ptr_Function_int Function %9
+ %i_25 = OpVariable %_ptr_Function_int Function %9
+ %i_26 = OpVariable %_ptr_Function_int Function %9
+ %i_27 = OpVariable %_ptr_Function_int Function %9
+ %i_28 = OpVariable %_ptr_Function_int Function %9
+ %i_29 = OpVariable %_ptr_Function_int Function %9
+ %i_30 = OpVariable %_ptr_Function_int Function %9
+ %i_31 = OpVariable %_ptr_Function_int Function %9
+ %i_32 = OpVariable %_ptr_Function_int Function %9
+ %i_33 = OpVariable %_ptr_Function_int Function %9
+ %i_34 = OpVariable %_ptr_Function_int Function %9
+ %i_35 = OpVariable %_ptr_Function_int Function %9
+ %i_36 = OpVariable %_ptr_Function_int Function %9
+ %i_37 = OpVariable %_ptr_Function_int Function %9
%sum = OpVariable %_ptr_Function_float Function %91
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
OpStore %m23 %96
OpStore %m24 %98
@@ -1158,18 +1157,17 @@
%617 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %621
-%tint_symbol = OpFunctionParameter %main_out
- %625 = OpLabel
- %626 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %626
- OpReturn
+ %main_inner = OpFunction %main_out None %621
+ %624 = OpLabel
+ %625 = OpFunctionCall %void %main_1
+ %626 = OpLoad %v4float %x_GLF_color
+ %627 = OpCompositeConstruct %main_out %626
+ OpReturnValue %627
OpFunctionEnd
%main = OpFunction %void None %12
- %628 = OpLabel
- %629 = OpFunctionCall %void %main_1
- %631 = OpLoad %v4float %x_GLF_color
- %632 = OpCompositeConstruct %main_out %631
- %630 = OpFunctionCall %void %tint_symbol_2 %632
+ %629 = OpLabel
+ %630 = OpFunctionCall %main_out %main_inner
+ %631 = OpCompositeExtract %v4float %630 0
+ OpStore %x_GLF_color_1_1 %631
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.spvasm.expected.spvasm
index c0ceb3e..c4dc3e3 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%92 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %m "m"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "one"
@@ -20,8 +22,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func0_i1_ "func0_i1_"
OpName %x "x"
OpName %i "i"
@@ -34,9 +34,11 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -54,15 +56,19 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%mat4v2float = OpTypeMatrix %v2float 4
%_ptr_Private_mat4v2float = OpTypePointer Private %mat4v2float
- %6 = OpConstantNull %mat4v2float
- %m = OpVariable %_ptr_Private_mat4v2float Private %6
+ %12 = OpConstantNull %mat4v2float
+ %m = OpVariable %_ptr_Private_mat4v2float Private %12
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
@@ -72,21 +78,15 @@
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %19
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_16 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%31 = OpTypeFunction %void %_ptr_Function_int
@@ -110,7 +110,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %195 = OpTypeFunction %void %main_out
+ %195 = OpTypeFunction %main_out %v4float
%func0_i1_ = OpFunction %void None %31
%x = OpFunctionParameter %_ptr_Function_int
%36 = OpLabel
@@ -295,20 +295,20 @@
%175 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %195
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %195
+%gl_FragCoord_param = OpFunctionParameter %v4float
%199 = OpLabel
- %200 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %200
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %200 = OpFunctionCall %void %main_1
+ %201 = OpLoad %v4float %x_GLF_color
+ %202 = OpCompositeConstruct %main_out %201
+ OpReturnValue %202
OpFunctionEnd
%main = OpFunction %void None %104
- %202 = OpLabel
- %203 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %203
- %204 = OpFunctionCall %void %main_1
- %206 = OpLoad %v4float %x_GLF_color
- %207 = OpCompositeConstruct %main_out %206
- %205 = OpFunctionCall %void %tint_symbol_3 %207
+ %204 = OpLabel
+ %206 = OpLoad %v4float %gl_FragCoord_param_1
+ %205 = OpFunctionCall %main_out %main_inner %206
+ %207 = OpCompositeExtract %v4float %205 0
+ OpStore %x_GLF_color_1_1 %207
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.wgsl.expected.spvasm
index b4e8fcf..238d971 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-functions-accumulate-global-matrix/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%92 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %m "m"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "one"
@@ -20,8 +22,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func0_i1_ "func0_i1_"
OpName %x "x"
OpName %i "i"
@@ -34,9 +34,11 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -54,15 +56,19 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%mat4v2float = OpTypeMatrix %v2float 4
%_ptr_Private_mat4v2float = OpTypePointer Private %mat4v2float
- %6 = OpConstantNull %mat4v2float
- %m = OpVariable %_ptr_Private_mat4v2float Private %6
+ %12 = OpConstantNull %mat4v2float
+ %m = OpVariable %_ptr_Private_mat4v2float Private %12
%buf2 = OpTypeStruct %float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
@@ -72,21 +78,15 @@
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %19
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint_4 = OpConstant %uint 4
%_arr_int_uint_4 = OpTypeArray %int %uint_4
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_16 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%31 = OpTypeFunction %void %_ptr_Function_int
@@ -110,7 +110,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %201 = OpTypeFunction %void %main_out
+ %201 = OpTypeFunction %main_out %v4float
%func0_i1_ = OpFunction %void None %31
%x = OpFunctionParameter %_ptr_Function_int
%36 = OpLabel
@@ -310,20 +310,20 @@
%181 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %201
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %201
+%gl_FragCoord_param = OpFunctionParameter %v4float
%205 = OpLabel
- %206 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %206
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %206 = OpFunctionCall %void %main_1
+ %207 = OpLoad %v4float %x_GLF_color
+ %208 = OpCompositeConstruct %main_out %207
+ OpReturnValue %208
OpFunctionEnd
%main = OpFunction %void None %104
- %208 = OpLabel
- %209 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %209
- %210 = OpFunctionCall %void %main_1
- %212 = OpLoad %v4float %x_GLF_color
- %213 = OpCompositeConstruct %main_out %212
- %211 = OpFunctionCall %void %tint_symbol_3 %213
+ %210 = OpLabel
+ %212 = OpLoad %v4float %gl_FragCoord_param_1
+ %211 = OpFunctionCall %main_out %main_inner %212
+ %213 = OpCompositeExtract %v4float %211 0
+ OpStore %x_GLF_color_1_1 %213
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.spvasm.expected.spvasm
index 59b8fdd..5c3b9c6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 145
+; Bound: 144
; Schema: 0
OpCapability Shader
%73 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
@@ -23,9 +23,9 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -77,11 +76,11 @@
%float_1 = OpConstant %float 1
%102 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %133 = OpTypeFunction %void %main_out
+ %133 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v0 = OpVariable %_ptr_Function_v4float Function %17
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v0 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%a = OpVariable %_ptr_Function_int Function %29
%c = OpVariable %_ptr_Function_int Function %29
%34 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
@@ -210,18 +209,17 @@
%113 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %133
-%tint_symbol = OpFunctionParameter %main_out
- %137 = OpLabel
- %138 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %138
- OpReturn
+ %main_inner = OpFunction %main_out None %133
+ %136 = OpLabel
+ %137 = OpFunctionCall %void %main_1
+ %138 = OpLoad %v4float %x_GLF_color
+ %139 = OpCompositeConstruct %main_out %138
+ OpReturnValue %139
OpFunctionEnd
%main = OpFunction %void None %20
- %140 = OpLabel
- %141 = OpFunctionCall %void %main_1
- %143 = OpLoad %v4float %x_GLF_color
- %144 = OpCompositeConstruct %main_out %143
- %142 = OpFunctionCall %void %tint_symbol_2 %144
+ %141 = OpLabel
+ %142 = OpFunctionCall %main_out %main_inner
+ %143 = OpCompositeExtract %v4float %142 0
+ OpStore %x_GLF_color_1_1 %143
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.wgsl.expected.spvasm
index 59b8fdd..5c3b9c6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-loop-undefined-smoothstep-never-executed/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 145
+; Bound: 144
; Schema: 0
OpCapability Shader
%73 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v0 "v0"
OpName %v1 "v1"
@@ -23,9 +23,9 @@
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -77,11 +76,11 @@
%float_1 = OpConstant %float 1
%102 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %133 = OpTypeFunction %void %main_out
+ %133 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v0 = OpVariable %_ptr_Function_v4float Function %17
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v0 = OpVariable %_ptr_Function_v4float Function %5
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%a = OpVariable %_ptr_Function_int Function %29
%c = OpVariable %_ptr_Function_int Function %29
%34 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %int_1
@@ -210,18 +209,17 @@
%113 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %133
-%tint_symbol = OpFunctionParameter %main_out
- %137 = OpLabel
- %138 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %138
- OpReturn
+ %main_inner = OpFunction %main_out None %133
+ %136 = OpLabel
+ %137 = OpFunctionCall %void %main_1
+ %138 = OpLoad %v4float %x_GLF_color
+ %139 = OpCompositeConstruct %main_out %138
+ OpReturnValue %139
OpFunctionEnd
%main = OpFunction %void None %20
- %140 = OpLabel
- %141 = OpFunctionCall %void %main_1
- %143 = OpLoad %v4float %x_GLF_color
- %144 = OpCompositeConstruct %main_out %143
- %142 = OpFunctionCall %void %tint_symbol_2 %144
+ %141 = OpLabel
+ %142 = OpFunctionCall %main_out %main_inner
+ %143 = OpCompositeExtract %v4float %142 0
+ OpStore %x_GLF_color_1_1 %143
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.spvasm.expected.spvasm
index c8c4a1e..90751e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 355
+; Bound: 354
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
@@ -37,9 +37,9 @@
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -52,13 +52,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -70,12 +73,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %20 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %20
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -91,27 +90,27 @@
%int_3 = OpConstant %int 3
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %343 = OpTypeFunction %void %main_out
+ %343 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f = OpVariable %_ptr_Function_float Function %29
- %i = OpVariable %_ptr_Function_int Function %4
- %i_1 = OpVariable %_ptr_Function_int Function %4
- %i_2 = OpVariable %_ptr_Function_int Function %4
- %i_3 = OpVariable %_ptr_Function_int Function %4
- %i_4 = OpVariable %_ptr_Function_int Function %4
- %i_5 = OpVariable %_ptr_Function_int Function %4
- %i_6 = OpVariable %_ptr_Function_int Function %4
- %i_7 = OpVariable %_ptr_Function_int Function %4
- %i_8 = OpVariable %_ptr_Function_int Function %4
- %i_9 = OpVariable %_ptr_Function_int Function %4
- %i_10 = OpVariable %_ptr_Function_int Function %4
- %i_11 = OpVariable %_ptr_Function_int Function %4
- %i_12 = OpVariable %_ptr_Function_int Function %4
- %i_13 = OpVariable %_ptr_Function_int Function %4
- %i_14 = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
+ %i_1 = OpVariable %_ptr_Function_int Function %9
+ %i_2 = OpVariable %_ptr_Function_int Function %9
+ %i_3 = OpVariable %_ptr_Function_int Function %9
+ %i_4 = OpVariable %_ptr_Function_int Function %9
+ %i_5 = OpVariable %_ptr_Function_int Function %9
+ %i_6 = OpVariable %_ptr_Function_int Function %9
+ %i_7 = OpVariable %_ptr_Function_int Function %9
+ %i_8 = OpVariable %_ptr_Function_int Function %9
+ %i_9 = OpVariable %_ptr_Function_int Function %9
+ %i_10 = OpVariable %_ptr_Function_int Function %9
+ %i_11 = OpVariable %_ptr_Function_int Function %9
+ %i_12 = OpVariable %_ptr_Function_int Function %9
+ %i_13 = OpVariable %_ptr_Function_int Function %9
+ %i_14 = OpVariable %_ptr_Function_int Function %9
%sum = OpVariable %_ptr_Function_float Function %29
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%52 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
%53 = OpLoad %float %52
@@ -594,18 +593,17 @@
%323 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %343
-%tint_symbol = OpFunctionParameter %main_out
- %347 = OpLabel
- %348 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %348
- OpReturn
+ %main_inner = OpFunction %main_out None %343
+ %346 = OpLabel
+ %347 = OpFunctionCall %void %main_1
+ %348 = OpLoad %v4float %x_GLF_color
+ %349 = OpCompositeConstruct %main_out %348
+ OpReturnValue %349
OpFunctionEnd
%main = OpFunction %void None %23
- %350 = OpLabel
- %351 = OpFunctionCall %void %main_1
- %353 = OpLoad %v4float %x_GLF_color
- %354 = OpCompositeConstruct %main_out %353
- %352 = OpFunctionCall %void %tint_symbol_2 %354
+ %351 = OpLabel
+ %352 = OpFunctionCall %main_out %main_inner
+ %353 = OpCompositeExtract %v4float %352 0
+ OpStore %x_GLF_color_1_1 %353
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.wgsl.expected.spvasm
index c8c4a1e..90751e8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nested-loops-global-loop-counter-do-while-accumulate-float/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 355
+; Bound: 354
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_global_loop_count "x_GLF_global_loop_count"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %i "i"
@@ -37,9 +37,9 @@
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -52,13 +52,16 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
-%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+%x_GLF_global_loop_count = OpVariable %_ptr_Private_int Private %9
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -70,12 +73,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %20 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %20
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -91,27 +90,27 @@
%int_3 = OpConstant %int 3
%int_100 = OpConstant %int 100
%main_out = OpTypeStruct %v4float
- %343 = OpTypeFunction %void %main_out
+ %343 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %23
%26 = OpLabel
%f = OpVariable %_ptr_Function_float Function %29
- %i = OpVariable %_ptr_Function_int Function %4
- %i_1 = OpVariable %_ptr_Function_int Function %4
- %i_2 = OpVariable %_ptr_Function_int Function %4
- %i_3 = OpVariable %_ptr_Function_int Function %4
- %i_4 = OpVariable %_ptr_Function_int Function %4
- %i_5 = OpVariable %_ptr_Function_int Function %4
- %i_6 = OpVariable %_ptr_Function_int Function %4
- %i_7 = OpVariable %_ptr_Function_int Function %4
- %i_8 = OpVariable %_ptr_Function_int Function %4
- %i_9 = OpVariable %_ptr_Function_int Function %4
- %i_10 = OpVariable %_ptr_Function_int Function %4
- %i_11 = OpVariable %_ptr_Function_int Function %4
- %i_12 = OpVariable %_ptr_Function_int Function %4
- %i_13 = OpVariable %_ptr_Function_int Function %4
- %i_14 = OpVariable %_ptr_Function_int Function %4
+ %i = OpVariable %_ptr_Function_int Function %9
+ %i_1 = OpVariable %_ptr_Function_int Function %9
+ %i_2 = OpVariable %_ptr_Function_int Function %9
+ %i_3 = OpVariable %_ptr_Function_int Function %9
+ %i_4 = OpVariable %_ptr_Function_int Function %9
+ %i_5 = OpVariable %_ptr_Function_int Function %9
+ %i_6 = OpVariable %_ptr_Function_int Function %9
+ %i_7 = OpVariable %_ptr_Function_int Function %9
+ %i_8 = OpVariable %_ptr_Function_int Function %9
+ %i_9 = OpVariable %_ptr_Function_int Function %9
+ %i_10 = OpVariable %_ptr_Function_int Function %9
+ %i_11 = OpVariable %_ptr_Function_int Function %9
+ %i_12 = OpVariable %_ptr_Function_int Function %9
+ %i_13 = OpVariable %_ptr_Function_int Function %9
+ %i_14 = OpVariable %_ptr_Function_int Function %9
%sum = OpVariable %_ptr_Function_float Function %29
- %r = OpVariable %_ptr_Function_int Function %4
+ %r = OpVariable %_ptr_Function_int Function %9
OpStore %x_GLF_global_loop_count %int_0
%52 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %int_1
%53 = OpLoad %float %52
@@ -594,18 +593,17 @@
%323 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %343
-%tint_symbol = OpFunctionParameter %main_out
- %347 = OpLabel
- %348 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %348
- OpReturn
+ %main_inner = OpFunction %main_out None %343
+ %346 = OpLabel
+ %347 = OpFunctionCall %void %main_1
+ %348 = OpLoad %v4float %x_GLF_color
+ %349 = OpCompositeConstruct %main_out %348
+ OpReturnValue %349
OpFunctionEnd
%main = OpFunction %void None %23
- %350 = OpLabel
- %351 = OpFunctionCall %void %main_1
- %353 = OpLoad %v4float %x_GLF_color
- %354 = OpCompositeConstruct %main_out %353
- %352 = OpFunctionCall %void %tint_symbol_2 %354
+ %351 = OpLabel
+ %352 = OpFunctionCall %main_out %main_inner
+ %353 = OpCompositeExtract %v4float %352 0
+ OpStore %x_GLF_color_1_1 %353
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.spvasm.expected.spvasm
index 794d877..40085c0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 215
+; Bound: 214
; Schema: 0
OpCapability Shader
%152 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %ref "ref"
@@ -22,18 +22,22 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_19 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_17 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_19 = OpConstant %uint 19
@@ -41,13 +45,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_19
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_17 = OpConstant %uint 17
@@ -82,7 +81,7 @@
%true = OpConstantTrue %bool
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %203 = OpTypeFunction %void %main_out
+ %203 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%A = OpVariable %_ptr_Function__arr_int_uint_17 Function %23
@@ -277,18 +276,17 @@
%188 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %203
-%tint_symbol = OpFunctionParameter %main_out
- %207 = OpLabel
- %208 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %208
- OpReturn
+ %main_inner = OpFunction %main_out None %203
+ %206 = OpLabel
+ %207 = OpFunctionCall %void %main_1
+ %208 = OpLoad %v4float %x_GLF_color
+ %209 = OpCompositeConstruct %main_out %208
+ OpReturnValue %209
OpFunctionEnd
%main = OpFunction %void None %15
- %210 = OpLabel
- %211 = OpFunctionCall %void %main_1
- %213 = OpLoad %v4float %x_GLF_color
- %214 = OpCompositeConstruct %main_out %213
- %212 = OpFunctionCall %void %tint_symbol_2 %214
+ %211 = OpLabel
+ %212 = OpFunctionCall %main_out %main_inner
+ %213 = OpCompositeExtract %v4float %212 0
+ OpStore %x_GLF_color_1_1 %213
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.wgsl.expected.spvasm
index 794d877..40085c0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-array-access/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 215
+; Bound: 214
; Schema: 0
OpCapability Shader
%152 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %ref "ref"
@@ -22,18 +22,22 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_19 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_17 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_19 = OpConstant %uint 19
@@ -41,13 +45,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_19
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_17 = OpConstant %uint 17
@@ -82,7 +81,7 @@
%true = OpConstantTrue %bool
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %203 = OpTypeFunction %void %main_out
+ %203 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%A = OpVariable %_ptr_Function__arr_int_uint_17 Function %23
@@ -277,18 +276,17 @@
%188 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %203
-%tint_symbol = OpFunctionParameter %main_out
- %207 = OpLabel
- %208 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %208
- OpReturn
+ %main_inner = OpFunction %main_out None %203
+ %206 = OpLabel
+ %207 = OpFunctionCall %void %main_1
+ %208 = OpLoad %v4float %x_GLF_color
+ %209 = OpCompositeConstruct %main_out %208
+ OpReturnValue %209
OpFunctionEnd
%main = OpFunction %void None %15
- %210 = OpLabel
- %211 = OpFunctionCall %void %main_1
- %213 = OpLoad %v4float %x_GLF_color
- %214 = OpCompositeConstruct %main_out %213
- %212 = OpFunctionCall %void %tint_symbol_2 %214
+ %211 = OpLabel
+ %212 = OpFunctionCall %main_out %main_inner
+ %213 = OpCompositeExtract %v4float %212 0
+ OpStore %x_GLF_color_1_1 %213
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.spvasm.expected.spvasm
index 6051176..fc1d811 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 111
+; Bound: 110
; Schema: 0
OpCapability Shader
%69 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %i "i"
@@ -24,9 +24,9 @@
OpName %indexable_1 "indexable_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v4float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -55,12 +58,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -83,10 +82,10 @@
%67 = OpConstantComposite %_arr_v4float_uint_2 %64 %66
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %99 = OpTypeFunction %void %main_out
+ %99 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%a = OpVariable %_ptr_Function_int Function %28
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %33
@@ -160,18 +159,17 @@
OpStore %x_GLF_color %98
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %99
-%tint_symbol = OpFunctionParameter %main_out
- %103 = OpLabel
- %104 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %104
- OpReturn
+ %main_inner = OpFunction %main_out None %99
+ %102 = OpLabel
+ %103 = OpFunctionCall %void %main_1
+ %104 = OpLoad %v4float %x_GLF_color
+ %105 = OpCompositeConstruct %main_out %104
+ OpReturnValue %105
OpFunctionEnd
%main = OpFunction %void None %20
- %106 = OpLabel
- %107 = OpFunctionCall %void %main_1
- %109 = OpLoad %v4float %x_GLF_color
- %110 = OpCompositeConstruct %main_out %109
- %108 = OpFunctionCall %void %tint_symbol_2 %110
+ %107 = OpLabel
+ %108 = OpFunctionCall %main_out %main_inner
+ %109 = OpCompositeExtract %v4float %108 0
+ OpStore %x_GLF_color_1_1 %109
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.wgsl.expected.spvasm
index 6051176..fc1d811 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-large-constants-for-clamp-vector-access/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 111
+; Bound: 110
; Schema: 0
OpCapability Shader
%69 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %i "i"
@@ -24,9 +24,9 @@
OpName %indexable_1 "indexable_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -39,10 +39,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v4float_uint_2 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -55,12 +58,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -83,10 +82,10 @@
%67 = OpConstantComposite %_arr_v4float_uint_2 %64 %66
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %99 = OpTypeFunction %void %main_out
+ %99 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %v1 = OpVariable %_ptr_Function_v4float Function %17
+ %v1 = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%a = OpVariable %_ptr_Function_int Function %28
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_2 Function %33
@@ -160,18 +159,17 @@
OpStore %x_GLF_color %98
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %99
-%tint_symbol = OpFunctionParameter %main_out
- %103 = OpLabel
- %104 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %104
- OpReturn
+ %main_inner = OpFunction %main_out None %99
+ %102 = OpLabel
+ %103 = OpFunctionCall %void %main_1
+ %104 = OpLoad %v4float %x_GLF_color
+ %105 = OpCompositeConstruct %main_out %104
+ OpReturnValue %105
OpFunctionEnd
%main = OpFunction %void None %20
- %106 = OpLabel
- %107 = OpFunctionCall %void %main_1
- %109 = OpLoad %v4float %x_GLF_color
- %110 = OpCompositeConstruct %main_out %109
- %108 = OpFunctionCall %void %tint_symbol_2 %110
+ %107 = OpLabel
+ %108 = OpFunctionCall %main_out %main_inner
+ %109 = OpCompositeExtract %v4float %108 0
+ OpStore %x_GLF_color_1_1 %109
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.spvasm.expected.spvasm
index d45e754..1636891 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 104
+; Bound: 103
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -14,14 +15,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -52,8 +53,6 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -67,7 +66,7 @@
%float_0 = OpConstant %float 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -153,18 +152,17 @@
OpStore %x_GLF_color %91
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %92
-%tint_symbol = OpFunctionParameter %main_out
- %96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %97
- OpReturn
+ %main_inner = OpFunction %main_out None %92
+ %95 = OpLabel
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %19
- %99 = OpLabel
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_2 %103
+ %100 = OpLabel
+ %101 = OpFunctionCall %main_out %main_inner
+ %102 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %102
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.wgsl.expected.spvasm
index d45e754..1636891 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-nir-opt-loop-unroll-if-if-if-if-do-while/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 104
+; Bound: 103
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
@@ -14,14 +15,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,12 +34,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -52,8 +53,6 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -67,7 +66,7 @@
%float_0 = OpConstant %float 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_float Function %25
@@ -153,18 +152,17 @@
OpStore %x_GLF_color %91
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %92
-%tint_symbol = OpFunctionParameter %main_out
- %96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %97
- OpReturn
+ %main_inner = OpFunction %main_out None %92
+ %95 = OpLabel
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %19
- %99 = OpLabel
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_2 %103
+ %100 = OpLabel
+ %101 = OpFunctionCall %main_out %main_inner
+ %102 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %102
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.spvasm.expected.spvasm
index 40682e7..379bc64 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 118
+; Bound: 117
; Schema: 0
OpCapability Shader
%74 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %M1 "M1"
OpName %a "a"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -78,7 +77,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %106 = OpTypeFunction %void %main_out
+ %106 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%M1 = OpVariable %_ptr_Function_mat2v2float Function %28
@@ -167,18 +166,17 @@
%86 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %106
-%tint_symbol = OpFunctionParameter %main_out
- %110 = OpLabel
- %111 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %111
- OpReturn
+ %main_inner = OpFunction %main_out None %106
+ %109 = OpLabel
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %20
- %113 = OpLabel
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_2 %117
+ %114 = OpLabel
+ %115 = OpFunctionCall %main_out %main_inner
+ %116 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %116
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.wgsl.expected.spvasm
index 40682e7..379bc64 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-not-clamp-matrix-access/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 118
+; Bound: 117
; Schema: 0
OpCapability Shader
%74 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %M1 "M1"
OpName %a "a"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
@@ -52,12 +55,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -78,7 +77,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %106 = OpTypeFunction %void %main_out
+ %106 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%M1 = OpVariable %_ptr_Function_mat2v2float Function %28
@@ -167,18 +166,17 @@
%86 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %106
-%tint_symbol = OpFunctionParameter %main_out
- %110 = OpLabel
- %111 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %111
- OpReturn
+ %main_inner = OpFunction %main_out None %106
+ %109 = OpLabel
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %20
- %113 = OpLabel
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_2 %117
+ %114 = OpLabel
+ %115 = OpFunctionCall %main_out %main_inner
+ %116 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %116
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.spvasm.expected.spvasm
index 3acf316..f9c4a95 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -57,7 +56,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%f = OpVariable %_ptr_Function_float Function %21
@@ -100,18 +99,17 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %15
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.wgsl.expected.spvasm
index 3acf316..f9c4a95 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-one-minus-clamp-always-one-cast-to-int/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -57,7 +56,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%f = OpVariable %_ptr_Function_float Function %21
@@ -100,18 +99,17 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %15
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.spvasm.expected.spvasm
index acba4e0..50325cf 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,17 +17,17 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,9 +40,14 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -48,21 +55,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +76,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %118 = OpTypeFunction %void %main_out
+ %118 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -203,20 +203,20 @@
%100 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %118
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %118
+%gl_FragCoord_param = OpFunctionParameter %v4float
%122 = OpLabel
- %123 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %123
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %23
- %125 = OpLabel
- %126 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %126
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_3 %130
+ %127 = OpLabel
+ %129 = OpLoad %v4float %gl_FragCoord_param_1
+ %128 = OpFunctionCall %main_out %main_inner %129
+ %130 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %130
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.wgsl.expected.spvasm
index acba4e0..50325cf 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for-for-do-while-if-if/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,17 +17,17 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -38,9 +40,14 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -48,21 +55,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +76,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%main_out = OpTypeStruct %v4float
- %118 = OpTypeFunction %void %main_out
+ %118 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_int Function %29
@@ -203,20 +203,20 @@
%100 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %118
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %118
+%gl_FragCoord_param = OpFunctionParameter %v4float
%122 = OpLabel
- %123 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %123
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %23
- %125 = OpLabel
- %126 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %126
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_3 %130
+ %127 = OpLabel
+ %129 = OpLoad %v4float %gl_FragCoord_param_1
+ %128 = OpFunctionCall %main_out %main_inner %129
+ %130 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %130
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.spvasm.expected.spvasm
index 2125db7..eccc08e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,8 +17,6 @@
OpName %x_11 "x_11"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -33,9 +33,11 @@
OpName %i_10 "i_10"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -48,10 +50,14 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -64,15 +70,9 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -90,7 +90,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %239 = OpTypeFunction %void %main_out
+ %239 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_float Function %29
@@ -422,20 +422,20 @@
OpStore %x_GLF_color %238
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %239
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %239
+%gl_FragCoord_param = OpFunctionParameter %v4float
%243 = OpLabel
- %244 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %244
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %244 = OpFunctionCall %void %main_1
+ %245 = OpLoad %v4float %x_GLF_color
+ %246 = OpCompositeConstruct %main_out %245
+ OpReturnValue %246
OpFunctionEnd
%main = OpFunction %void None %23
- %246 = OpLabel
- %247 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %247
- %248 = OpFunctionCall %void %main_1
- %250 = OpLoad %v4float %x_GLF_color
- %251 = OpCompositeConstruct %main_out %250
- %249 = OpFunctionCall %void %tint_symbol_3 %251
+ %248 = OpLabel
+ %250 = OpLoad %v4float %gl_FragCoord_param_1
+ %249 = OpFunctionCall %main_out %main_inner %250
+ %251 = OpCompositeExtract %v4float %249 0
+ OpStore %x_GLF_color_1_1 %251
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.wgsl.expected.spvasm
index 2125db7..eccc08e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-optimize-phis-for/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,8 +17,6 @@
OpName %x_11 "x_11"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -33,9 +33,11 @@
OpName %i_10 "i_10"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -48,10 +50,14 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -64,15 +70,9 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -90,7 +90,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %239 = OpTypeFunction %void %main_out
+ %239 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%a = OpVariable %_ptr_Function_float Function %29
@@ -422,20 +422,20 @@
OpStore %x_GLF_color %238
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %239
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %239
+%gl_FragCoord_param = OpFunctionParameter %v4float
%243 = OpLabel
- %244 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %244
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %244 = OpFunctionCall %void %main_1
+ %245 = OpLoad %v4float %x_GLF_color
+ %246 = OpCompositeConstruct %main_out %245
+ OpReturnValue %246
OpFunctionEnd
%main = OpFunction %void None %23
- %246 = OpLabel
- %247 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %247
- %248 = OpFunctionCall %void %main_1
- %250 = OpLoad %v4float %x_GLF_color
- %251 = OpCompositeConstruct %main_out %250
- %249 = OpFunctionCall %void %tint_symbol_3 %251
+ %248 = OpLabel
+ %250 = OpLoad %v4float %gl_FragCoord_param_1
+ %249 = OpFunctionCall %main_out %main_inner %250
+ %251 = OpCompositeExtract %v4float %249 0
+ OpStore %x_GLF_color_1_1 %251
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.spvasm.expected.spvasm
index 48890d8..c06418f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 167
+; Bound: 166
; Schema: 0
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %values "values"
@@ -28,9 +28,9 @@
OpName %x_118_phi "x_118_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -57,12 +60,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -83,12 +82,12 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %155 = OpTypeFunction %void %main_out
+ %155 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %25
- %values = OpVariable %_ptr_Function_v4float Function %16
- %ref = OpVariable %_ptr_Function_v4float Function %16
+ %values = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%x_85 = OpVariable %_ptr_Function_bool Function %32
%x_101 = OpVariable %_ptr_Function_bool Function %32
%x_117 = OpVariable %_ptr_Function_bool Function %32
@@ -229,18 +228,17 @@
%135 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %155
-%tint_symbol = OpFunctionParameter %main_out
- %159 = OpLabel
- %160 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %160
- OpReturn
+ %main_inner = OpFunction %main_out None %155
+ %158 = OpLabel
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %19
- %162 = OpLabel
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_2 %166
+ %163 = OpLabel
+ %164 = OpFunctionCall %main_out %main_inner
+ %165 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %165
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.wgsl.expected.spvasm
index 48890d8..c06418f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-packhalf-unpackunorm/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 167
+; Bound: 166
; Schema: 0
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %values "values"
@@ -28,9 +28,9 @@
OpName %x_118_phi "x_118_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -57,12 +60,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_10 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%19 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -83,12 +82,12 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %155 = OpTypeFunction %void %main_out
+ %155 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %25
- %values = OpVariable %_ptr_Function_v4float Function %16
- %ref = OpVariable %_ptr_Function_v4float Function %16
+ %values = OpVariable %_ptr_Function_v4float Function %5
+ %ref = OpVariable %_ptr_Function_v4float Function %5
%x_85 = OpVariable %_ptr_Function_bool Function %32
%x_101 = OpVariable %_ptr_Function_bool Function %32
%x_117 = OpVariable %_ptr_Function_bool Function %32
@@ -229,18 +228,17 @@
%135 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %155
-%tint_symbol = OpFunctionParameter %main_out
- %159 = OpLabel
- %160 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %160
- OpReturn
+ %main_inner = OpFunction %main_out None %155
+ %158 = OpLabel
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %19
- %162 = OpLabel
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_2 %166
+ %163 = OpLabel
+ %164 = OpFunctionCall %main_out %main_inner
+ %165 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %165
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.spvasm.expected.spvasm
index 3722ee6..542b71a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %int %_ptr_Function_int
%uint = OpTypeInt 32 0
@@ -56,7 +55,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %12
%x = OpFunctionParameter %_ptr_Function_int
%16 = OpLabel
@@ -90,18 +89,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %31
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.wgsl.expected.spvasm
index 3722ee6..542b71a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-signum/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %int %_ptr_Function_int
%uint = OpTypeInt 32 0
@@ -56,7 +55,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%func_i1_ = OpFunction %int None %12
%x = OpFunctionParameter %_ptr_Function_int
%16 = OpLabel
@@ -90,18 +89,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %31
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.spvasm.expected.spvasm
index ed4d1eb..7691107 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %main_out
+ %35 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -69,18 +68,17 @@
%28 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %40
- OpReturn
+ %main_inner = OpFunction %main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %main_1
+ %40 = OpLoad %v4float %x_GLF_color
+ %41 = OpCompositeConstruct %main_out %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %12
- %42 = OpLabel
- %43 = OpFunctionCall %void %main_1
- %45 = OpLoad %v4float %x_GLF_color
- %46 = OpCompositeConstruct %main_out %45
- %44 = OpFunctionCall %void %tint_symbol_2 %46
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.wgsl.expected.spvasm
index ed4d1eb..7691107 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pattern-match-single-bit/0.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -50,7 +49,7 @@
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %35 = OpTypeFunction %void %main_out
+ %35 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%19 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0
@@ -69,18 +68,17 @@
%28 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %35
-%tint_symbol = OpFunctionParameter %main_out
- %39 = OpLabel
- %40 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %40
- OpReturn
+ %main_inner = OpFunction %main_out None %35
+ %38 = OpLabel
+ %39 = OpFunctionCall %void %main_1
+ %40 = OpLoad %v4float %x_GLF_color
+ %41 = OpCompositeConstruct %main_out %40
+ OpReturnValue %41
OpFunctionEnd
%main = OpFunction %void None %12
- %42 = OpLabel
- %43 = OpFunctionCall %void %main_1
- %45 = OpLoad %v4float %x_GLF_color
- %46 = OpCompositeConstruct %main_out %45
- %44 = OpFunctionCall %void %tint_symbol_2 %46
+ %43 = OpLabel
+ %44 = OpFunctionCall %main_out %main_inner
+ %45 = OpCompositeExtract %v4float %44 0
+ OpStore %x_GLF_color_1_1 %45
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.spvasm.expected.spvasm
index 6e3a136..50bbfc1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,15 +17,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -36,14 +38,16 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,16 +55,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +76,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -175,20 +175,20 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %105
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %105
+%gl_FragCoord_param = OpFunctionParameter %v4float
%109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %110
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %23
- %112 = OpLabel
- %113 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %113
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_3 %117
+ %114 = OpLabel
+ %116 = OpLoad %v4float %gl_FragCoord_param_1
+ %115 = OpFunctionCall %main_out %main_inner %116
+ %117 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.wgsl.expected.spvasm
index 6e3a136..50bbfc1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-peephole-optimizer-target-instr-info-for-if-if-if/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
@@ -15,15 +17,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -36,14 +38,16 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -51,16 +55,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +76,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -175,20 +175,20 @@
%40 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %105
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %105
+%gl_FragCoord_param = OpFunctionParameter %v4float
%109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %110
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %23
- %112 = OpLabel
- %113 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %113
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_3 %117
+ %114 = OpLabel
+ %116 = OpLoad %v4float %gl_FragCoord_param_1
+ %115 = OpFunctionCall %main_out %main_inner %116
+ %117 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.spvasm.expected.spvasm
index 4a7d285..e49d71a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,7 +19,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
@@ -26,9 +26,9 @@
OpName %f3 "f3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -46,9 +46,12 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -63,12 +66,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_13 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -81,7 +80,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %28
@@ -146,18 +145,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %22
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.wgsl.expected.spvasm
index 4a7d285..e49d71a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-identical-value-sqrt/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,7 +19,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f0 "f0"
OpName %f1 "f1"
@@ -26,9 +26,9 @@
OpName %f3 "f3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -46,9 +46,12 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -63,12 +66,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_13 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -81,7 +80,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f0 = OpVariable %_ptr_Function_float Function %28
@@ -146,18 +145,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %22
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.spvasm.expected.spvasm
index 8e68666..8fccec2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,16 +19,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_48 "x_48"
OpName %x_49_phi "x_49_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -45,9 +45,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -62,12 +65,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,7 +81,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
@@ -142,18 +141,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %22
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.wgsl.expected.spvasm
index 8e68666..8fccec2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined-result-condition-with-always-true/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,16 +19,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_48 "x_48"
OpName %x_49_phi "x_49_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -45,9 +45,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -62,12 +65,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %19 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %19
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %19
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,7 +81,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
@@ -142,18 +141,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %22
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.spvasm.expected.spvasm
index 35787a8..f2e01df 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.spvasm.expected.spvasm
@@ -1,39 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -41,8 +42,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -56,7 +55,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -99,18 +98,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %14
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.wgsl.expected.spvasm
index 60826bb..d4abc98 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-pow-undefined/0-opt.wgsl.expected.spvasm
@@ -1,39 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 70
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -41,8 +42,6 @@
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -56,7 +55,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %59 = OpTypeFunction %void %main_out
+ %59 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -104,18 +103,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %59
-%tint_symbol = OpFunctionParameter %main_out
- %63 = OpLabel
- %64 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %64
- OpReturn
+ %main_inner = OpFunction %main_out None %59
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %14
- %66 = OpLabel
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_2 %70
+ %67 = OpLabel
+ %68 = OpFunctionCall %main_out %main_inner
+ %69 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %69
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.spvasm.expected.spvasm
index b52f8c5..0af5f16 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.wgsl.expected.spvasm
index b52f8c5..0af5f16 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-rcp-negative-int/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.spvasm.expected.spvasm
index 83487ed..b524821 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.wgsl.expected.spvasm
index 83487ed..b524821 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reciprocal-var-minus-one/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -34,13 +38,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%bool = OpTypeBool
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.spvasm.expected.spvasm
index 7a86628..6162334 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_9 "x_9"
OpName %x_10_phi "x_10_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -58,7 +57,7 @@
%float_1 = OpConstant %float 1
%53 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_9 = OpVariable %_ptr_Function__arr_int_uint_1 Function %21
@@ -102,18 +101,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %12
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.wgsl.expected.spvasm
index e24ad6d..ea49963 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-array-replace-extract/0.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 68
+; Bound: 67
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_9 "x_9"
OpName %x_10_phi "x_10_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -58,7 +57,7 @@
%float_1 = OpConstant %float 1
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_9 = OpVariable %_ptr_Function__arr_int_uint_1 Function %21
@@ -107,18 +106,17 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %56
-%tint_symbol = OpFunctionParameter %main_out
- %60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %61
- OpReturn
+ %main_inner = OpFunction %main_out None %56
+ %59 = OpLabel
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %12
- %63 = OpLabel
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_2 %67
+ %64 = OpLabel
+ %65 = OpFunctionCall %main_out %main_inner
+ %66 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %66
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.spvasm.expected.spvasm
index c85153e..34219e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "x"
OpMemberName %S 1 "y"
@@ -23,30 +23,29 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpDecorate %_arr_S_uint_2 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -73,7 +72,7 @@
%76 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%77 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%func_struct_S_i1_i11_ = OpFunction %void None %12
%arg = OpFunctionParameter %_ptr_Function_S
%18 = OpLabel
@@ -141,18 +140,17 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %25
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.wgsl.expected.spvasm
index c85153e..34219e4 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reduce-load-replace-extract/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 90
+; Bound: 89
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "x"
OpMemberName %S 1 "y"
@@ -23,30 +23,29 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpDecorate %_arr_S_uint_2 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -73,7 +72,7 @@
%76 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%77 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %78 = OpTypeFunction %void %main_out
+ %78 = OpTypeFunction %main_out
%func_struct_S_i1_i11_ = OpFunction %void None %12
%arg = OpFunctionParameter %_ptr_Function_S
%18 = OpLabel
@@ -141,18 +140,17 @@
%72 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %78
-%tint_symbol = OpFunctionParameter %main_out
- %82 = OpLabel
- %83 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %83
- OpReturn
+ %main_inner = OpFunction %main_out None %78
+ %81 = OpLabel
+ %82 = OpFunctionCall %void %main_1
+ %83 = OpLoad %v4float %x_GLF_color
+ %84 = OpCompositeConstruct %main_out %83
+ OpReturnValue %84
OpFunctionEnd
%main = OpFunction %void None %25
- %85 = OpLabel
- %86 = OpFunctionCall %void %main_1
- %88 = OpLoad %v4float %x_GLF_color
- %89 = OpCompositeConstruct %main_out %88
- %87 = OpFunctionCall %void %tint_symbol_2 %89
+ %86 = OpLabel
+ %87 = OpFunctionCall %main_out %main_inner
+ %88 = OpCompositeExtract %v4float %87 0
+ OpStore %x_GLF_color_1_1 %88
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.spvasm.expected.spvasm
index 7d4d31d..5387682 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_v1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_v1_1_1 "x_GLF_v1_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,16 +17,16 @@
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_v1 "x_GLF_v1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_v1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_v1_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -37,9 +39,14 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_v1_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -47,21 +54,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
- %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -75,7 +75,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -168,20 +168,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %96
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %96
+%gl_FragCoord_param = OpFunctionParameter %v4float
%100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %101
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_v1
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %23
- %103 = OpLabel
- %104 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %104
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_v1
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_3 %108
+ %105 = OpLabel
+ %107 = OpLoad %v4float %gl_FragCoord_param_1
+ %106 = OpFunctionCall %main_out %main_inner %107
+ %108 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_v1_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.wgsl.expected.spvasm
index 7d4d31d..5387682 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_v1_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_v1_1_1 "x_GLF_v1_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -15,16 +17,16 @@
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_v1 "x_GLF_v1"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_v1_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_v1_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
@@ -37,9 +39,14 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_v1_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -47,21 +54,14 @@
%buf1 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
- %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_v1 = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%23 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -75,7 +75,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%i = OpVariable %_ptr_Function_int Function %29
@@ -168,20 +168,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %96
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %96
+%gl_FragCoord_param = OpFunctionParameter %v4float
%100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %101
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_v1
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %23
- %103 = OpLabel
- %104 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %104
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_v1
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_3 %108
+ %105 = OpLabel
+ %107 = OpLoad %v4float %gl_FragCoord_param_1
+ %106 = OpFunctionCall %main_out %main_inner %107
+ %108 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_v1_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.spvasm.expected.spvasm
index 23d5183..74936e1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 147
+; Bound: 146
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %f "f"
@@ -19,17 +19,21 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -65,7 +64,7 @@
%v2bool = OpTypeVector %bool 2
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %135 = OpTypeFunction %void %main_out
+ %135 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %23
@@ -201,18 +200,17 @@
%115 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %135
-%tint_symbol = OpFunctionParameter %main_out
- %139 = OpLabel
- %140 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %140
- OpReturn
+ %main_inner = OpFunction %main_out None %135
+ %138 = OpLabel
+ %139 = OpFunctionCall %void %main_1
+ %140 = OpLoad %v4float %x_GLF_color
+ %141 = OpCompositeConstruct %main_out %140
+ OpReturnValue %141
OpFunctionEnd
%main = OpFunction %void None %15
- %142 = OpLabel
- %143 = OpFunctionCall %void %main_1
- %145 = OpLoad %v4float %x_GLF_color
- %146 = OpCompositeConstruct %main_out %145
- %144 = OpFunctionCall %void %tint_symbol_2 %146
+ %143 = OpLabel
+ %144 = OpFunctionCall %main_out %main_inner
+ %145 = OpCompositeExtract %v4float %144 0
+ OpStore %x_GLF_color_1_1 %145
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.wgsl.expected.spvasm
index 2f12b21..e6793bf 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-reinitialize-matrix-after-undefined-value/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 149
+; Bound: 148
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %f "f"
@@ -19,17 +19,21 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -37,13 +41,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -65,7 +64,7 @@
%v2bool = OpTypeVector %bool 2
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %137 = OpTypeFunction %void %main_out
+ %137 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %23
@@ -206,18 +205,17 @@
%117 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %137
-%tint_symbol = OpFunctionParameter %main_out
- %141 = OpLabel
- %142 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %142
- OpReturn
+ %main_inner = OpFunction %main_out None %137
+ %140 = OpLabel
+ %141 = OpFunctionCall %void %main_1
+ %142 = OpLoad %v4float %x_GLF_color
+ %143 = OpCompositeConstruct %main_out %142
+ OpReturnValue %143
OpFunctionEnd
%main = OpFunction %void None %15
- %144 = OpLabel
- %145 = OpFunctionCall %void %main_1
- %147 = OpLoad %v4float %x_GLF_color
- %148 = OpCompositeConstruct %main_out %147
- %146 = OpFunctionCall %void %tint_symbol_2 %148
+ %145 = OpLabel
+ %146 = OpFunctionCall %main_out %main_inner
+ %147 = OpCompositeExtract %v4float %146 0
+ OpStore %x_GLF_color_1_1 %147
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.spvasm.expected.spvasm
index 79aef81..07421fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 120
+; Bound: 119
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_i1_ "func_struct_S_i11_i1_"
@@ -27,29 +27,28 @@
OpName %param_3 "param_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +75,7 @@
%106 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%107 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out
%func_struct_S_i11_i1_ = OpFunction %int None %12
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -179,18 +178,17 @@
%101 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %108
-%tint_symbol = OpFunctionParameter %main_out
- %112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %113
- OpReturn
+ %main_inner = OpFunction %main_out None %108
+ %111 = OpLabel
+ %112 = OpFunctionCall %void %main_1
+ %113 = OpLoad %v4float %x_GLF_color
+ %114 = OpCompositeConstruct %main_out %113
+ OpReturnValue %114
OpFunctionEnd
%main = OpFunction %void None %40
- %115 = OpLabel
- %116 = OpFunctionCall %void %main_1
- %118 = OpLoad %v4float %x_GLF_color
- %119 = OpCompositeConstruct %main_out %118
- %117 = OpFunctionCall %void %tint_symbol_2 %119
+ %116 = OpLabel
+ %117 = OpFunctionCall %main_out %main_inner
+ %118 = OpCompositeExtract %v4float %117 0
+ OpStore %x_GLF_color_1_1 %118
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.wgsl.expected.spvasm
index 79aef81..07421fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-replace-copy-object/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 120
+; Bound: 119
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_i1_ "func_struct_S_i11_i1_"
@@ -27,29 +27,28 @@
OpName %param_3 "param_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_11 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_int = OpTypePointer Function %int
@@ -76,7 +75,7 @@
%106 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%107 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out
%func_struct_S_i11_i1_ = OpFunction %int None %12
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -179,18 +178,17 @@
%101 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %108
-%tint_symbol = OpFunctionParameter %main_out
- %112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %113
- OpReturn
+ %main_inner = OpFunction %main_out None %108
+ %111 = OpLabel
+ %112 = OpFunctionCall %void %main_1
+ %113 = OpLoad %v4float %x_GLF_color
+ %114 = OpCompositeConstruct %main_out %113
+ OpReturnValue %114
OpFunctionEnd
%main = OpFunction %void None %40
- %115 = OpLabel
- %116 = OpFunctionCall %void %main_1
- %118 = OpLoad %v4float %x_GLF_color
- %119 = OpCompositeConstruct %main_out %118
- %117 = OpFunctionCall %void %tint_symbol_2 %119
+ %116 = OpLabel
+ %117 = OpFunctionCall %main_out %main_inner
+ %118 = OpCompositeExtract %v4float %117 0
+ OpStore %x_GLF_color_1_1 %118
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.spvasm.expected.spvasm
index 653b0a1..8694f3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.spvasm.expected.spvasm
@@ -1,35 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -38,8 +39,6 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_5 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -96,18 +95,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %15
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.wgsl.expected.spvasm
index 653b0a1..8694f3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-after-do-while/0-opt.wgsl.expected.spvasm
@@ -1,35 +1,36 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -38,8 +39,6 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_5 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -96,18 +95,17 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %15
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.spvasm.expected.spvasm
index f165252..76d5a1d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -18,15 +20,15 @@
OpName %buf2 "buf2"
OpMemberName %buf2 0 "injectionSwitch"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -44,14 +46,16 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 2
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -59,7 +63,7 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
@@ -69,10 +73,6 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_11 = OpVariable %_ptr_Uniform_buf2 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -90,7 +90,7 @@
%v3float = OpTypeVector %float 3
%75 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %27
%30 = OpLabel
%i = OpVariable %_ptr_Function_int Function %33
@@ -149,20 +149,20 @@
OpStore %x_GLF_color %79
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %80
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %80
+%gl_FragCoord_param = OpFunctionParameter %v4float
%84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %85
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %27
- %87 = OpLabel
- %88 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %88
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_3 %92
+ %89 = OpLabel
+ %91 = OpLoad %v4float %gl_FragCoord_param_1
+ %90 = OpFunctionCall %main_out %main_inner %91
+ %92 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.wgsl.expected.spvasm
index f165252..76d5a1d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-after-first-iteration/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
@@ -18,15 +20,15 @@
OpName %buf2 "buf2"
OpMemberName %buf2 0 "injectionSwitch"
OpName %x_11 "x_11"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -44,14 +46,16 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 2
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -59,7 +63,7 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
@@ -69,10 +73,6 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_11 = OpVariable %_ptr_Uniform_buf2 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -90,7 +90,7 @@
%v3float = OpTypeVector %float 3
%75 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %27
%30 = OpLabel
%i = OpVariable %_ptr_Function_int Function %33
@@ -149,20 +149,20 @@
OpStore %x_GLF_color %79
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %80
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %80
+%gl_FragCoord_param = OpFunctionParameter %v4float
%84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %85
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %27
- %87 = OpLabel
- %88 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %88
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_3 %92
+ %89 = OpLabel
+ %91 = OpLoad %v4float %gl_FragCoord_param_1
+ %90 = OpFunctionCall %main_out %main_inner %91
+ %92 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.spvasm.expected.spvasm
index b6b2b57..41c408c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -14,7 +15,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %a "a"
@@ -22,9 +22,9 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,27 +37,26 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v2float_uint_3 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%v2float = OpTypeVector %float 2
%19 = OpTypeFunction %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -80,7 +79,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%func_ = OpFunction %v2float None %19
%22 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %25
@@ -140,18 +139,17 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %55
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.wgsl.expected.spvasm
index b6b2b57..41c408c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-return-partly-undefined-vector-from-array/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -14,7 +15,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_11 "x_11"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %v "v"
OpName %a "a"
@@ -22,9 +22,9 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,27 +37,26 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_v2float_uint_3 ArrayStride 8
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%v2float = OpTypeVector %float 2
%19 = OpTypeFunction %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -80,7 +79,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%func_ = OpFunction %v2float None %19
%22 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %25
@@ -140,18 +139,17 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %55
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.spvasm.expected.spvasm
index 504fead..1a14698 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 274
+; Bound: 273
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %a "a"
@@ -31,9 +31,9 @@
OpName %x_216_phi "x_216_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_7 ArrayStride 16
@@ -46,9 +46,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
@@ -56,18 +60,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_7
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -91,7 +90,7 @@
%int_6 = OpConstant %int 6
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %262 = OpTypeFunction %void %main_out
+ %262 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -439,18 +438,17 @@
%242 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %262
-%tint_symbol = OpFunctionParameter %main_out
- %266 = OpLabel
- %267 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %267
- OpReturn
+ %main_inner = OpFunction %main_out None %262
+ %265 = OpLabel
+ %266 = OpFunctionCall %void %main_1
+ %267 = OpLoad %v4float %x_GLF_color
+ %268 = OpCompositeConstruct %main_out %267
+ OpReturnValue %268
OpFunctionEnd
%main = OpFunction %void None %20
- %269 = OpLabel
- %270 = OpFunctionCall %void %main_1
- %272 = OpLoad %v4float %x_GLF_color
- %273 = OpCompositeConstruct %main_out %272
- %271 = OpFunctionCall %void %tint_symbol_2 %273
+ %270 = OpLabel
+ %271 = OpFunctionCall %main_out %main_inner
+ %272 = OpCompositeExtract %v4float %271 0
+ OpStore %x_GLF_color_1_1 %272
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.wgsl.expected.spvasm
index 504fead..1a14698 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops-array-access/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 274
+; Bound: 273
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %sums "sums"
OpName %a "a"
@@ -31,9 +31,9 @@
OpName %x_216_phi "x_216_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_7 ArrayStride 16
@@ -46,9 +46,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_7 = OpConstant %uint 7
@@ -56,18 +60,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_7
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -91,7 +90,7 @@
%int_6 = OpConstant %int 6
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %262 = OpTypeFunction %void %main_out
+ %262 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%sums = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -439,18 +438,17 @@
%242 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %262
-%tint_symbol = OpFunctionParameter %main_out
- %266 = OpLabel
- %267 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %267
- OpReturn
+ %main_inner = OpFunction %main_out None %262
+ %265 = OpLabel
+ %266 = OpFunctionCall %void %main_1
+ %267 = OpLoad %v4float %x_GLF_color
+ %268 = OpCompositeConstruct %main_out %267
+ OpReturnValue %268
OpFunctionEnd
%main = OpFunction %void None %20
- %269 = OpLabel
- %270 = OpFunctionCall %void %main_1
- %272 = OpLoad %v4float %x_GLF_color
- %273 = OpCompositeConstruct %main_out %272
- %271 = OpFunctionCall %void %tint_symbol_2 %273
+ %270 = OpLabel
+ %271 = OpFunctionCall %main_out %main_inner
+ %272 = OpCompositeExtract %v4float %271 0
+ OpStore %x_GLF_color_1_1 %272
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.spvasm.expected.spvasm
index 854519d..2d3e9ce 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 201
+; Bound: 200
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i0 "i0"
@@ -26,27 +26,26 @@
OpName %i9 "i9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -64,7 +63,7 @@
%187 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%188 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %189 = OpTypeFunction %void %main_out
+ %189 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -355,18 +354,17 @@
%182 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %189
-%tint_symbol = OpFunctionParameter %main_out
- %193 = OpLabel
- %194 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %194
- OpReturn
+ %main_inner = OpFunction %main_out None %189
+ %192 = OpLabel
+ %193 = OpFunctionCall %void %main_1
+ %194 = OpLoad %v4float %x_GLF_color
+ %195 = OpCompositeConstruct %main_out %194
+ OpReturnValue %195
OpFunctionEnd
%main = OpFunction %void None %12
- %196 = OpLabel
- %197 = OpFunctionCall %void %main_1
- %199 = OpLoad %v4float %x_GLF_color
- %200 = OpCompositeConstruct %main_out %199
- %198 = OpFunctionCall %void %tint_symbol_2 %200
+ %197 = OpLabel
+ %198 = OpFunctionCall %main_out %main_inner
+ %199 = OpCompositeExtract %v4float %198 0
+ OpStore %x_GLF_color_1_1 %199
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.wgsl.expected.spvasm
index 854519d..2d3e9ce 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-scaled-number-nested-loops/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 201
+; Bound: 200
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i0 "i0"
@@ -26,27 +26,26 @@
OpName %i9 "i9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -64,7 +63,7 @@
%187 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%188 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %189 = OpTypeFunction %void %main_out
+ %189 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -355,18 +354,17 @@
%182 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %189
-%tint_symbol = OpFunctionParameter %main_out
- %193 = OpLabel
- %194 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %194
- OpReturn
+ %main_inner = OpFunction %main_out None %189
+ %192 = OpLabel
+ %193 = OpFunctionCall %void %main_1
+ %194 = OpLoad %v4float %x_GLF_color
+ %195 = OpCompositeConstruct %main_out %194
+ OpReturnValue %195
OpFunctionEnd
%main = OpFunction %void None %12
- %196 = OpLabel
- %197 = OpFunctionCall %void %main_1
- %199 = OpLoad %v4float %x_GLF_color
- %200 = OpCompositeConstruct %main_out %199
- %198 = OpFunctionCall %void %tint_symbol_2 %200
+ %197 = OpLabel
+ %198 = OpFunctionCall %main_out %main_inner
+ %199 = OpCompositeExtract %v4float %198 0
+ OpStore %x_GLF_color_1_1 %199
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.spvasm.expected.spvasm
index f34e73c..9b76f3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
%44 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,30 +20,29 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
%buf0 = OpTypeStruct %_arr_float_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -60,7 +59,7 @@
%int_1 = OpConstant %int 1
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -120,18 +119,17 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %14
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.wgsl.expected.spvasm
index f34e73c..9b76f3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-schedule-dag-rrlist-mix-log-cos/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
%44 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -20,30 +20,29 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
%buf0 = OpTypeStruct %_arr_float_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -60,7 +59,7 @@
%int_1 = OpConstant %int 1
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -120,18 +119,17 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %14
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.spvasm.expected.spvasm
index 47829d0..87a8b88 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.spvasm.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -51,7 +50,7 @@
%float_0 = OpConstant %float 0
%40 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %42 = OpTypeFunction %void %main_out
+ %42 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -76,18 +75,17 @@
OpStore %x_GLF_color %41
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %42
-%tint_symbol = OpFunctionParameter %main_out
- %46 = OpLabel
- %47 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %47
- OpReturn
+ %main_inner = OpFunction %main_out None %42
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %main_1
+ %47 = OpLoad %v4float %x_GLF_color
+ %48 = OpCompositeConstruct %main_out %47
+ OpReturnValue %48
OpFunctionEnd
%main = OpFunction %void None %15
- %49 = OpLabel
- %50 = OpFunctionCall %void %main_1
- %52 = OpLoad %v4float %x_GLF_color
- %53 = OpCompositeConstruct %main_out %52
- %51 = OpFunctionCall %void %tint_symbol_2 %53
+ %50 = OpLabel
+ %51 = OpFunctionCall %main_out %main_inner
+ %52 = OpCompositeExtract %v4float %51 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.wgsl.expected.spvasm
index 47829d0..87a8b88 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-assign-back-and-forth/0-opt.wgsl.expected.spvasm
@@ -1,36 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 54
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
@@ -39,8 +40,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -51,7 +50,7 @@
%float_0 = OpConstant %float 0
%40 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %42 = OpTypeFunction %void %main_out
+ %42 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%v = OpVariable %_ptr_Function_v4float Function %5
@@ -76,18 +75,17 @@
OpStore %x_GLF_color %41
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %42
-%tint_symbol = OpFunctionParameter %main_out
- %46 = OpLabel
- %47 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %47
- OpReturn
+ %main_inner = OpFunction %main_out None %42
+ %45 = OpLabel
+ %46 = OpFunctionCall %void %main_1
+ %47 = OpLoad %v4float %x_GLF_color
+ %48 = OpCompositeConstruct %main_out %47
+ OpReturnValue %48
OpFunctionEnd
%main = OpFunction %void None %15
- %49 = OpLabel
- %50 = OpFunctionCall %void %main_1
- %52 = OpLoad %v4float %x_GLF_color
- %53 = OpCompositeConstruct %main_out %52
- %51 = OpFunctionCall %void %tint_symbol_2 %53
+ %50 = OpLabel
+ %51 = OpFunctionCall %main_out %main_inner
+ %52 = OpCompositeExtract %v4float %51 0
+ OpStore %x_GLF_color_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.spvasm.expected.spvasm
index a8d0f90..3b81250 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 87
+; Bound: 86
; Schema: 0
OpCapability Shader
%47 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %c "c"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%int_3 = OpConstant %int 3
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %75 = OpTypeFunction %void %main_out
+ %75 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_int Function %21
@@ -125,18 +124,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %75
-%tint_symbol = OpFunctionParameter %main_out
- %79 = OpLabel
- %80 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %80
- OpReturn
+ %main_inner = OpFunction %main_out None %75
+ %78 = OpLabel
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %15
- %82 = OpLabel
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_2 %86
+ %83 = OpLabel
+ %84 = OpFunctionCall %main_out %main_inner
+ %85 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.wgsl.expected.spvasm
index a8d0f90..3b81250 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-inverse-clamp/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 87
+; Bound: 86
; Schema: 0
OpCapability Shader
%47 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %c "c"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -55,7 +54,7 @@
%int_3 = OpConstant %int 3
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %75 = OpTypeFunction %void %main_out
+ %75 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_int Function %21
@@ -125,18 +124,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %75
-%tint_symbol = OpFunctionParameter %main_out
- %79 = OpLabel
- %80 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %80
- OpReturn
+ %main_inner = OpFunction %main_out None %75
+ %78 = OpLabel
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %15
- %82 = OpLabel
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_2 %86
+ %83 = OpLabel
+ %84 = OpFunctionCall %main_out %main_inner
+ %85 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %85
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.spvasm.expected.spvasm
index 77d773f..142fdab 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_5 "x_5"
@@ -14,13 +15,12 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_5 NonWritable
@@ -32,17 +32,18 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_5 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -50,8 +51,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +61,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%25 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_0
@@ -113,18 +112,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %19
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.wgsl.expected.spvasm
index 77d773f..142fdab 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-lt-gt/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 78
+; Bound: 77
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_5 "x_5"
@@ -14,13 +15,12 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_5 NonWritable
@@ -32,17 +32,18 @@
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_5 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -50,8 +51,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
%void = OpTypeVoid
%19 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -62,7 +61,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %66 = OpTypeFunction %void %main_out
+ %66 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%25 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_0
@@ -113,18 +112,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %66
-%tint_symbol = OpFunctionParameter %main_out
- %70 = OpLabel
- %71 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %71
- OpReturn
+ %main_inner = OpFunction %main_out None %66
+ %69 = OpLabel
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %19
- %73 = OpLabel
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_2 %77
+ %74 = OpLabel
+ %75 = OpFunctionCall %main_out %main_inner
+ %76 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %76
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.spvasm.expected.spvasm
index 7708f0f..da3ef5d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_29 "x_29"
OpName %x_30_phi "x_30_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%39 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%40 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_29 = OpVariable %_ptr_Function_bool Function %18
@@ -84,18 +83,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %11
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.wgsl.expected.spvasm
index 7708f0f..da3ef5d 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-selection-dag-same-cond-twice/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_29 "x_29"
OpName %x_30_phi "x_30_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -51,7 +50,7 @@
%39 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%40 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_29 = OpVariable %_ptr_Function_bool Function %18
@@ -84,18 +83,17 @@
%35 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %11
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.spvasm.expected.spvasm
index 5769859..51bbad6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 136
+; Bound: 135
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_74 "x_74"
@@ -29,17 +29,21 @@
OpName %x_57 "x_57"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -47,13 +51,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -74,22 +73,22 @@
%v4bool = OpTypeVector %bool 4
%int_5 = OpConstant %int 5
%main_out = OpTypeStruct %v4float
- %124 = OpTypeFunction %void %main_out
+ %124 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_36 = OpVariable %_ptr_Function_int Function %21
%x_74 = OpVariable %_ptr_Function_bool Function %25
- %x_33_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_33_phi = OpVariable %_ptr_Function_v4float Function %5
%x_36_phi = OpVariable %_ptr_Function_int Function %21
%x_38_phi = OpVariable %_ptr_Function_int Function %21
%x_75_phi = OpVariable %_ptr_Function_bool Function %25
- %x_53 = OpVariable %_ptr_Function_v4float Function %12
+ %x_53 = OpVariable %_ptr_Function_v4float Function %5
%x_39 = OpVariable %_ptr_Function_int Function %21
- %x_34_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_34_phi = OpVariable %_ptr_Function_v4float Function %5
%x_62_phi = OpVariable %_ptr_Function_int Function %21
- %x_53_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_53_phi = OpVariable %_ptr_Function_v4float Function %5
%x_56_phi = OpVariable %_ptr_Function_int Function %21
- %x_54 = OpVariable %_ptr_Function_v4float Function %12
+ %x_54 = OpVariable %_ptr_Function_v4float Function %5
%x_57 = OpVariable %_ptr_Function_int Function %21
%34 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
%35 = OpLoad %int %34
@@ -223,18 +222,17 @@
%116 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %124
-%tint_symbol = OpFunctionParameter %main_out
- %128 = OpLabel
- %129 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %129
- OpReturn
+ %main_inner = OpFunction %main_out None %124
+ %127 = OpLabel
+ %128 = OpFunctionCall %void %main_1
+ %129 = OpLoad %v4float %x_GLF_color
+ %130 = OpCompositeConstruct %main_out %129
+ OpReturnValue %130
OpFunctionEnd
%main = OpFunction %void None %15
- %131 = OpLabel
- %132 = OpFunctionCall %void %main_1
- %134 = OpLoad %v4float %x_GLF_color
- %135 = OpCompositeConstruct %main_out %134
- %133 = OpFunctionCall %void %tint_symbol_2 %135
+ %132 = OpLabel
+ %133 = OpFunctionCall %main_out %main_inner
+ %134 = OpCompositeExtract %v4float %133 0
+ OpStore %x_GLF_color_1_1 %134
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.wgsl.expected.spvasm
index 5769859..51bbad6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-set-output-color-function-call-nested-loop/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 136
+; Bound: 135
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_74 "x_74"
@@ -29,17 +29,21 @@
OpName %x_57 "x_57"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_6 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_6 = OpConstant %uint 6
@@ -47,13 +51,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_6
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -74,22 +73,22 @@
%v4bool = OpTypeVector %bool 4
%int_5 = OpConstant %int 5
%main_out = OpTypeStruct %v4float
- %124 = OpTypeFunction %void %main_out
+ %124 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_36 = OpVariable %_ptr_Function_int Function %21
%x_74 = OpVariable %_ptr_Function_bool Function %25
- %x_33_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_33_phi = OpVariable %_ptr_Function_v4float Function %5
%x_36_phi = OpVariable %_ptr_Function_int Function %21
%x_38_phi = OpVariable %_ptr_Function_int Function %21
%x_75_phi = OpVariable %_ptr_Function_bool Function %25
- %x_53 = OpVariable %_ptr_Function_v4float Function %12
+ %x_53 = OpVariable %_ptr_Function_v4float Function %5
%x_39 = OpVariable %_ptr_Function_int Function %21
- %x_34_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_34_phi = OpVariable %_ptr_Function_v4float Function %5
%x_62_phi = OpVariable %_ptr_Function_int Function %21
- %x_53_phi = OpVariable %_ptr_Function_v4float Function %12
+ %x_53_phi = OpVariable %_ptr_Function_v4float Function %5
%x_56_phi = OpVariable %_ptr_Function_int Function %21
- %x_54 = OpVariable %_ptr_Function_v4float Function %12
+ %x_54 = OpVariable %_ptr_Function_v4float Function %5
%x_57 = OpVariable %_ptr_Function_int Function %21
%34 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
%35 = OpLoad %int %34
@@ -223,18 +222,17 @@
%116 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %124
-%tint_symbol = OpFunctionParameter %main_out
- %128 = OpLabel
- %129 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %129
- OpReturn
+ %main_inner = OpFunction %main_out None %124
+ %127 = OpLabel
+ %128 = OpFunctionCall %void %main_1
+ %129 = OpLoad %v4float %x_GLF_color
+ %130 = OpCompositeConstruct %main_out %129
+ OpReturnValue %130
OpFunctionEnd
%main = OpFunction %void None %15
- %131 = OpLabel
- %132 = OpFunctionCall %void %main_1
- %134 = OpLoad %v4float %x_GLF_color
- %135 = OpCompositeConstruct %main_out %134
- %133 = OpFunctionCall %void %tint_symbol_2 %135
+ %132 = OpLabel
+ %133 = OpFunctionCall %main_out %main_inner
+ %134 = OpCompositeExtract %v4float %133 0
+ OpStore %x_GLF_color_1_1 %134
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.spvasm.expected.spvasm
index f4d0f97..33703b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%76 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -24,30 +24,30 @@
OpName %x_112_phi "x_112_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -89,7 +89,7 @@
%127 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%128 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %21
@@ -210,20 +210,20 @@
%124 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %129
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %129
+%gl_FragCoord_param = OpFunctionParameter %v4float
%133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %134
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %134 = OpFunctionCall %void %main_1
+ %135 = OpLoad %v4float %x_GLF_color
+ %136 = OpCompositeConstruct %main_out %135
+ OpReturnValue %136
OpFunctionEnd
%main = OpFunction %void None %14
- %136 = OpLabel
- %137 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %137
- %138 = OpFunctionCall %void %main_1
- %140 = OpLoad %v4float %x_GLF_color
- %141 = OpCompositeConstruct %main_out %140
- %139 = OpFunctionCall %void %tint_symbol_3 %141
+ %138 = OpLabel
+ %140 = OpLoad %v4float %gl_FragCoord_param_1
+ %139 = OpFunctionCall %main_out %main_inner %140
+ %141 = OpCompositeExtract %v4float %139 0
+ OpStore %x_GLF_color_1_1 %141
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.wgsl.expected.spvasm
index f4d0f97..33703b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-set-vector-cos-fragcoord/0-opt.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%76 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
@@ -24,30 +24,30 @@
OpName %x_112_phi "x_112_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -89,7 +89,7 @@
%127 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%128 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %21
@@ -210,20 +210,20 @@
%124 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %129
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %129
+%gl_FragCoord_param = OpFunctionParameter %v4float
%133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %134
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %134 = OpFunctionCall %void %main_1
+ %135 = OpLoad %v4float %x_GLF_color
+ %136 = OpCompositeConstruct %main_out %135
+ OpReturnValue %136
OpFunctionEnd
%main = OpFunction %void None %14
- %136 = OpLabel
- %137 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %137
- %138 = OpFunctionCall %void %main_1
- %140 = OpLoad %v4float %x_GLF_color
- %141 = OpCompositeConstruct %main_out %140
- %139 = OpFunctionCall %void %tint_symbol_3 %141
+ %138 = OpLabel
+ %140 = OpLoad %v4float %gl_FragCoord_param_1
+ %139 = OpFunctionCall %main_out %main_inner %140
+ %141 = OpCompositeExtract %v4float %139 0
+ OpStore %x_GLF_color_1_1 %141
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.spvasm.expected.spvasm
index 7b4e7d4..03e981e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 119
+; Bound: 118
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "arr"
OpName %func_struct_S_i1_2_1_i1_ "func_struct_S_i1_2_1_i1_"
@@ -26,29 +26,28 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
@@ -74,7 +73,7 @@
%105 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%106 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %107 = OpTypeFunction %void %main_out
+ %107 = OpTypeFunction %main_out
%func_struct_S_i1_2_1_i1_ = OpFunction %int None %12
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -179,18 +178,17 @@
%100 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %107
-%tint_symbol = OpFunctionParameter %main_out
- %111 = OpLabel
- %112 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %112
- OpReturn
+ %main_inner = OpFunction %main_out None %107
+ %110 = OpLabel
+ %111 = OpFunctionCall %void %main_1
+ %112 = OpLoad %v4float %x_GLF_color
+ %113 = OpCompositeConstruct %main_out %112
+ OpReturnValue %113
OpFunctionEnd
%main = OpFunction %void None %45
- %114 = OpLabel
- %115 = OpFunctionCall %void %main_1
- %117 = OpLoad %v4float %x_GLF_color
- %118 = OpCompositeConstruct %main_out %117
- %116 = OpFunctionCall %void %tint_symbol_2 %118
+ %115 = OpLabel
+ %116 = OpFunctionCall %main_out %main_inner
+ %117 = OpCompositeExtract %v4float %116 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.wgsl.expected.spvasm
index 7b4e7d4..03e981e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplification-unused-struct/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 119
+; Bound: 118
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "arr"
OpName %func_struct_S_i1_2_1_i1_ "func_struct_S_i1_2_1_i1_"
@@ -26,29 +26,28 @@
OpName %param_1 "param_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
@@ -74,7 +73,7 @@
%105 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%106 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %107 = OpTypeFunction %void %main_out
+ %107 = OpTypeFunction %main_out
%func_struct_S_i1_2_1_i1_ = OpFunction %int None %12
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -179,18 +178,17 @@
%100 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %107
-%tint_symbol = OpFunctionParameter %main_out
- %111 = OpLabel
- %112 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %112
- OpReturn
+ %main_inner = OpFunction %main_out None %107
+ %110 = OpLabel
+ %111 = OpFunctionCall %void %main_1
+ %112 = OpLoad %v4float %x_GLF_color
+ %113 = OpCompositeConstruct %main_out %112
+ OpReturnValue %113
OpFunctionEnd
%main = OpFunction %void None %45
- %114 = OpLabel
- %115 = OpFunctionCall %void %main_1
- %117 = OpLoad %v4float %x_GLF_color
- %118 = OpCompositeConstruct %main_out %117
- %116 = OpFunctionCall %void %tint_symbol_2 %118
+ %115 = OpLabel
+ %116 = OpFunctionCall %main_out %main_inner
+ %117 = OpCompositeExtract %v4float %116 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.spvasm.expected.spvasm
index b390aed..f089588 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
@@ -14,15 +15,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "zero"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -33,12 +33,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
@@ -47,8 +48,6 @@
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -69,7 +68,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -128,18 +127,17 @@
OpStore %66 %64
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.wgsl.expected.spvasm
index b390aed..f089588 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplification-while-inside-for/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
@@ -14,15 +15,14 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "zero"
OpName %x_9 "x_9"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -33,12 +33,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
@@ -47,8 +48,6 @@
%buf1 = OpTypeStruct %int
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -69,7 +68,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -128,18 +127,17 @@
OpStore %66 %64
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %15
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.spvasm.expected.spvasm
index ff2c207..34db9d1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.spvasm.expected.spvasm
@@ -1,46 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 99
+; Bound: 98
; Schema: 0
OpCapability Shader
%49 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "sequence"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %sum "sum"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%buf0 = OpTypeStruct %v4int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %10 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %10
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %10
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_v4int = OpTypePointer Function %v4int
@@ -64,7 +63,7 @@
%85 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%86 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %87 = OpTypeFunction %void %main_out
+ %87 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
%a = OpVariable %_ptr_Function_v4int Function %19
@@ -143,18 +142,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %87
-%tint_symbol = OpFunctionParameter %main_out
- %91 = OpLabel
- %92 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %92
- OpReturn
+ %main_inner = OpFunction %main_out None %87
+ %90 = OpLabel
+ %91 = OpFunctionCall %void %main_1
+ %92 = OpLoad %v4float %x_GLF_color
+ %93 = OpCompositeConstruct %main_out %92
+ OpReturnValue %93
OpFunctionEnd
%main = OpFunction %void None %13
- %94 = OpLabel
- %95 = OpFunctionCall %void %main_1
- %97 = OpLoad %v4float %x_GLF_color
- %98 = OpCompositeConstruct %main_out %97
- %96 = OpFunctionCall %void %tint_symbol_2 %98
+ %95 = OpLabel
+ %96 = OpFunctionCall %main_out %main_inner
+ %97 = OpCompositeExtract %v4float %96 0
+ OpStore %x_GLF_color_1_1 %97
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.wgsl.expected.spvasm
index ff2c207..34db9d1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-clamp-max-itself/0-opt.wgsl.expected.spvasm
@@ -1,46 +1,45 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 99
+; Bound: 98
; Schema: 0
OpCapability Shader
%49 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "sequence"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %sum "sum"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%buf0 = OpTypeStruct %v4int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %10 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %10
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %10
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%13 = OpTypeFunction %void
%_ptr_Function_v4int = OpTypePointer Function %v4int
@@ -64,7 +63,7 @@
%85 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%86 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %87 = OpTypeFunction %void %main_out
+ %87 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
%a = OpVariable %_ptr_Function_v4int Function %19
@@ -143,18 +142,17 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %87
-%tint_symbol = OpFunctionParameter %main_out
- %91 = OpLabel
- %92 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %92
- OpReturn
+ %main_inner = OpFunction %main_out None %87
+ %90 = OpLabel
+ %91 = OpFunctionCall %void %main_1
+ %92 = OpLoad %v4float %x_GLF_color
+ %93 = OpCompositeConstruct %main_out %92
+ OpReturnValue %93
OpFunctionEnd
%main = OpFunction %void None %13
- %94 = OpLabel
- %95 = OpFunctionCall %void %main_1
- %97 = OpLoad %v4float %x_GLF_color
- %98 = OpCompositeConstruct %main_out %97
- %96 = OpFunctionCall %void %tint_symbol_2 %98
+ %95 = OpLabel
+ %96 = OpFunctionCall %main_out %main_inner
+ %97 = OpCompositeExtract %v4float %96 0
+ OpStore %x_GLF_color_1_1 %97
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.spvasm.expected.spvasm
index d91ccbe..72aee85 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.wgsl.expected.spvasm
index d91ccbe..72aee85 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-combine-compares-max-max-one/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
%30 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -92,18 +91,17 @@
%38 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.spvasm.expected.spvasm
index e78b606..d4230f8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,7 +58,7 @@
%60 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%61 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -111,18 +110,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %12
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.wgsl.expected.spvasm
index e78b606..d4230f8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-component-uniform-idx/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 74
+; Bound: 73
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %r "r"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,7 +58,7 @@
%60 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%61 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %62 = OpTypeFunction %void %main_out
+ %62 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -111,18 +110,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %62
-%tint_symbol = OpFunctionParameter %main_out
- %66 = OpLabel
- %67 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %67
- OpReturn
+ %main_inner = OpFunction %main_out None %62
+ %65 = OpLabel
+ %66 = OpFunctionCall %void %main_1
+ %67 = OpLoad %v4float %x_GLF_color
+ %68 = OpCompositeConstruct %main_out %67
+ OpReturnValue %68
OpFunctionEnd
%main = OpFunction %void None %12
- %69 = OpLabel
- %70 = OpFunctionCall %void %main_1
- %72 = OpLoad %v4float %x_GLF_color
- %73 = OpCompositeConstruct %main_out %72
- %71 = OpFunctionCall %void %tint_symbol_2 %73
+ %70 = OpLabel
+ %71 = OpFunctionCall %main_out %main_inner
+ %72 = OpCompositeExtract %v4float %71 0
+ OpStore %x_GLF_color_1_1 %72
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.spvasm.expected.spvasm
index 68fb1d7..63344c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%buf0 = OpTypeStruct %uint
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -51,7 +50,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %36 = OpTypeFunction %void %main_out
+ %36 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %18
@@ -72,18 +71,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %main_out
- %40 = OpLabel
- %41 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %41
- OpReturn
+ %main_inner = OpFunction %main_out None %36
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %main_1
+ %41 = OpLoad %v4float %x_GLF_color
+ %42 = OpCompositeConstruct %main_out %41
+ OpReturnValue %42
OpFunctionEnd
%main = OpFunction %void None %12
- %43 = OpLabel
- %44 = OpFunctionCall %void %main_1
- %46 = OpLoad %v4float %x_GLF_color
- %47 = OpCompositeConstruct %main_out %46
- %45 = OpFunctionCall %void %tint_symbol_2 %47
+ %44 = OpLabel
+ %45 = OpFunctionCall %main_out %main_inner
+ %46 = OpCompositeExtract %v4float %45 0
+ OpStore %x_GLF_color_1_1 %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.wgsl.expected.spvasm
index 68fb1d7..63344c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-div-by-uint-one/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 48
+; Bound: 47
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%buf0 = OpTypeStruct %uint
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -51,7 +50,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %36 = OpTypeFunction %void %main_out
+ %36 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %18
@@ -72,18 +71,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %36
-%tint_symbol = OpFunctionParameter %main_out
- %40 = OpLabel
- %41 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %41
- OpReturn
+ %main_inner = OpFunction %main_out None %36
+ %39 = OpLabel
+ %40 = OpFunctionCall %void %main_1
+ %41 = OpLoad %v4float %x_GLF_color
+ %42 = OpCompositeConstruct %main_out %41
+ OpReturnValue %42
OpFunctionEnd
%main = OpFunction %void None %12
- %43 = OpLabel
- %44 = OpFunctionCall %void %main_1
- %46 = OpLoad %v4float %x_GLF_color
- %47 = OpCompositeConstruct %main_out %46
- %45 = OpFunctionCall %void %tint_symbol_2 %47
+ %44 = OpLabel
+ %45 = OpFunctionCall %main_out %main_inner
+ %46 = OpCompositeExtract %v4float %45 0
+ OpStore %x_GLF_color_1_1 %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.spvasm.expected.spvasm
index fb9d73a..442a5a1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -127,18 +126,17 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.wgsl.expected.spvasm
index fb9d73a..442a5a1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-for-bitwise-condition/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%int_0 = OpConstant %int 0
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -127,18 +126,17 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %15
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.spvasm.expected.spvasm
index d6a625f..9387060 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -74,18 +73,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.wgsl.expected.spvasm
index d6a625f..9387060 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-ldexp-exponent-zero/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -53,7 +52,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%f = OpVariable %_ptr_Function_float Function %17
@@ -74,18 +73,17 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.spvasm.expected.spvasm
index a003ea9..545f9e7 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 146
+; Bound: 145
; Schema: 0
OpCapability Shader
%65 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %A "A"
@@ -24,18 +24,22 @@
OpName %x_98_phi "x_98_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_4 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -71,7 +70,7 @@
%float_1 = OpConstant %float 1
%133 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %134 = OpTypeFunction %void %main_out
+ %134 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -212,18 +211,17 @@
%116 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %134
-%tint_symbol = OpFunctionParameter %main_out
- %138 = OpLabel
- %139 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %139
- OpReturn
+ %main_inner = OpFunction %main_out None %134
+ %137 = OpLabel
+ %138 = OpFunctionCall %void %main_1
+ %139 = OpLoad %v4float %x_GLF_color
+ %140 = OpCompositeConstruct %main_out %139
+ OpReturnValue %140
OpFunctionEnd
%main = OpFunction %void None %15
- %141 = OpLabel
- %142 = OpFunctionCall %void %main_1
- %144 = OpLoad %v4float %x_GLF_color
- %145 = OpCompositeConstruct %main_out %144
- %143 = OpFunctionCall %void %tint_symbol_2 %145
+ %142 = OpLabel
+ %143 = OpFunctionCall %main_out %main_inner
+ %144 = OpCompositeExtract %v4float %143 0
+ OpStore %x_GLF_color_1_1 %144
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.wgsl.expected.spvasm
index a003ea9..545f9e7 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-max-multiplied-values/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 146
+; Bound: 145
; Schema: 0
OpCapability Shader
%65 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %A "A"
@@ -24,18 +24,22 @@
OpName %x_98_phi "x_98_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_5 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_4 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -71,7 +70,7 @@
%float_1 = OpConstant %float 1
%133 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %134 = OpTypeFunction %void %main_out
+ %134 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -212,18 +211,17 @@
%116 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %134
-%tint_symbol = OpFunctionParameter %main_out
- %138 = OpLabel
- %139 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %139
- OpReturn
+ %main_inner = OpFunction %main_out None %134
+ %137 = OpLabel
+ %138 = OpFunctionCall %void %main_1
+ %139 = OpLoad %v4float %x_GLF_color
+ %140 = OpCompositeConstruct %main_out %139
+ OpReturnValue %140
OpFunctionEnd
%main = OpFunction %void None %15
- %141 = OpLabel
- %142 = OpFunctionCall %void %main_1
- %144 = OpLoad %v4float %x_GLF_color
- %145 = OpCompositeConstruct %main_out %144
- %143 = OpFunctionCall %void %tint_symbol_2 %145
+ %142 = OpLabel
+ %143 = OpFunctionCall %main_out %main_inner
+ %144 = OpCompositeExtract %v4float %143 0
+ OpStore %x_GLF_color_1_1 %144
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.spvasm.expected.spvasm
index d891a6e..672cc23 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,14 +16,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -35,27 +35,26 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf1 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -67,7 +66,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -104,18 +103,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %20
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.wgsl.expected.spvasm
index a904efa..84c77ba 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-modulo-1/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,14 +15,13 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -34,27 +34,26 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf0 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %11 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %11
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_1 = OpConstant %uint 1
%_arr_int_uint_1 = OpTypeArray %int %uint_1
%buf1 = OpTypeStruct %_arr_int_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -66,7 +65,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%a = OpVariable %_ptr_Function_float Function %26
@@ -100,18 +99,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %20
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.spvasm.expected.spvasm
index 4cc9182..144e579 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %res "res"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -56,11 +55,11 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %v = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
OpStore %v %22
%26 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0
%27 = OpLoad %float %26
@@ -87,18 +86,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.wgsl.expected.spvasm
index 4cc9182..144e579 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-mul-identity/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
%40 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %res "res"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -56,11 +55,11 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %8
- %res = OpVariable %_ptr_Function_v4float Function %8
+ %v = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %5
OpStore %v %22
%26 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0
%27 = OpLoad %float %26
@@ -87,18 +86,17 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %11
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.spvasm.expected.spvasm
index 843780c..569ffc6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.spvasm.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37_phi "x_37_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -61,7 +61,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %22
@@ -94,20 +94,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %49
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %49
+%gl_FragCoord_param = OpFunctionParameter %v4float
%53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %54
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %15
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %57
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_3 %61
+ %58 = OpLabel
+ %60 = OpLoad %v4float %gl_FragCoord_param_1
+ %59 = OpFunctionCall %main_out %main_inner %60
+ %61 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.wgsl.expected.spvasm
index 843780c..569ffc6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-not-less-than-neg/0.wgsl.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "three"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37_phi "x_37_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -61,7 +61,7 @@
%47 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%48 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %22
@@ -94,20 +94,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %49
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %49
+%gl_FragCoord_param = OpFunctionParameter %v4float
%53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %54
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %15
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %57
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_3 %61
+ %58 = OpLabel
+ %60 = OpLoad %v4float %gl_FragCoord_param_1
+ %59 = OpFunctionCall %main_out %main_inner %60
+ %61 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.spvasm.expected.spvasm
index 599a2ed..c892aaa 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -33,13 +37,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -84,18 +83,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %15
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.wgsl.expected.spvasm
index 599a2ed..c892aaa 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-right-shift-greater-than-zero/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,35 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -33,13 +37,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -48,7 +47,7 @@
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_int %x_5 %uint_0 %int_0
@@ -84,18 +83,17 @@
%29 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %15
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.spvasm.expected.spvasm
index abf3dc1..de4a4bc 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
%22 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_31 "x_31"
OpName %x_32_phi "x_32_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -54,7 +53,7 @@
%43 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%44 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_31 = OpVariable %_ptr_Function_bool Function %19
@@ -87,18 +86,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %12
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.wgsl.expected.spvasm
index abf3dc1..de4a4bc 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-sign-cosh/0.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
%22 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_31 "x_31"
OpName %x_32_phi "x_32_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -54,7 +53,7 @@
%43 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%44 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_31 = OpVariable %_ptr_Function_bool Function %19
@@ -87,18 +86,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %12
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.spvasm.expected.spvasm
index d020f59..225383a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.spvasm.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_49 "x_49"
OpName %x_50_phi "x_50_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -62,7 +62,7 @@
%63 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%64 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%f = OpVariable %_ptr_Function_float Function %20
@@ -121,20 +121,20 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %14
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.wgsl.expected.spvasm
index 482cbf2..5e2138f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-simplify-smoothstep-undef/0-opt.wgsl.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %x_49 "x_49"
OpName %x_50_phi "x_50_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -62,7 +62,7 @@
%63 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%64 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%f = OpVariable %_ptr_Function_float Function %20
@@ -121,20 +121,20 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %14
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.spvasm.expected.spvasm
index f217e59..5665b3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%85 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f1_vf2_ "f1_vf2_"
OpName %v1 "v1"
OpName %x_99 "x_99"
@@ -28,9 +28,9 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -57,12 +60,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %int %_ptr_Function_v2float
@@ -85,7 +84,7 @@
%_ptr_Function_int = OpTypePointer Function %int
%72 = OpConstantNull %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%f1_vf2_ = OpFunction %int None %19
%v1 = OpFunctionParameter %_ptr_Function_v2float
%24 = OpLabel
@@ -185,18 +184,17 @@
%103 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %59
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.wgsl.expected.spvasm
index f217e59..5665b3a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sin-mul-mat-mat-mul-vec-mat/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%85 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f1_vf2_ "f1_vf2_"
OpName %v1 "v1"
OpName %x_99 "x_99"
@@ -28,9 +28,9 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -57,12 +60,8 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %int %_ptr_Function_v2float
@@ -85,7 +84,7 @@
%_ptr_Function_int = OpTypePointer Function %int
%72 = OpConstantNull %int
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%f1_vf2_ = OpFunction %int None %19
%v1 = OpFunctionParameter %_ptr_Function_v2float
%24 = OpLabel
@@ -185,18 +184,17 @@
%103 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %59
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.spvasm.expected.spvasm
index e43ed3b..b68b113 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.spvasm.expected.spvasm
@@ -1,47 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %g "g"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %g = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+ %g = OpVariable %_ptr_Private_int Private %9
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%16 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,10 +58,10 @@
%69 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%70 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %16
%19 = OpLabel
- %a = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
OpStore %g %int_0
OpBranch %23
%23 = OpLabel
@@ -130,18 +129,17 @@
%64 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %16
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.wgsl.expected.spvasm
index e43ed3b..b68b113 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-single-block-elim-self-assign/0-opt.wgsl.expected.spvasm
@@ -1,47 +1,46 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 83
+; Bound: 82
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %g "g"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %4 = OpConstantNull %int
- %g = OpVariable %_ptr_Private_int Private %4
- %float = OpTypeFloat 32
+ %9 = OpConstantNull %int
+ %g = OpVariable %_ptr_Private_int Private %9
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%16 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -59,10 +58,10 @@
%69 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%70 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %71 = OpTypeFunction %void %main_out
+ %71 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %16
%19 = OpLabel
- %a = OpVariable %_ptr_Function_int Function %4
+ %a = OpVariable %_ptr_Function_int Function %9
OpStore %g %int_0
OpBranch %23
%23 = OpLabel
@@ -130,18 +129,17 @@
%64 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %71
-%tint_symbol = OpFunctionParameter %main_out
- %75 = OpLabel
- %76 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %76
- OpReturn
+ %main_inner = OpFunction %main_out None %71
+ %74 = OpLabel
+ %75 = OpFunctionCall %void %main_1
+ %76 = OpLoad %v4float %x_GLF_color
+ %77 = OpCompositeConstruct %main_out %76
+ OpReturnValue %77
OpFunctionEnd
%main = OpFunction %void None %16
- %78 = OpLabel
- %79 = OpFunctionCall %void %main_1
- %81 = OpLoad %v4float %x_GLF_color
- %82 = OpCompositeConstruct %main_out %81
- %80 = OpFunctionCall %void %tint_symbol_2 %82
+ %79 = OpLabel
+ %80 = OpFunctionCall %main_out %main_inner
+ %81 = OpCompositeExtract %v4float %80 0
+ OpStore %x_GLF_color_1_1 %81
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.spvasm.expected.spvasm
index 7cba6b7..0bb051b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
%47 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
@@ -24,9 +24,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -39,9 +39,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -82,7 +81,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %27
@@ -157,18 +156,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %20
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.wgsl.expected.spvasm
index 7cba6b7..0bb051b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sinh-ldexp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 110
+; Bound: 109
; Schema: 0
OpCapability Shader
%47 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
@@ -24,9 +24,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_4 ArrayStride 16
@@ -39,9 +39,12 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
%_arr_float_uint_4 = OpTypeArray %float %uint_4
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -82,7 +81,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %98 = OpTypeFunction %void %main_out
+ %98 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %27
@@ -157,18 +156,17 @@
%78 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %98
-%tint_symbol = OpFunctionParameter %main_out
- %102 = OpLabel
- %103 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %103
- OpReturn
+ %main_inner = OpFunction %main_out None %98
+ %101 = OpLabel
+ %102 = OpFunctionCall %void %main_1
+ %103 = OpLoad %v4float %x_GLF_color
+ %104 = OpCompositeConstruct %main_out %103
+ OpReturnValue %104
OpFunctionEnd
%main = OpFunction %void None %20
- %105 = OpLabel
- %106 = OpFunctionCall %void %main_1
- %108 = OpLoad %v4float %x_GLF_color
- %109 = OpCompositeConstruct %main_out %108
- %107 = OpFunctionCall %void %tint_symbol_2 %109
+ %106 = OpLabel
+ %107 = OpFunctionCall %main_out %main_inner
+ %108 = OpCompositeExtract %v4float %107 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.spvasm.expected.spvasm
index c8ef50f..16c3575 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %v4float
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
@@ -56,7 +55,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%func_ = OpFunction %v4float None %12
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0
@@ -115,18 +114,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %30
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.wgsl.expected.spvasm
index c8ef50f..16c3575 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-ssa-rewrite-case-with-default/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 72
+; Bound: 71
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %v4float
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
@@ -56,7 +55,7 @@
%uint_1 = OpConstant %uint 1
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %60 = OpTypeFunction %void %main_out
+ %60 = OpTypeFunction %main_out
%func_ = OpFunction %v4float None %12
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0
@@ -115,18 +114,17 @@
%39 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %60
-%tint_symbol = OpFunctionParameter %main_out
- %64 = OpLabel
- %65 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %65
- OpReturn
+ %main_inner = OpFunction %main_out None %60
+ %63 = OpLabel
+ %64 = OpFunctionCall %void %main_1
+ %65 = OpLoad %v4float %x_GLF_color
+ %66 = OpCompositeConstruct %main_out %65
+ OpReturnValue %66
OpFunctionEnd
%main = OpFunction %void None %30
- %67 = OpLabel
- %68 = OpFunctionCall %void %main_1
- %70 = OpLoad %v4float %x_GLF_color
- %71 = OpCompositeConstruct %main_out %70
- %69 = OpFunctionCall %void %tint_symbol_2 %71
+ %68 = OpLabel
+ %69 = OpFunctionCall %main_out %main_inner
+ %70 = OpCompositeExtract %v4float %69 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.spvasm.expected.spvasm
index 5661e19..99576b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
%22 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -42,7 +41,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %15
@@ -64,18 +63,17 @@
OpStore %x_GLF_color %38
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %8
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.wgsl.expected.spvasm
index 5661e19..99576b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-step-sinh/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 51
+; Bound: 50
; Schema: 0
OpCapability Shader
%22 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %v2 "v2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -42,7 +41,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %39 = OpTypeFunction %void %main_out
+ %39 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %15
@@ -64,18 +63,17 @@
OpStore %x_GLF_color %38
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %39
-%tint_symbol = OpFunctionParameter %main_out
- %43 = OpLabel
- %44 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %44
- OpReturn
+ %main_inner = OpFunction %main_out None %39
+ %42 = OpLabel
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %v4float %x_GLF_color
+ %45 = OpCompositeConstruct %main_out %44
+ OpReturnValue %45
OpFunctionEnd
%main = OpFunction %void None %8
- %46 = OpLabel
- %47 = OpFunctionCall %void %main_1
- %49 = OpLoad %v4float %x_GLF_color
- %50 = OpCompositeConstruct %main_out %49
- %48 = OpFunctionCall %void %tint_symbol_2 %50
+ %47 = OpLabel
+ %48 = OpFunctionCall %main_out %main_inner
+ %49 = OpCompositeExtract %v4float %48 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.spvasm.expected.spvasm
index 2af192c..db5b36e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%90 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -21,7 +22,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_15 "x_15"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "numbers"
@@ -31,9 +31,9 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
@@ -56,11 +56,14 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
@@ -80,12 +83,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %24 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %24
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %24
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%uint_3 = OpConstant %uint 3
@@ -109,7 +108,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %27
%30 = OpLabel
%obj = OpVariable %_ptr_Function_S Function %36
@@ -197,18 +196,17 @@
%99 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %27
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.wgsl.expected.spvasm
index 2af192c..db5b36e 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-struct-float-array-mix-uniform-vectors/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 131
+; Bound: 130
; Schema: 0
OpCapability Shader
%90 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_7 "x_7"
@@ -21,7 +22,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_15 "x_15"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "numbers"
@@ -31,9 +31,9 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_5 ArrayStride 16
@@ -56,11 +56,14 @@
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_5 = OpConstant %uint 5
%_arr_float_uint_5 = OpTypeArray %float %uint_5
@@ -80,12 +83,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %24 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %24
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %24
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%27 = OpTypeFunction %void
%uint_3 = OpConstant %uint 3
@@ -109,7 +108,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %119 = OpTypeFunction %void %main_out
+ %119 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %27
%30 = OpLabel
%obj = OpVariable %_ptr_Function_S Function %36
@@ -197,18 +196,17 @@
%99 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %119
-%tint_symbol = OpFunctionParameter %main_out
- %123 = OpLabel
- %124 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %124
- OpReturn
+ %main_inner = OpFunction %main_out None %119
+ %122 = OpLabel
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %27
- %126 = OpLabel
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_2 %130
+ %127 = OpLabel
+ %128 = OpFunctionCall %main_out %main_inner
+ %129 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.spvasm.expected.spvasm
index c5cc68e..ba2f7a8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 91
+; Bound: 90
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -56,18 +59,14 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -81,7 +80,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
+ %79 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%f = OpVariable %_ptr_Function_float Function %30
@@ -133,18 +132,17 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %24
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.wgsl.expected.spvasm
index c5cc68e..ba2f7a8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-sum-uniform-vector-components-round/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 91
+; Bound: 90
; Schema: 0
OpCapability Shader
%48 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -43,9 +43,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -56,18 +59,14 @@
%buf2 = OpTypeStruct %v2float
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -81,7 +80,7 @@
%bool = OpTypeBool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %79 = OpTypeFunction %void %main_out
+ %79 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%f = OpVariable %_ptr_Function_float Function %30
@@ -133,18 +132,17 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %79
-%tint_symbol = OpFunctionParameter %main_out
- %83 = OpLabel
- %84 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %84
- OpReturn
+ %main_inner = OpFunction %main_out None %79
+ %82 = OpLabel
+ %83 = OpFunctionCall %void %main_1
+ %84 = OpLoad %v4float %x_GLF_color
+ %85 = OpCompositeConstruct %main_out %84
+ OpReturnValue %85
OpFunctionEnd
%main = OpFunction %void None %24
- %86 = OpLabel
- %87 = OpFunctionCall %void %main_1
- %89 = OpLoad %v4float %x_GLF_color
- %90 = OpCompositeConstruct %main_out %89
- %88 = OpFunctionCall %void %tint_symbol_2 %90
+ %87 = OpLabel
+ %88 = OpFunctionCall %main_out %main_inner
+ %89 = OpCompositeExtract %v4float %88 0
+ OpStore %x_GLF_color_1_1 %89
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.spvasm.expected.spvasm
index 3cdb9a4..b267fc8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 113
+; Bound: 112
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %color "color"
OpName %i "i"
@@ -22,9 +22,9 @@
OpName %k "k"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -73,10 +72,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
+ %101 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %17
+ %color = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%j = OpVariable %_ptr_Function_int Function %28
%k = OpVariable %_ptr_Function_int Function %28
@@ -186,18 +185,17 @@
OpStore %x_GLF_color %100
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %20
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.wgsl.expected.spvasm
index 3cdb9a4..b267fc8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-for-for-for/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 113
+; Bound: 112
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
@@ -14,7 +15,6 @@
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_11 "x_11"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %color "color"
OpName %i "i"
@@ -22,9 +22,9 @@
OpName %k "k"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_11 NonWritable
OpDecorate %x_11 DescriptorSet 0
OpDecorate %x_11 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,18 +50,13 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -73,10 +72,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
+ %101 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
- %color = OpVariable %_ptr_Function_v4float Function %17
+ %color = OpVariable %_ptr_Function_v4float Function %5
%i = OpVariable %_ptr_Function_int Function %28
%j = OpVariable %_ptr_Function_int Function %28
%k = OpVariable %_ptr_Function_int Function %28
@@ -186,18 +185,17 @@
OpStore %x_GLF_color %100
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %20
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.spvasm.expected.spvasm
index aa46334..6834d27 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 106
+; Bound: 105
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -17,14 +18,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -42,12 +42,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -63,8 +64,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -77,7 +76,7 @@
%true = OpConstantTrue %bool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%i = OpVariable %_ptr_Function_int Function %28
@@ -178,18 +177,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %94
-%tint_symbol = OpFunctionParameter %main_out
- %98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %99
- OpReturn
+ %main_inner = OpFunction %main_out None %94
+ %97 = OpLabel
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %22
- %101 = OpLabel
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_2 %105
+ %102 = OpLabel
+ %103 = OpFunctionCall %main_out %main_inner
+ %104 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.wgsl.expected.spvasm
index aa46334..6834d27 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-tail-duplicator-infinite-loops/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 106
+; Bound: 105
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -17,14 +18,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -42,12 +42,13 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -63,8 +64,6 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -77,7 +76,7 @@
%true = OpConstantTrue %bool
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %94 = OpTypeFunction %void %main_out
+ %94 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %22
%25 = OpLabel
%i = OpVariable %_ptr_Function_int Function %28
@@ -178,18 +177,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %94
-%tint_symbol = OpFunctionParameter %main_out
- %98 = OpLabel
- %99 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %99
- OpReturn
+ %main_inner = OpFunction %main_out None %94
+ %97 = OpLabel
+ %98 = OpFunctionCall %void %main_1
+ %99 = OpLoad %v4float %x_GLF_color
+ %100 = OpCompositeConstruct %main_out %99
+ OpReturnValue %100
OpFunctionEnd
%main = OpFunction %void None %22
- %101 = OpLabel
- %102 = OpFunctionCall %void %main_1
- %104 = OpLoad %v4float %x_GLF_color
- %105 = OpCompositeConstruct %main_out %104
- %103 = OpFunctionCall %void %tint_symbol_2 %105
+ %102 = OpLabel
+ %103 = OpFunctionCall %main_out %main_inner
+ %104 = OpCompositeExtract %v4float %103 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.spvasm.expected.spvasm
index 3b09286..00edf7a 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.spvasm.expected.spvasm
@@ -6,44 +6,44 @@
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -61,7 +61,7 @@
%49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%50 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -92,20 +92,20 @@
%44 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %51
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %51
+%gl_FragCoord_param = OpFunctionParameter %v4float
%55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %56
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %56 = OpFunctionCall %void %main_1
+ %57 = OpLoad %v4float %x_GLF_color
+ %58 = OpCompositeConstruct %main_out %57
+ OpReturnValue %58
OpFunctionEnd
%main = OpFunction %void None %14
- %58 = OpLabel
- %59 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %59
- %60 = OpFunctionCall %void %main_1
- %62 = OpLoad %v4float %x_GLF_color
- %63 = OpCompositeConstruct %main_out %62
- %61 = OpFunctionCall %void %tint_symbol_3 %63
+ %60 = OpLabel
+ %62 = OpLoad %v4float %gl_FragCoord_param_1
+ %61 = OpFunctionCall %main_out %main_inner %62
+ %63 = OpCompositeExtract %v4float %61 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.wgsl.expected.spvasm
index 7858785..d4fe2c7 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-dfdx-cos/0-opt.wgsl.expected.spvasm
@@ -6,44 +6,44 @@
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -61,7 +61,7 @@
%51 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%52 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%a = OpVariable %_ptr_Function_float Function %20
@@ -97,20 +97,20 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %53
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %53
+%gl_FragCoord_param = OpFunctionParameter %v4float
%57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %58
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %14
- %60 = OpLabel
- %61 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %61
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_3 %65
+ %62 = OpLabel
+ %64 = OpLoad %v4float %gl_FragCoord_param_1
+ %63 = OpFunctionCall %main_out %main_inner %64
+ %65 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.spvasm.expected.spvasm
index f707389..80137c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 218
+; Bound: 217
; Schema: 0
OpCapability Shader
%123 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_ "func_struct_S_i11_"
@@ -32,9 +32,9 @@
OpName %x_147_phi "x_147_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -46,11 +46,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -62,12 +65,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -93,7 +92,7 @@
%int_3 = OpConstant %int 3
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %206 = OpTypeFunction %void %main_out
+ %206 = OpTypeFunction %main_out
%func_struct_S_i11_ = OpFunction %void None %19
%s = OpFunctionParameter %_ptr_Function_S
%25 = OpLabel
@@ -333,18 +332,17 @@
%186 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %206
-%tint_symbol = OpFunctionParameter %main_out
- %210 = OpLabel
- %211 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %211
- OpReturn
+ %main_inner = OpFunction %main_out None %206
+ %209 = OpLabel
+ %210 = OpFunctionCall %void %main_1
+ %211 = OpLoad %v4float %x_GLF_color
+ %212 = OpCompositeConstruct %main_out %211
+ OpReturnValue %212
OpFunctionEnd
%main = OpFunction %void None %49
- %213 = OpLabel
- %214 = OpFunctionCall %void %main_1
- %216 = OpLoad %v4float %x_GLF_color
- %217 = OpCompositeConstruct %main_out %216
- %215 = OpFunctionCall %void %tint_symbol_2 %217
+ %214 = OpLabel
+ %215 = OpFunctionCall %main_out %main_inner
+ %216 = OpCompositeExtract %v4float %215 0
+ OpStore %x_GLF_color_1_1 %216
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.wgsl.expected.spvasm
index f707389..80137c9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-target-lowering-inst-combine-compares-struct-array-clamp-function-cal/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 218
+; Bound: 217
; Schema: 0
OpCapability Shader
%123 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
@@ -15,7 +16,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_ "func_struct_S_i11_"
@@ -32,9 +32,9 @@
OpName %x_147_phi "x_147_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_8 NonWritable
@@ -46,11 +46,14 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -62,12 +65,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -93,7 +92,7 @@
%int_3 = OpConstant %int 3
%int_4 = OpConstant %int 4
%main_out = OpTypeStruct %v4float
- %206 = OpTypeFunction %void %main_out
+ %206 = OpTypeFunction %main_out
%func_struct_S_i11_ = OpFunction %void None %19
%s = OpFunctionParameter %_ptr_Function_S
%25 = OpLabel
@@ -333,18 +332,17 @@
%186 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %206
-%tint_symbol = OpFunctionParameter %main_out
- %210 = OpLabel
- %211 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %211
- OpReturn
+ %main_inner = OpFunction %main_out None %206
+ %209 = OpLabel
+ %210 = OpFunctionCall %void %main_1
+ %211 = OpLoad %v4float %x_GLF_color
+ %212 = OpCompositeConstruct %main_out %211
+ OpReturnValue %212
OpFunctionEnd
%main = OpFunction %void None %49
- %213 = OpLabel
- %214 = OpFunctionCall %void %main_1
- %216 = OpLoad %v4float %x_GLF_color
- %217 = OpCompositeConstruct %main_out %216
- %215 = OpFunctionCall %void %tint_symbol_2 %217
+ %214 = OpLabel
+ %215 = OpFunctionCall %main_out %main_inner
+ %216 = OpCompositeExtract %v4float %215 0
+ OpStore %x_GLF_color_1_1 %216
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.spvasm.expected.spvasm
index 69eb7bd..46574b6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -47,7 +46,7 @@
%51 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%52 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %16
@@ -81,18 +80,17 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %8
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.wgsl.expected.spvasm
index b135837..fed0db5 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-transpose-multiply/0-opt.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -47,7 +46,7 @@
%53 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m = OpVariable %_ptr_Function_mat2v2float Function %16
@@ -86,18 +85,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.spvasm.expected.spvasm
index 872fb57..8a68020 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -16,15 +18,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,30 +39,28 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
@@ -121,20 +121,20 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %72
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %72
+%gl_FragCoord_param = OpFunctionParameter %v4float
%76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %77
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %22
- %79 = OpLabel
- %80 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %80
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_3 %84
+ %81 = OpLabel
+ %83 = OpLoad %v4float %gl_FragCoord_param_1
+ %82 = OpFunctionCall %main_out %main_inner %83
+ %84 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.wgsl.expected.spvasm
index 872fb57..8a68020 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-trunc-fract-always-zero/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
@@ -16,15 +18,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,30 +39,28 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_7 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -76,7 +76,7 @@
%int_0 = OpConstant %int 0
%_ptr_Uniform_int = OpTypePointer Uniform %int
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%f = OpVariable %_ptr_Function_float Function %28
@@ -121,20 +121,20 @@
%51 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %72
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %72
+%gl_FragCoord_param = OpFunctionParameter %v4float
%76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %77
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %22
- %79 = OpLabel
- %80 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %80
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_3 %84
+ %81 = OpLabel
+ %83 = OpLoad %v4float %gl_FragCoord_param_1
+ %82 = OpFunctionCall %main_out %main_inner %83
+ %84 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.spvasm.expected.spvasm
index 92c0d33..4003fa1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_24 "x_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_ "func_"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -51,8 +50,8 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
- %44 = OpTypeFunction %v4float
+ %32 = OpTypeFunction %main_out
+ %43 = OpTypeFunction %v4float
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_24 = OpVariable %_ptr_Function_v4float Function %5
@@ -69,22 +68,21 @@
OpStore %x_GLF_color %31
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
- %func_ = OpFunction %v4float None %44
- %46 = OpLabel
+ %func_ = OpFunction %v4float None %43
+ %45 = OpLabel
OpReturnValue %31
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.wgsl.expected.spvasm
index 92c0d33..4003fa1 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-types-return-in-main-never-hit/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 47
+; Bound: 46
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_24 "x_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %func_ "func_"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -51,8 +50,8 @@
%float_1 = OpConstant %float 1
%31 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %32 = OpTypeFunction %void %main_out
- %44 = OpTypeFunction %v4float
+ %32 = OpTypeFunction %main_out
+ %43 = OpTypeFunction %v4float
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_24 = OpVariable %_ptr_Function_v4float Function %5
@@ -69,22 +68,21 @@
OpStore %x_GLF_color %31
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %32
-%tint_symbol = OpFunctionParameter %main_out
- %36 = OpLabel
- %37 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %37
- OpReturn
+ %main_inner = OpFunction %main_out None %32
+ %35 = OpLabel
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %x_GLF_color
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %12
- %39 = OpLabel
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %x_GLF_color
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_2 %43
+ %40 = OpLabel
+ %41 = OpFunctionCall %main_out %main_inner
+ %42 = OpCompositeExtract %v4float %41 0
+ OpStore %x_GLF_color_1_1 %42
OpReturn
OpFunctionEnd
- %func_ = OpFunction %v4float None %44
- %46 = OpLabel
+ %func_ = OpFunction %v4float None %43
+ %45 = OpLabel
OpReturnValue %31
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.spvasm.expected.spvasm
index 6061eec..156c44ec 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m24 "m24"
OpName %a "a"
@@ -23,9 +23,9 @@
OpName %v3 "v3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -50,12 +53,8 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%mat2v2float = OpTypeMatrix %v2float 2
@@ -77,7 +76,7 @@
%80 = OpConstantComposite %v2float %float_0 %float_0
%85 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%m24 = OpVariable %_ptr_Function_mat2v2float Function %25
@@ -138,18 +137,17 @@
%74 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %18
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.wgsl.expected.spvasm
index 0925219..e5eebfd 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-undefined-inversesqrt-reflect/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 98
+; Bound: 97
; Schema: 0
OpCapability Shader
%58 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -15,7 +16,6 @@
OpMemberName %buf1 0 "v1"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m24 "m24"
OpName %a "a"
@@ -23,9 +23,9 @@
OpName %v3 "v3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_float_uint_1 ArrayStride 16
@@ -37,9 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
@@ -50,12 +53,8 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%18 = OpTypeFunction %void
%mat2v2float = OpTypeMatrix %v2float 2
@@ -77,7 +76,7 @@
%80 = OpConstantComposite %v2float %float_0 %float_0
%85 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %86 = OpTypeFunction %void %main_out
+ %86 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %18
%21 = OpLabel
%m24 = OpVariable %_ptr_Function_mat2v2float Function %25
@@ -138,18 +137,17 @@
%74 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %86
-%tint_symbol = OpFunctionParameter %main_out
- %90 = OpLabel
- %91 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %91
- OpReturn
+ %main_inner = OpFunction %main_out None %86
+ %89 = OpLabel
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %18
- %93 = OpLabel
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_2 %97
+ %94 = OpLabel
+ %95 = OpFunctionCall %main_out %main_inner
+ %96 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %96
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.spvasm.expected.spvasm
index 85eaf66..bfb6c97 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 137
+; Bound: 136
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_i1_ "func_struct_S_i11_i1_"
@@ -27,19 +27,23 @@
OpName %param_3 "param_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -47,13 +51,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -73,7 +72,7 @@
%52 = OpConstantNull %S
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %v4float
- %125 = OpTypeFunction %void %main_out
+ %125 = OpTypeFunction %main_out
%func_struct_S_i11_i1_ = OpFunction %void None %15
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -196,18 +195,17 @@
%105 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %125
-%tint_symbol = OpFunctionParameter %main_out
- %129 = OpLabel
- %130 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %130
- OpReturn
+ %main_inner = OpFunction %main_out None %125
+ %128 = OpLabel
+ %129 = OpFunctionCall %void %main_1
+ %130 = OpLoad %v4float %x_GLF_color
+ %131 = OpCompositeConstruct %main_out %130
+ OpReturnValue %131
OpFunctionEnd
%main = OpFunction %void None %40
- %132 = OpLabel
- %133 = OpFunctionCall %void %main_1
- %135 = OpLoad %v4float %x_GLF_color
- %136 = OpCompositeConstruct %main_out %135
- %134 = OpFunctionCall %void %tint_symbol_2 %136
+ %133 = OpLabel
+ %134 = OpFunctionCall %main_out %main_inner
+ %135 = OpCompositeExtract %v4float %134 0
+ OpStore %x_GLF_color_1_1 %135
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.wgsl.expected.spvasm
index 85eaf66..bfb6c97 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-uninitialized-values-passed-to-function-never-executed/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 137
+; Bound: 136
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %S "S"
OpMemberName %S 0 "data"
OpName %func_struct_S_i11_i1_ "func_struct_S_i11_i1_"
@@ -27,19 +27,23 @@
OpName %param_3 "param_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpDecorate %_arr_S_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -47,13 +51,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%S = OpTypeStruct %int
%_ptr_Function_S = OpTypePointer Function %S
@@ -73,7 +72,7 @@
%52 = OpConstantNull %S
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %v4float
- %125 = OpTypeFunction %void %main_out
+ %125 = OpTypeFunction %main_out
%func_struct_S_i11_i1_ = OpFunction %void None %15
%s = OpFunctionParameter %_ptr_Function_S
%x = OpFunctionParameter %_ptr_Function_int
@@ -196,18 +195,17 @@
%105 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %125
-%tint_symbol = OpFunctionParameter %main_out
- %129 = OpLabel
- %130 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %130
- OpReturn
+ %main_inner = OpFunction %main_out None %125
+ %128 = OpLabel
+ %129 = OpFunctionCall %void %main_1
+ %130 = OpLoad %v4float %x_GLF_color
+ %131 = OpCompositeConstruct %main_out %130
+ OpReturnValue %131
OpFunctionEnd
%main = OpFunction %void None %40
- %132 = OpLabel
- %133 = OpFunctionCall %void %main_1
- %135 = OpLoad %v4float %x_GLF_color
- %136 = OpCompositeConstruct %main_out %135
- %134 = OpFunctionCall %void %tint_symbol_2 %136
+ %133 = OpLabel
+ %134 = OpFunctionCall %main_out %main_inner
+ %135 = OpCompositeExtract %v4float %134 0
+ OpStore %x_GLF_color_1_1 %135
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.spvasm.expected.spvasm
index 0727549..f242ed0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 101
+; Bound: 100
; Schema: 0
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpMemberName %buf2 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_uint_uint_1 ArrayStride 16
@@ -44,8 +44,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
@@ -58,18 +62,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf2 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %22 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %22
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %22
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%25 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -84,10 +83,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %89 = OpTypeFunction %void %main_out
+ %89 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %25
%28 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %22
+ %v = OpVariable %_ptr_Function_v4float Function %5
%34 = OpAccessChain %_ptr_Uniform_uint %x_6 %uint_0 %int_0
%35 = OpLoad %uint %34
%36 = OpAccessChain %_ptr_Uniform_uint %x_6 %uint_0 %int_0
@@ -144,18 +143,17 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %89
-%tint_symbol = OpFunctionParameter %main_out
- %93 = OpLabel
- %94 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %94
- OpReturn
+ %main_inner = OpFunction %main_out None %89
+ %92 = OpLabel
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %25
- %96 = OpLabel
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_2 %100
+ %97 = OpLabel
+ %98 = OpFunctionCall %main_out %main_inner
+ %99 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %99
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.wgsl.expected.spvasm
index 0727549..f242ed0 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unpack-unorm-mix-always-one/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 101
+; Bound: 100
; Schema: 0
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpMemberName %buf2 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_uint_uint_1 ArrayStride 16
@@ -44,8 +44,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 2
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
@@ -58,18 +62,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
%buf2 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_10 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %22 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %22
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %22
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%25 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -84,10 +83,10 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %89 = OpTypeFunction %void %main_out
+ %89 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %25
%28 = OpLabel
- %v = OpVariable %_ptr_Function_v4float Function %22
+ %v = OpVariable %_ptr_Function_v4float Function %5
%34 = OpAccessChain %_ptr_Uniform_uint %x_6 %uint_0 %int_0
%35 = OpLoad %uint %34
%36 = OpAccessChain %_ptr_Uniform_uint %x_6 %uint_0 %int_0
@@ -144,18 +143,17 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %89
-%tint_symbol = OpFunctionParameter %main_out
- %93 = OpLabel
- %94 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %94
- OpReturn
+ %main_inner = OpFunction %main_out None %89
+ %92 = OpLabel
+ %93 = OpFunctionCall %void %main_1
+ %94 = OpLoad %v4float %x_GLF_color
+ %95 = OpCompositeConstruct %main_out %94
+ OpReturnValue %95
OpFunctionEnd
%main = OpFunction %void None %25
- %96 = OpLabel
- %97 = OpFunctionCall %void %main_1
- %99 = OpLoad %v4float %x_GLF_color
- %100 = OpCompositeConstruct %main_out %99
- %98 = OpFunctionCall %void %tint_symbol_2 %100
+ %97 = OpLabel
+ %98 = OpFunctionCall %main_out %main_inner
+ %99 = OpCompositeExtract %v4float %98 0
+ OpStore %x_GLF_color_1_1 %99
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.spvasm.expected.spvasm
index c63ce32..d3f89ac 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 152
+; Bound: 151
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m43 "m43"
OpName %sums "sums"
@@ -23,9 +23,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -53,12 +56,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -82,7 +81,7 @@
%int_4 = OpConstant %int 4
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m43 = OpVariable %_ptr_Function_mat4v3float Function %28
@@ -211,18 +210,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %140
-%tint_symbol = OpFunctionParameter %main_out
- %144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %145
- OpReturn
+ %main_inner = OpFunction %main_out None %140
+ %143 = OpLabel
+ %144 = OpFunctionCall %void %main_1
+ %145 = OpLoad %v4float %x_GLF_color
+ %146 = OpCompositeConstruct %main_out %145
+ OpReturnValue %146
OpFunctionEnd
%main = OpFunction %void None %20
- %147 = OpLabel
- %148 = OpFunctionCall %void %main_1
- %150 = OpLoad %v4float %x_GLF_color
- %151 = OpCompositeConstruct %main_out %150
- %149 = OpFunctionCall %void %tint_symbol_2 %151
+ %148 = OpLabel
+ %149 = OpFunctionCall %main_out %main_inner
+ %150 = OpCompositeExtract %v4float %149 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.wgsl.expected.spvasm
index c63ce32..d3f89ac 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unused-access-past-matrix-elements/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 152
+; Bound: 151
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m43 "m43"
OpName %sums "sums"
@@ -23,9 +23,9 @@
OpName %x_67_phi "x_67_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -38,9 +38,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -53,12 +56,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -82,7 +81,7 @@
%int_4 = OpConstant %int 4
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m43 = OpVariable %_ptr_Function_mat4v3float Function %28
@@ -211,18 +210,17 @@
%120 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %140
-%tint_symbol = OpFunctionParameter %main_out
- %144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %145
- OpReturn
+ %main_inner = OpFunction %main_out None %140
+ %143 = OpLabel
+ %144 = OpFunctionCall %void %main_1
+ %145 = OpLoad %v4float %x_GLF_color
+ %146 = OpCompositeConstruct %main_out %145
+ OpReturnValue %146
OpFunctionEnd
%main = OpFunction %void None %20
- %147 = OpLabel
- %148 = OpFunctionCall %void %main_1
- %150 = OpLoad %v4float %x_GLF_color
- %151 = OpCompositeConstruct %main_out %150
- %149 = OpFunctionCall %void %tint_symbol_2 %151
+ %148 = OpLabel
+ %149 = OpFunctionCall %main_out %main_inner
+ %150 = OpCompositeExtract %v4float %149 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.spvasm.expected.spvasm
index 61df56b..2b90d5b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 192
+; Bound: 191
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %c "c"
OpName %m1 "m1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -36,8 +36,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -45,18 +49,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -78,7 +77,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %180 = OpTypeFunction %void %main_out
+ %180 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m0 = OpVariable %_ptr_Function_mat4v4float Function %27
@@ -242,18 +241,17 @@
%160 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %180
-%tint_symbol = OpFunctionParameter %main_out
- %184 = OpLabel
- %185 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %185
- OpReturn
+ %main_inner = OpFunction %main_out None %180
+ %183 = OpLabel
+ %184 = OpFunctionCall %void %main_1
+ %185 = OpLoad %v4float %x_GLF_color
+ %186 = OpCompositeConstruct %main_out %185
+ OpReturnValue %186
OpFunctionEnd
%main = OpFunction %void None %20
- %187 = OpLabel
- %188 = OpFunctionCall %void %main_1
- %190 = OpLoad %v4float %x_GLF_color
- %191 = OpCompositeConstruct %main_out %190
- %189 = OpFunctionCall %void %tint_symbol_2 %191
+ %188 = OpLabel
+ %189 = OpFunctionCall %main_out %main_inner
+ %190 = OpCompositeExtract %v4float %189 0
+ OpStore %x_GLF_color_1_1 %190
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.wgsl.expected.spvasm
index 1bf7a3d..9e07478 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-unused-matrix-copy-inside-loop/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 198
+; Bound: 197
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -14,16 +15,15 @@
OpMemberName %buf0 0 "x_GLF_uniform_float_values"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m0 "m0"
OpName %c "c"
OpName %m1 "m1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
@@ -36,8 +36,12 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -45,18 +49,13 @@
%buf1 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf0 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -78,7 +77,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %186 = OpTypeFunction %void %main_out
+ %186 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m0 = OpVariable %_ptr_Function_mat4v4float Function %27
@@ -257,18 +256,17 @@
%166 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %186
-%tint_symbol = OpFunctionParameter %main_out
- %190 = OpLabel
- %191 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %191
- OpReturn
+ %main_inner = OpFunction %main_out None %186
+ %189 = OpLabel
+ %190 = OpFunctionCall %void %main_1
+ %191 = OpLoad %v4float %x_GLF_color
+ %192 = OpCompositeConstruct %main_out %191
+ OpReturnValue %192
OpFunctionEnd
%main = OpFunction %void None %20
- %193 = OpLabel
- %194 = OpFunctionCall %void %main_1
- %196 = OpLoad %v4float %x_GLF_color
- %197 = OpCompositeConstruct %main_out %196
- %195 = OpFunctionCall %void %tint_symbol_2 %197
+ %194 = OpLabel
+ %195 = OpFunctionCall %main_out %main_inner
+ %196 = OpCompositeExtract %v4float %195 0
+ OpStore %x_GLF_color_1_1 %196
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.spvasm.expected.spvasm
index b35e4cc..21a787f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%39 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%40 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -84,18 +83,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %12
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.wgsl.expected.spvasm
index b35e4cc..21a787f 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-val-cfg-case-fallthrough/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -53,7 +52,7 @@
%39 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%40 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -84,18 +83,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %12
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.spvasm.expected.spvasm
index 35b828d..6212659 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.spvasm.expected.spvasm
@@ -1,36 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
%61 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %A "A"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -38,13 +42,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -139,18 +138,17 @@
%73 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %15
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.wgsl.expected.spvasm
index 35b828d..6212659 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-inst-combine-select-value-tracking-flip-bits/0-opt.wgsl.expected.spvasm
@@ -1,36 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
%61 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %A "A"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_3 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
@@ -38,13 +42,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %21
@@ -139,18 +138,17 @@
%73 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %15
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.spvasm.expected.spvasm
index 815ee58..a0b252c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.spvasm.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -133,18 +132,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %15
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.wgsl.expected.spvasm
index 815ee58..a0b252c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-apint-inst-combine-simplify-one-mod-loop-iterator/0-opt.wgsl.expected.spvasm
@@ -1,33 +1,37 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 92
+; Bound: 91
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -35,13 +39,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -54,7 +53,7 @@
%bool = OpTypeBool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %80 = OpTypeFunction %void %main_out
+ %80 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -133,18 +132,17 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %80
-%tint_symbol = OpFunctionParameter %main_out
- %84 = OpLabel
- %85 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %85
- OpReturn
+ %main_inner = OpFunction %main_out None %80
+ %83 = OpLabel
+ %84 = OpFunctionCall %void %main_1
+ %85 = OpLoad %v4float %x_GLF_color
+ %86 = OpCompositeConstruct %main_out %85
+ OpReturnValue %86
OpFunctionEnd
%main = OpFunction %void None %15
- %87 = OpLabel
- %88 = OpFunctionCall %void %main_1
- %90 = OpLoad %v4float %x_GLF_color
- %91 = OpCompositeConstruct %main_out %90
- %89 = OpFunctionCall %void %tint_symbol_2 %91
+ %88 = OpLabel
+ %89 = OpFunctionCall %main_out %main_inner
+ %90 = OpCompositeExtract %v4float %89 0
+ OpStore %x_GLF_color_1_1 %90
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.spvasm.expected.spvasm
index 04cf099..4b63e0c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 60
+; Bound: 59
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%47 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -97,18 +96,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %48
-%tint_symbol = OpFunctionParameter %main_out
- %52 = OpLabel
- %53 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %53
- OpReturn
+ %main_inner = OpFunction %main_out None %48
+ %51 = OpLabel
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %12
- %55 = OpLabel
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_2 %59
+ %56 = OpLabel
+ %57 = OpFunctionCall %main_out %main_inner
+ %58 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.wgsl.expected.spvasm
index 04cf099..4b63e0c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-inclusive-or/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 60
+; Bound: 59
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "two"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -52,7 +51,7 @@
%46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%47 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_int Function %18
@@ -97,18 +96,17 @@
%41 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %48
-%tint_symbol = OpFunctionParameter %main_out
- %52 = OpLabel
- %53 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %53
- OpReturn
+ %main_inner = OpFunction %main_out None %48
+ %51 = OpLabel
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %12
- %55 = OpLabel
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_2 %59
+ %56 = OpLabel
+ %57 = OpFunctionCall %main_out %main_inner
+ %58 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.spvasm.expected.spvasm
index 0d08156..1f8dc72 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.spvasm.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %sum "sum"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -56,7 +55,7 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -138,18 +137,17 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %15
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.wgsl.expected.spvasm
index 0d08156..1f8dc72 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-known-nonzero/0-opt.wgsl.expected.spvasm
@@ -1,34 +1,38 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 94
+; Bound: 93
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %sum "sum"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_4 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_4 = OpConstant %uint 4
@@ -36,13 +40,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -56,7 +55,7 @@
%int_2 = OpConstant %int 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %82 = OpTypeFunction %void %main_out
+ %82 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%a = OpVariable %_ptr_Function_int Function %21
@@ -138,18 +137,17 @@
%62 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %82
-%tint_symbol = OpFunctionParameter %main_out
- %86 = OpLabel
- %87 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %87
- OpReturn
+ %main_inner = OpFunction %main_out None %82
+ %85 = OpLabel
+ %86 = OpFunctionCall %void %main_1
+ %87 = OpLoad %v4float %x_GLF_color
+ %88 = OpCompositeConstruct %main_out %87
+ OpReturnValue %88
OpFunctionEnd
%main = OpFunction %void None %15
- %89 = OpLabel
- %90 = OpFunctionCall %void %main_1
- %92 = OpLoad %v4float %x_GLF_color
- %93 = OpCompositeConstruct %main_out %92
- %91 = OpFunctionCall %void %tint_symbol_2 %93
+ %90 = OpLabel
+ %91 = OpFunctionCall %main_out %main_inner
+ %92 = OpCompositeExtract %v4float %91 0
+ OpStore %x_GLF_color_1_1 %92
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.spvasm.expected.spvasm
index 1b834bb..947f831 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
%38 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %_arr_uint_uint_1 ArrayStride 16
@@ -44,31 +44,30 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%buf2 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_6 = OpVariable %_ptr_Uniform_buf2 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,7 +81,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%f = OpVariable %_ptr_Function_float Function %30
@@ -123,18 +122,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %24
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.wgsl.expected.spvasm
index 1b834bb..947f831 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-max-uintbitstofloat/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
%38 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf2 "buf2"
OpMemberName %buf2 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -18,14 +19,13 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_10 "x_10"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %f "f"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf2 Block
OpMemberDecorate %buf2 0 Offset 0
OpDecorate %_arr_uint_uint_1 ArrayStride 16
@@ -44,31 +44,30 @@
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
%buf2 = OpTypeStruct %_arr_uint_uint_1
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_6 = OpVariable %_ptr_Uniform_buf2 Uniform
- %float = OpTypeFloat 32
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf1 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %15 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %15
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint_2 = OpConstant %uint 2
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %15
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -82,7 +81,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%f = OpVariable %_ptr_Function_float Function %30
@@ -123,18 +122,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %24
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.spvasm.expected.spvasm
index 0879b72..86dae79 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 253
+; Bound: 252
; Schema: 0
OpCapability Shader
%153 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %ref "ref"
OpName %i "i"
@@ -22,18 +22,22 @@
OpName %i_3 "i_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_16 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_15 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
@@ -41,13 +45,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_16
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_15 = OpConstant %uint 15
@@ -76,7 +75,7 @@
%bool = OpTypeBool
%int_7 = OpConstant %int 7
%main_out = OpTypeStruct %v4float
- %241 = OpTypeFunction %void %main_out
+ %241 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%ref = OpVariable %_ptr_Function__arr_int_uint_15 Function %23
@@ -344,18 +343,17 @@
OpStore %x_GLF_color %240
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %241
-%tint_symbol = OpFunctionParameter %main_out
- %245 = OpLabel
- %246 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %246
- OpReturn
+ %main_inner = OpFunction %main_out None %241
+ %244 = OpLabel
+ %245 = OpFunctionCall %void %main_1
+ %246 = OpLoad %v4float %x_GLF_color
+ %247 = OpCompositeConstruct %main_out %246
+ OpReturnValue %247
OpFunctionEnd
%main = OpFunction %void None %15
- %248 = OpLabel
- %249 = OpFunctionCall %void %main_1
- %251 = OpLoad %v4float %x_GLF_color
- %252 = OpCompositeConstruct %main_out %251
- %250 = OpFunctionCall %void %tint_symbol_2 %252
+ %249 = OpLabel
+ %250 = OpFunctionCall %main_out %main_inner
+ %251 = OpCompositeExtract %v4float %250 0
+ OpStore %x_GLF_color_1_1 %251
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.wgsl.expected.spvasm
index 0879b72..86dae79 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-selection-dag-negation-clamp-loop/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 253
+; Bound: 252
; Schema: 0
OpCapability Shader
%153 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %ref "ref"
OpName %i "i"
@@ -22,18 +22,22 @@
OpName %i_3 "i_3"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_16 ArrayStride 16
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_15 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
@@ -41,13 +45,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_16
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_15 = OpConstant %uint 15
@@ -76,7 +75,7 @@
%bool = OpTypeBool
%int_7 = OpConstant %int 7
%main_out = OpTypeStruct %v4float
- %241 = OpTypeFunction %void %main_out
+ %241 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%ref = OpVariable %_ptr_Function__arr_int_uint_15 Function %23
@@ -344,18 +343,17 @@
OpStore %x_GLF_color %240
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %241
-%tint_symbol = OpFunctionParameter %main_out
- %245 = OpLabel
- %246 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %246
- OpReturn
+ %main_inner = OpFunction %main_out None %241
+ %244 = OpLabel
+ %245 = OpFunctionCall %void %main_1
+ %246 = OpLoad %v4float %x_GLF_color
+ %247 = OpCompositeConstruct %main_out %246
+ OpReturnValue %247
OpFunctionEnd
%main = OpFunction %void None %15
- %248 = OpLabel
- %249 = OpFunctionCall %void %main_1
- %251 = OpLoad %v4float %x_GLF_color
- %252 = OpCompositeConstruct %main_out %251
- %250 = OpFunctionCall %void %tint_symbol_2 %252
+ %249 = OpLabel
+ %250 = OpFunctionCall %main_out %main_inner
+ %251 = OpCompositeExtract %v4float %250 0
+ OpStore %x_GLF_color_1_1 %251
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.spvasm.expected.spvasm
index bba0bd0..4baf220 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 70
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "quarter"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %N "N"
OpName %I "I"
@@ -20,26 +20,25 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -69,13 +68,13 @@
%57 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%58 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %59 = OpTypeFunction %void %main_out
+ %59 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %N = OpVariable %_ptr_Function_v4float Function %8
- %I = OpVariable %_ptr_Function_v4float Function %8
- %Nref = OpVariable %_ptr_Function_v4float Function %8
- %v = OpVariable %_ptr_Function_v4float Function %8
+ %N = OpVariable %_ptr_Function_v4float Function %5
+ %I = OpVariable %_ptr_Function_v4float Function %5
+ %Nref = OpVariable %_ptr_Function_v4float Function %5
+ %v = OpVariable %_ptr_Function_v4float Function %5
OpStore %N %24
%28 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0
%29 = OpLoad %float %28
@@ -101,18 +100,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %59
-%tint_symbol = OpFunctionParameter %main_out
- %63 = OpLabel
- %64 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %64
- OpReturn
+ %main_inner = OpFunction %main_out None %59
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %11
- %66 = OpLabel
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_2 %70
+ %67 = OpLabel
+ %68 = OpFunctionCall %main_out %main_inner
+ %69 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %69
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.wgsl.expected.spvasm
index bba0bd0..4baf220 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-value-tracking-uniform-incident/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 70
; Schema: 0
OpCapability Shader
%42 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "quarter"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %N "N"
OpName %I "I"
@@ -20,26 +20,25 @@
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -69,13 +68,13 @@
%57 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%58 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %59 = OpTypeFunction %void %main_out
+ %59 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
- %N = OpVariable %_ptr_Function_v4float Function %8
- %I = OpVariable %_ptr_Function_v4float Function %8
- %Nref = OpVariable %_ptr_Function_v4float Function %8
- %v = OpVariable %_ptr_Function_v4float Function %8
+ %N = OpVariable %_ptr_Function_v4float Function %5
+ %I = OpVariable %_ptr_Function_v4float Function %5
+ %Nref = OpVariable %_ptr_Function_v4float Function %5
+ %v = OpVariable %_ptr_Function_v4float Function %5
OpStore %N %24
%28 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0
%29 = OpLoad %float %28
@@ -101,18 +100,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %59
-%tint_symbol = OpFunctionParameter %main_out
- %63 = OpLabel
- %64 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %64
- OpReturn
+ %main_inner = OpFunction %main_out None %59
+ %62 = OpLabel
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %11
- %66 = OpLabel
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_2 %70
+ %67 = OpLabel
+ %68 = OpFunctionCall %main_out %main_inner
+ %69 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %69
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.spvasm.expected.spvasm
index a8b0d8c..b42cb47 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -62,7 +61,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %19
@@ -100,18 +99,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %12
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.wgsl.expected.spvasm
index a8b0d8c..b42cb47 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-inc-unused-comp/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -62,7 +61,7 @@
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%57 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %19
@@ -100,18 +99,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %12
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.spvasm.expected.spvasm
index 0722d66..50e32c8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 51
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -43,7 +42,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %15
@@ -71,18 +70,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %40
-%tint_symbol = OpFunctionParameter %main_out
- %44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %45
- OpReturn
+ %main_inner = OpFunction %main_out None %40
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %v4float %x_GLF_color
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %8
- %47 = OpLabel
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %v4float %x_GLF_color
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_2 %51
+ %48 = OpLabel
+ %49 = OpFunctionCall %main_out %main_inner
+ %50 = OpCompositeExtract %v4float %49 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.wgsl.expected.spvasm
index 0722d66..50e32c8 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-dce-unused-component/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 51
; Schema: 0
OpCapability Shader
%29 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -43,7 +42,7 @@
%38 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%39 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %40 = OpTypeFunction %void %main_out
+ %40 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%a = OpVariable %_ptr_Function_v2float Function %15
@@ -71,18 +70,17 @@
%34 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %40
-%tint_symbol = OpFunctionParameter %main_out
- %44 = OpLabel
- %45 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %45
- OpReturn
+ %main_inner = OpFunction %main_out None %40
+ %43 = OpLabel
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %v4float %x_GLF_color
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %8
- %47 = OpLabel
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %v4float %x_GLF_color
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_2 %51
+ %48 = OpLabel
+ %49 = OpFunctionCall %main_out %main_inner
+ %50 = OpCompositeExtract %v4float %49 0
+ OpStore %x_GLF_color_1_1 %50
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.spvasm.expected.spvasm
index 77d6182..458ecf2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%17 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -43,7 +42,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -66,18 +65,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %8
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.wgsl.expected.spvasm
index 77d6182..458ecf2 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-vector-log2-cosh/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
%17 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v "v"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -43,7 +42,7 @@
%36 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%37 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %15
@@ -66,18 +65,17 @@
%32 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %8
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.spvasm.expected.spvasm
index faecfdf..f94406c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 77
+; Bound: 76
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -20,27 +20,26 @@
OpName %x_31_phi "x_31_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %void %_ptr_Function_int
@@ -59,7 +58,7 @@
%int_10 = OpConstant %int 10
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out
%func_i1_ = OpFunction %void None %12
%x = OpFunctionParameter %_ptr_Function_int
%17 = OpLabel
@@ -121,18 +120,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %65
-%tint_symbol = OpFunctionParameter %main_out
- %69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %70
- OpReturn
+ %main_inner = OpFunction %main_out None %65
+ %68 = OpLabel
+ %69 = OpFunctionCall %void %main_1
+ %70 = OpLoad %v4float %x_GLF_color
+ %71 = OpCompositeConstruct %main_out %70
+ OpReturnValue %71
OpFunctionEnd
%main = OpFunction %void None %40
- %72 = OpLabel
- %73 = OpFunctionCall %void %main_1
- %75 = OpLoad %v4float %x_GLF_color
- %76 = OpCompositeConstruct %main_out %75
- %74 = OpFunctionCall %void %tint_symbol_2 %76
+ %73 = OpLabel
+ %74 = OpFunctionCall %main_out %main_inner
+ %75 = OpCompositeExtract %v4float %74 0
+ OpStore %x_GLF_color_1_1 %75
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.wgsl.expected.spvasm
index faecfdf..f94406c 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-for-loop/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 77
+; Bound: 76
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_i1_ "func_i1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -20,27 +20,26 @@
OpName %x_31_phi "x_31_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%12 = OpTypeFunction %void %_ptr_Function_int
@@ -59,7 +58,7 @@
%int_10 = OpConstant %int 10
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out
%func_i1_ = OpFunction %void None %12
%x = OpFunctionParameter %_ptr_Function_int
%17 = OpLabel
@@ -121,18 +120,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %65
-%tint_symbol = OpFunctionParameter %main_out
- %69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %70
- OpReturn
+ %main_inner = OpFunction %main_out None %65
+ %68 = OpLabel
+ %69 = OpFunctionCall %void %main_1
+ %70 = OpLoad %v4float %x_GLF_color
+ %71 = OpCompositeConstruct %main_out %70
+ OpReturnValue %71
OpFunctionEnd
%main = OpFunction %void None %40
- %72 = OpLabel
- %73 = OpFunctionCall %void %main_1
- %75 = OpLoad %v4float %x_GLF_color
- %76 = OpCompositeConstruct %main_out %75
- %74 = OpFunctionCall %void %tint_symbol_2 %76
+ %73 = OpLabel
+ %74 = OpFunctionCall %main_out %main_inner
+ %75 = OpCompositeExtract %v4float %74 0
+ OpStore %x_GLF_color_1_1 %75
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.spvasm.expected.spvasm
index b497a16..f1c0d30 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "five"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -22,31 +22,31 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float
%float_5 = OpConstant %float 5
@@ -69,7 +69,7 @@
%83 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%84 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out %v4float
%func_f1_ = OpFunction %float None %15
%x = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -150,20 +150,20 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %85
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %85
+%gl_FragCoord_param = OpFunctionParameter %v4float
%89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %90
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %47
- %92 = OpLabel
- %93 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %93
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_3 %97
+ %94 = OpLabel
+ %96 = OpLoad %v4float %gl_FragCoord_param_1
+ %95 = OpFunctionCall %main_out %main_inner %96
+ %97 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %97
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.wgsl.expected.spvasm
index b497a16..f1c0d30 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-wrap-op-kill-two-branches/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "five"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_f1_ "func_f1_"
OpName %x "x"
OpName %main_1 "main_1"
@@ -22,31 +22,31 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float
%float_5 = OpConstant %float 5
@@ -69,7 +69,7 @@
%83 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%84 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out %v4float
%func_f1_ = OpFunction %float None %15
%x = OpFunctionParameter %_ptr_Function_float
%19 = OpLabel
@@ -150,20 +150,20 @@
%80 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %85
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %85
+%gl_FragCoord_param = OpFunctionParameter %v4float
%89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %90
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %90 = OpFunctionCall %void %main_1
+ %91 = OpLoad %v4float %x_GLF_color
+ %92 = OpCompositeConstruct %main_out %91
+ OpReturnValue %92
OpFunctionEnd
%main = OpFunction %void None %47
- %92 = OpLabel
- %93 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %93
- %94 = OpFunctionCall %void %main_1
- %96 = OpLoad %v4float %x_GLF_color
- %97 = OpCompositeConstruct %main_out %96
- %95 = OpFunctionCall %void %tint_symbol_3 %97
+ %94 = OpLabel
+ %96 = OpLoad %v4float %gl_FragCoord_param_1
+ %95 = OpFunctionCall %main_out %main_inner %96
+ %97 = OpCompositeExtract %v4float %95 0
+ OpStore %x_GLF_color_1_1 %97
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.spvasm.expected.spvasm
index 47ebb6d..62fe687 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m32 "m32"
OpName %sums "sums"
@@ -22,9 +22,9 @@
OpName %x_53 "x_53"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,10 +37,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -82,7 +81,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m32 = OpVariable %_ptr_Function_mat3v2float Function %28
@@ -151,18 +150,17 @@
OpStore %x_GLF_color %87
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %20
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.wgsl.expected.spvasm
index 47ebb6d..62fe687 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-write-past-matrix-elements-unused/0.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 100
+; Bound: 99
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m32 "m32"
OpName %sums "sums"
@@ -22,9 +22,9 @@
OpName %x_53 "x_53"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_2 ArrayStride 16
@@ -37,10 +37,13 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_3 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_float_uint_2 = OpTypeArray %float %uint_2
@@ -53,12 +56,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_3
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -82,7 +81,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %88 = OpTypeFunction %void %main_out
+ %88 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%m32 = OpVariable %_ptr_Function_mat3v2float Function %28
@@ -151,18 +150,17 @@
OpStore %x_GLF_color %87
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %88
-%tint_symbol = OpFunctionParameter %main_out
- %92 = OpLabel
- %93 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %93
- OpReturn
+ %main_inner = OpFunction %main_out None %88
+ %91 = OpLabel
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %20
- %95 = OpLabel
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_2 %99
+ %96 = OpLabel
+ %97 = OpFunctionCall %main_out %main_inner
+ %98 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %98
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.spvasm.expected.spvasm
index 43172e9..09748fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
%38 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %x_54 "x_54"
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,17 +50,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -75,7 +74,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %26
@@ -140,18 +139,17 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %19
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.wgsl.expected.spvasm
index 43172e9..09748fb 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-apfloat-nan-cos-cos/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 97
+; Bound: 96
; Schema: 0
OpCapability Shader
%38 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_6 "x_6"
@@ -15,16 +16,15 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_8 "x_8"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %v1 "v1"
OpName %x_54 "x_54"
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
@@ -37,8 +37,12 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 1
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -46,17 +50,12 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_arr_float_uint_2 = OpTypeArray %float %uint_2
%buf1 = OpTypeStruct %_arr_float_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_8 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
%void = OpTypeVoid
%19 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -75,7 +74,7 @@
%_ptr_Uniform_float = OpTypePointer Uniform %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %85 = OpTypeFunction %void %main_out
+ %85 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %19
%22 = OpLabel
%v1 = OpVariable %_ptr_Function_v2float Function %26
@@ -140,18 +139,17 @@
%65 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %85
-%tint_symbol = OpFunctionParameter %main_out
- %89 = OpLabel
- %90 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %90
- OpReturn
+ %main_inner = OpFunction %main_out None %85
+ %88 = OpLabel
+ %89 = OpFunctionCall %void %main_1
+ %90 = OpLoad %v4float %x_GLF_color
+ %91 = OpCompositeConstruct %main_out %90
+ OpReturnValue %91
OpFunctionEnd
%main = OpFunction %void None %19
- %92 = OpLabel
- %93 = OpFunctionCall %void %main_1
- %95 = OpLoad %v4float %x_GLF_color
- %96 = OpCompositeConstruct %main_out %95
- %94 = OpFunctionCall %void %tint_symbol_2 %96
+ %93 = OpLabel
+ %94 = OpFunctionCall %main_out %main_inner
+ %95 = OpCompositeExtract %v4float %94 0
+ OpStore %x_GLF_color_1_1 %95
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.spvasm.expected.spvasm
index 8b2693b..e73d4a6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -17,16 +18,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_uint_uint_2 ArrayStride 16
@@ -45,31 +45,30 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_uint_uint_2 = OpTypeArray %uint %uint_2
%buf1 = OpTypeStruct %_arr_uint_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf2 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -84,7 +83,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %30
@@ -133,18 +132,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %24
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.wgsl.expected.spvasm
index 8b2693b..e73d4a6 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-machine-value-type-uint-to-float/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_uint_values"
OpName %x_6 "x_6"
@@ -17,16 +18,15 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_12 "x_12"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %a "a"
OpName %b "b"
OpName %c "c"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_uint_uint_2 ArrayStride 16
@@ -45,31 +45,30 @@
OpDecorate %x_12 NonWritable
OpDecorate %x_12 DescriptorSet 0
OpDecorate %x_12 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%_arr_uint_uint_2 = OpTypeArray %uint %uint_2
%buf1 = OpTypeStruct %_arr_uint_uint_2
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_6 = OpVariable %_ptr_Uniform_buf1 Uniform
- %float = OpTypeFloat 32
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%buf2 = OpTypeStruct %_arr_float_uint_1
%_ptr_Uniform_buf2 = OpTypePointer Uniform %buf2
%x_8 = OpVariable %_ptr_Uniform_buf2 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%_arr_int_uint_2 = OpTypeArray %int %uint_2
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_12 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %16
%void = OpTypeVoid
%24 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -84,7 +83,7 @@
%_ptr_Uniform_int = OpTypePointer Uniform %int
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %24
%27 = OpLabel
%a = OpVariable %_ptr_Function_uint Function %30
@@ -133,18 +132,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %24
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.spvasm.expected.spvasm
index 9acf823..37e6c5b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 150
+; Bound: 149
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -23,9 +23,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -38,10 +38,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -81,7 +80,7 @@
%int_2 = OpConstant %int 2
%int_n2147483648 = OpConstant %int -2147483648
%main_out = OpTypeStruct %v4float
- %138 = OpTypeFunction %void %main_out
+ %138 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%A = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -228,18 +227,17 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %138
-%tint_symbol = OpFunctionParameter %main_out
- %142 = OpLabel
- %143 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %143
- OpReturn
+ %main_inner = OpFunction %main_out None %138
+ %141 = OpLabel
+ %142 = OpFunctionCall %void %main_1
+ %143 = OpLoad %v4float %x_GLF_color
+ %144 = OpCompositeConstruct %main_out %143
+ OpReturnValue %144
OpFunctionEnd
%main = OpFunction %void None %20
- %145 = OpLabel
- %146 = OpFunctionCall %void %main_1
- %148 = OpLoad %v4float %x_GLF_color
- %149 = OpCompositeConstruct %main_out %148
- %147 = OpFunctionCall %void %tint_symbol_2 %149
+ %146 = OpLabel
+ %147 = OpFunctionCall %main_out %main_inner
+ %148 = OpCompositeExtract %v4float %147 0
+ OpStore %x_GLF_color_1_1 %148
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.wgsl.expected.spvasm
index 9acf823..37e6c5b 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-negative-left-shift/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 150
+; Bound: 149
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "x_GLF_uniform_float_values"
OpName %x_6 "x_6"
@@ -14,7 +15,6 @@
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -23,9 +23,9 @@
OpName %x_102_phi "x_102_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %_arr_float_uint_3 ArrayStride 16
@@ -38,10 +38,13 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
@@ -54,12 +57,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_4
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_2 = OpConstant %uint 2
@@ -81,7 +80,7 @@
%int_2 = OpConstant %int 2
%int_n2147483648 = OpConstant %int -2147483648
%main_out = OpTypeStruct %v4float
- %138 = OpTypeFunction %void %main_out
+ %138 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%A = OpVariable %_ptr_Function__arr_float_uint_2 Function %28
@@ -228,18 +227,17 @@
%118 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %138
-%tint_symbol = OpFunctionParameter %main_out
- %142 = OpLabel
- %143 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %143
- OpReturn
+ %main_inner = OpFunction %main_out None %138
+ %141 = OpLabel
+ %142 = OpFunctionCall %void %main_1
+ %143 = OpLoad %v4float %x_GLF_color
+ %144 = OpCompositeConstruct %main_out %143
+ OpReturnValue %144
OpFunctionEnd
%main = OpFunction %void None %20
- %145 = OpLabel
- %146 = OpFunctionCall %void %main_1
- %148 = OpLoad %v4float %x_GLF_color
- %149 = OpCompositeConstruct %main_out %148
- %147 = OpFunctionCall %void %tint_symbol_2 %149
+ %146 = OpLabel
+ %147 = OpFunctionCall %main_out %main_inner
+ %148 = OpCompositeExtract %v4float %147 0
+ OpStore %x_GLF_color_1_1 %148
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.spvasm.expected.spvasm
index d53643b..f542eb9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 108
+; Bound: 107
; Schema: 0
OpCapability Shader
%66 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "a"
@@ -21,21 +21,25 @@
OpName %A "A"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpDecorate %_arr_S_uint_2 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%S = OpTypeStruct %int %int %int
@@ -66,7 +65,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%A = OpVariable %_ptr_Function__arr_S_uint_2 Function %23
@@ -146,18 +145,17 @@
%76 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %96
-%tint_symbol = OpFunctionParameter %main_out
- %100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %101
- OpReturn
+ %main_inner = OpFunction %main_out None %96
+ %99 = OpLabel
+ %100 = OpFunctionCall %void %main_1
+ %101 = OpLoad %v4float %x_GLF_color
+ %102 = OpCompositeConstruct %main_out %101
+ OpReturnValue %102
OpFunctionEnd
%main = OpFunction %void None %15
- %103 = OpLabel
- %104 = OpFunctionCall %void %main_1
- %106 = OpLoad %v4float %x_GLF_color
- %107 = OpCompositeConstruct %main_out %106
- %105 = OpFunctionCall %void %tint_symbol_2 %107
+ %104 = OpLabel
+ %105 = OpFunctionCall %main_out %main_inner
+ %106 = OpCompositeExtract %v4float %105 0
+ OpStore %x_GLF_color_1_1 %106
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.wgsl.expected.spvasm
index d53643b..f542eb9 100644
--- a/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/cov-x86-isel-lowering-selection-dag-struct-array-clamp-index/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 108
+; Bound: 107
; Schema: 0
OpCapability Shader
%66 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "x_GLF_uniform_int_values"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "a"
@@ -21,21 +21,25 @@
OpName %A "A"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %_arr_int_uint_2 ArrayStride 16
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 8
OpDecorate %_arr_S_uint_2 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
@@ -43,13 +47,8 @@
%buf0 = OpTypeStruct %_arr_int_uint_2
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%S = OpTypeStruct %int %int %int
@@ -66,7 +65,7 @@
%bool = OpTypeBool
%int_2 = OpConstant %int 2
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %15
%18 = OpLabel
%A = OpVariable %_ptr_Function__arr_S_uint_2 Function %23
@@ -146,18 +145,17 @@
%76 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %96
-%tint_symbol = OpFunctionParameter %main_out
- %100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %101
- OpReturn
+ %main_inner = OpFunction %main_out None %96
+ %99 = OpLabel
+ %100 = OpFunctionCall %void %main_1
+ %101 = OpLoad %v4float %x_GLF_color
+ %102 = OpCompositeConstruct %main_out %101
+ OpReturnValue %102
OpFunctionEnd
%main = OpFunction %void None %15
- %103 = OpLabel
- %104 = OpFunctionCall %void %main_1
- %106 = OpLoad %v4float %x_GLF_color
- %107 = OpCompositeConstruct %main_out %106
- %105 = OpFunctionCall %void %tint_symbol_2 %107
+ %104 = OpLabel
+ %105 = OpFunctionCall %main_out %main_inner
+ %106 = OpCompositeExtract %v4float %105 0
+ OpStore %x_GLF_color_1_1 %106
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.spvasm.expected.spvasm
index b6030fb..7e05fdd 100644
--- a/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %v "v"
OpName %floats "floats"
@@ -24,32 +24,32 @@
OpName %x_103_phi "x_103_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -80,7 +80,7 @@
%116 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%117 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %118 = OpTypeFunction %void %main_out
+ %118 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %21
@@ -208,20 +208,20 @@
%101 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %118
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %118
+%gl_FragCoord_param = OpFunctionParameter %v4float
%122 = OpLabel
- %123 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %123
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %15
- %125 = OpLabel
- %126 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %126
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_3 %130
+ %127 = OpLabel
+ %129 = OpLoad %v4float %gl_FragCoord_param_1
+ %128 = OpFunctionCall %main_out %main_inner %129
+ %130 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %130
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.wgsl.expected.spvasm
index b6030fb..7e05fdd 100644
--- a/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/create-color-in-do-while-for-loop/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %v "v"
OpName %floats "floats"
@@ -24,32 +24,32 @@
OpName %x_103_phi "x_103_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -80,7 +80,7 @@
%116 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%117 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %118 = OpTypeFunction %void %main_out
+ %118 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%v = OpVariable %_ptr_Function_v2float Function %21
@@ -208,20 +208,20 @@
%101 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %118
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %118
+%gl_FragCoord_param = OpFunctionParameter %v4float
%122 = OpLabel
- %123 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %123
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %123 = OpFunctionCall %void %main_1
+ %124 = OpLoad %v4float %x_GLF_color
+ %125 = OpCompositeConstruct %main_out %124
+ OpReturnValue %125
OpFunctionEnd
%main = OpFunction %void None %15
- %125 = OpLabel
- %126 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %126
- %127 = OpFunctionCall %void %main_1
- %129 = OpLoad %v4float %x_GLF_color
- %130 = OpCompositeConstruct %main_out %129
- %128 = OpFunctionCall %void %tint_symbol_3 %130
+ %127 = OpLabel
+ %129 = OpLoad %v4float %gl_FragCoord_param_1
+ %128 = OpFunctionCall %main_out %main_inner %129
+ %130 = OpCompositeExtract %v4float %128 0
+ OpStore %x_GLF_color_1_1 %130
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.spvasm.expected.spvasm
index 6e67011..e7152d6 100644
--- a/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %x_51 "x_51"
OpName %main_1 "main_1"
OpName %x_31 "x_31"
@@ -22,27 +22,26 @@
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -60,7 +59,7 @@
%66 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %81 = OpTypeFunction %void %main_out
+ %81 = OpTypeFunction %main_out
%x_51 = OpFunction %void None %12
%15 = OpLabel
OpKill
@@ -70,9 +69,9 @@
%x_31 = OpVariable %_ptr_Function_bool Function %25
%x_30_phi = OpVariable %_ptr_Function_bool Function %25
%x_31_phi = OpVariable %_ptr_Function_bool Function %25
- %x_52 = OpVariable %_ptr_Function_v4float Function %9
- %x_54 = OpVariable %_ptr_Function_v4float Function %9
- %x_55_phi = OpVariable %_ptr_Function_v4float Function %9
+ %x_52 = OpVariable %_ptr_Function_v4float Function %5
+ %x_54 = OpVariable %_ptr_Function_v4float Function %5
+ %x_55_phi = OpVariable %_ptr_Function_v4float Function %5
OpBranch %18
%18 = OpLabel
OpLoopMerge %19 %20 None
@@ -162,18 +161,17 @@
%19 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %81
-%tint_symbol = OpFunctionParameter %main_out
- %85 = OpLabel
- %86 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %86
- OpReturn
+ %main_inner = OpFunction %main_out None %81
+ %84 = OpLabel
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %12
- %88 = OpLabel
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %89 = OpLabel
+ %90 = OpFunctionCall %main_out %main_inner
+ %91 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %91
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.wgsl.expected.spvasm
index 6e67011..e7152d6 100644
--- a/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/disc-and-add-in-func-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 93
+; Bound: 92
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %x_51 "x_51"
OpName %main_1 "main_1"
OpName %x_31 "x_31"
@@ -22,27 +22,26 @@
OpName %x_55_phi "x_55_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -60,7 +59,7 @@
%66 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %81 = OpTypeFunction %void %main_out
+ %81 = OpTypeFunction %main_out
%x_51 = OpFunction %void None %12
%15 = OpLabel
OpKill
@@ -70,9 +69,9 @@
%x_31 = OpVariable %_ptr_Function_bool Function %25
%x_30_phi = OpVariable %_ptr_Function_bool Function %25
%x_31_phi = OpVariable %_ptr_Function_bool Function %25
- %x_52 = OpVariable %_ptr_Function_v4float Function %9
- %x_54 = OpVariable %_ptr_Function_v4float Function %9
- %x_55_phi = OpVariable %_ptr_Function_v4float Function %9
+ %x_52 = OpVariable %_ptr_Function_v4float Function %5
+ %x_54 = OpVariable %_ptr_Function_v4float Function %5
+ %x_55_phi = OpVariable %_ptr_Function_v4float Function %5
OpBranch %18
%18 = OpLabel
OpLoopMerge %19 %20 None
@@ -162,18 +161,17 @@
%19 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %81
-%tint_symbol = OpFunctionParameter %main_out
- %85 = OpLabel
- %86 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %86
- OpReturn
+ %main_inner = OpFunction %main_out None %81
+ %84 = OpLabel
+ %85 = OpFunctionCall %void %main_1
+ %86 = OpLoad %v4float %x_GLF_color
+ %87 = OpCompositeConstruct %main_out %86
+ OpReturnValue %87
OpFunctionEnd
%main = OpFunction %void None %12
- %88 = OpLabel
- %89 = OpFunctionCall %void %main_1
- %91 = OpLoad %v4float %x_GLF_color
- %92 = OpCompositeConstruct %main_out %91
- %90 = OpFunctionCall %void %tint_symbol_2 %92
+ %89 = OpLabel
+ %90 = OpFunctionCall %main_out %main_inner
+ %91 = OpCompositeExtract %v4float %90 0
+ OpStore %x_GLF_color_1_1 %91
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.spvasm.expected.spvasm
index 75a7f74..ef78faf 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.spvasm.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -59,7 +59,7 @@
%false = OpConstantFalse %bool
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_46_phi = OpVariable %_ptr_Function_bool Function %26
@@ -110,20 +110,20 @@
OpStore %x_GLF_color %54
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %55
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %55
+%gl_FragCoord_param = OpFunctionParameter %v4float
%59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %60
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %63
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_3 %67
+ %64 = OpLabel
+ %66 = OpLoad %v4float %gl_FragCoord_param_1
+ %65 = OpFunctionCall %main_out %main_inner %66
+ %67 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.wgsl.expected.spvasm
index 75a7f74..ef78faf 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-continue-return/0-opt.wgsl.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -59,7 +59,7 @@
%false = OpConstantFalse %bool
%54 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_46_phi = OpVariable %_ptr_Function_bool Function %26
@@ -110,20 +110,20 @@
OpStore %x_GLF_color %54
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %55
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %55
+%gl_FragCoord_param = OpFunctionParameter %v4float
%59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %60
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %60 = OpFunctionCall %void %main_1
+ %61 = OpLoad %v4float %x_GLF_color
+ %62 = OpCompositeConstruct %main_out %61
+ OpReturnValue %62
OpFunctionEnd
%main = OpFunction %void None %15
- %62 = OpLabel
- %63 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %63
- %64 = OpFunctionCall %void %main_1
- %66 = OpLoad %v4float %x_GLF_color
- %67 = OpCompositeConstruct %main_out %66
- %65 = OpFunctionCall %void %tint_symbol_3 %67
+ %64 = OpLabel
+ %66 = OpLoad %v4float %gl_FragCoord_param_1
+ %65 = OpFunctionCall %main_out %main_inner %66
+ %67 = OpCompositeExtract %v4float %65 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.spvasm.expected.spvasm
index ca3016a..0094e72 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.spvasm.expected.spvasm
@@ -5,34 +5,34 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -63,7 +63,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %20
@@ -110,20 +110,20 @@
OpStore %x_GLF_color %66
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %67
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %67
+%gl_FragCoord_param = OpFunctionParameter %v4float
%71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %72
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %11
- %74 = OpLabel
- %75 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %75
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_3 %79
+ %76 = OpLabel
+ %78 = OpLoad %v4float %gl_FragCoord_param_1
+ %77 = OpFunctionCall %main_out %main_inner %78
+ %79 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %79
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.wgsl.expected.spvasm
index ca3016a..0094e72 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-array-manipulating-loop/0-opt.wgsl.expected.spvasm
@@ -5,34 +5,34 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -63,7 +63,7 @@
%_ptr_Function_float = OpTypePointer Function %float
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %20
@@ -110,20 +110,20 @@
OpStore %x_GLF_color %66
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %67
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %67
+%gl_FragCoord_param = OpFunctionParameter %v4float
%71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %72
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %11
- %74 = OpLabel
- %75 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %75
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_3 %79
+ %76 = OpLabel
+ %78 = OpLoad %v4float %gl_FragCoord_param_1
+ %77 = OpFunctionCall %main_out %main_inner %78
+ %79 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %79
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.spvasm.expected.spvasm
index 95c10d6..e9214d4 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.spvasm.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f_ "f_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -56,7 +56,7 @@
%false = OpConstantFalse %bool
%46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out %v4float
%f_ = OpFunction %void None %15
%18 = OpLabel
OpBranch %19
@@ -94,20 +94,20 @@
OpStore %x_GLF_color %46
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %47
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %47
+%gl_FragCoord_param = OpFunctionParameter %v4float
%51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %52
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %15
- %54 = OpLabel
- %55 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %55
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_3 %59
+ %56 = OpLabel
+ %58 = OpLoad %v4float %gl_FragCoord_param_1
+ %57 = OpFunctionCall %main_out %main_inner %58
+ %59 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.wgsl.expected.spvasm
index 95c10d6..e9214d4 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-loop-in-function/0-opt.wgsl.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f_ "f_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -56,7 +56,7 @@
%false = OpConstantFalse %bool
%46 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out %v4float
%f_ = OpFunction %void None %15
%18 = OpLabel
OpBranch %19
@@ -94,20 +94,20 @@
OpStore %x_GLF_color %46
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %47
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %47
+%gl_FragCoord_param = OpFunctionParameter %v4float
%51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %52
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %15
- %54 = OpLabel
- %55 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %55
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_3 %59
+ %56 = OpLabel
+ %58 = OpLoad %v4float %gl_FragCoord_param_1
+ %57 = OpFunctionCall %main_out %main_inner %58
+ %59 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.spvasm.expected.spvasm
index fb9fd81..f839726 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %x_47 "x_47"
OpName %main_1 "main_1"
OpName %x_30_phi "x_30_phi"
@@ -18,22 +18,22 @@
OpName %x_31 "x_31"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -55,7 +55,7 @@
%float_1 = OpConstant %float 1
%67 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out %v4float
%x_47 = OpFunction %void None %11
%14 = OpLabel
OpKill
@@ -128,20 +128,20 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %68
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %68
+%gl_FragCoord_param = OpFunctionParameter %v4float
%72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %73
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %11
- %75 = OpLabel
- %76 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %76
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_3 %80
+ %77 = OpLabel
+ %79 = OpLoad %v4float %gl_FragCoord_param_1
+ %78 = OpFunctionCall %main_out %main_inner %79
+ %80 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.wgsl.expected.spvasm
index fb9fd81..f839726 100644
--- a/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discard-in-loop/0-opt.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %x_47 "x_47"
OpName %main_1 "main_1"
OpName %x_30_phi "x_30_phi"
@@ -18,22 +18,22 @@
OpName %x_31 "x_31"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -55,7 +55,7 @@
%float_1 = OpConstant %float 1
%67 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out %v4float
%x_47 = OpFunction %void None %11
%14 = OpLabel
OpKill
@@ -128,20 +128,20 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %68
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %68
+%gl_FragCoord_param = OpFunctionParameter %v4float
%72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %73
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %11
- %75 = OpLabel
- %76 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %76
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_3 %80
+ %77 = OpLabel
+ %79 = OpLoad %v4float %gl_FragCoord_param_1
+ %78 = OpFunctionCall %main_out %main_inner %79
+ %80 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.spvasm.expected.spvasm
index 1a87cf4..ff81c93 100644
--- a/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.spvasm.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %ll "ll"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +48,7 @@
%int_5 = OpConstant %int 5
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%ll = OpVariable %_ptr_Function_int Function %18
@@ -103,20 +103,20 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %58
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %58
+%gl_FragCoord_param = OpFunctionParameter %v4float
%62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %63
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %11
- %65 = OpLabel
- %66 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_3 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %gl_FragCoord_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69
+ %70 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.wgsl.expected.spvasm
index 1a87cf4..ff81c93 100644
--- a/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/discards-in-control-flow/0-opt.wgsl.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %ll "ll"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +48,7 @@
%int_5 = OpConstant %int 5
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%ll = OpVariable %_ptr_Function_int Function %18
@@ -103,20 +103,20 @@
%31 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %58
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %58
+%gl_FragCoord_param = OpFunctionParameter %v4float
%62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %63
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %v4float %x_GLF_color
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %11
- %65 = OpLabel
- %66 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %v4float %x_GLF_color
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_3 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %gl_FragCoord_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69
+ %70 = OpCompositeExtract %v4float %68 0
+ OpStore %x_GLF_color_1_1 %70
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.spvasm.expected.spvasm
index 2c77aec..fae65db 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_ "f_"
OpName %iteration "iteration"
OpName %k "k"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -43,7 +42,7 @@
%void = OpTypeVoid
%58 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%f_ = OpFunction %v3float None %8
%11 = OpLabel
%iteration = OpVariable %_ptr_Function_int Function %15
@@ -120,18 +119,17 @@
OpStore %x_GLF_color %66
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %58
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.wgsl.expected.spvasm
index 2c77aec..fae65db 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-false-loops/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_ "f_"
OpName %iteration "iteration"
OpName %k "k"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -43,7 +42,7 @@
%void = OpTypeVoid
%58 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%f_ = OpFunction %v3float None %8
%11 = OpLabel
%iteration = OpVariable %_ptr_Function_int Function %15
@@ -120,18 +119,17 @@
OpStore %x_GLF_color %66
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %58
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.spvasm.expected.spvasm
index 8b3fe7b..85a1114 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %loop_count "loop_count"
OpName %x_38_phi "x_38_phi"
@@ -20,27 +20,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%74 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%75 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%func_ = OpFunction %int None %12
%15 = OpLabel
%loop_count = OpVariable %_ptr_Function_int Function %18
@@ -141,18 +140,17 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %63
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.wgsl.expected.spvasm
index 8b3fe7b..85a1114 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-if-return/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %loop_count "loop_count"
OpName %x_38_phi "x_38_phi"
@@ -20,27 +20,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
@@ -60,7 +59,7 @@
%74 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%75 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%func_ = OpFunction %int None %12
%15 = OpLabel
%loop_count = OpVariable %_ptr_Function_int Function %18
@@ -141,18 +140,17 @@
%69 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %63
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.spvasm.expected.spvasm
index 927d38c..c60a59b 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.spvasm.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -41,7 +41,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpStore %x_GLF_color %17
@@ -73,20 +73,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %37
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %37
+%gl_FragCoord_param = OpFunctionParameter %v4float
%41 = OpLabel
- %42 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %42
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %44 = OpLabel
- %45 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %45
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_3 %49
+ %46 = OpLabel
+ %48 = OpLoad %v4float %gl_FragCoord_param_1
+ %47 = OpFunctionCall %main_out %main_inner %48
+ %49 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.wgsl.expected.spvasm
index 927d38c..c60a59b 100644
--- a/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/do-while-loop-in-conditionals/0-opt.wgsl.expected.spvasm
@@ -5,31 +5,31 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -41,7 +41,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
OpStore %x_GLF_color %17
@@ -73,20 +73,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %37
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %37
+%gl_FragCoord_param = OpFunctionParameter %v4float
%41 = OpLabel
- %42 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %42
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %11
- %44 = OpLabel
- %45 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %45
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_3 %49
+ %46 = OpLabel
+ %48 = OpLoad %v4float %gl_FragCoord_param_1
+ %47 = OpFunctionCall %main_out %main_inner %48
+ %49 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %49
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.spvasm.expected.spvasm
index ddaaf92..368cfc2 100644
--- a/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.spvasm.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %loop_count "loop_count"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -62,7 +62,7 @@
%63 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %87 = OpTypeFunction %void %main_out
+ %87 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%loop_count = OpVariable %_ptr_Function_int Function %22
@@ -172,20 +172,20 @@
%84 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %87
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %87
+%gl_FragCoord_param = OpFunctionParameter %v4float
%91 = OpLabel
- %92 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %92
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %15
- %94 = OpLabel
- %95 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %95
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_3 %99
+ %96 = OpLabel
+ %98 = OpLoad %v4float %gl_FragCoord_param_1
+ %97 = OpFunctionCall %main_out %main_inner %98
+ %99 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %99
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.wgsl.expected.spvasm
index ddaaf92..368cfc2 100644
--- a/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/flag-always-false-if/0-opt.wgsl.expected.spvasm
@@ -5,44 +5,44 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %loop_count "loop_count"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -62,7 +62,7 @@
%63 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %87 = OpTypeFunction %void %main_out
+ %87 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%loop_count = OpVariable %_ptr_Function_int Function %22
@@ -172,20 +172,20 @@
%84 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %87
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %87
+%gl_FragCoord_param = OpFunctionParameter %v4float
%91 = OpLabel
- %92 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %92
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %92 = OpFunctionCall %void %main_1
+ %93 = OpLoad %v4float %x_GLF_color
+ %94 = OpCompositeConstruct %main_out %93
+ OpReturnValue %94
OpFunctionEnd
%main = OpFunction %void None %15
- %94 = OpLabel
- %95 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %95
- %96 = OpFunctionCall %void %main_1
- %98 = OpLoad %v4float %x_GLF_color
- %99 = OpCompositeConstruct %main_out %98
- %97 = OpFunctionCall %void %tint_symbol_3 %99
+ %96 = OpLabel
+ %98 = OpLoad %v4float %gl_FragCoord_param_1
+ %97 = OpFunctionCall %main_out %main_inner %98
+ %99 = OpCompositeExtract %v4float %97 0
+ OpStore %x_GLF_color_1_1 %99
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.spvasm.expected.spvasm
index 945adf2..ed87ecd 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_1_1 "color_1_1"
OpName %color "color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %drawShape_vf2_ "drawShape_vf2_"
OpName %pos "pos"
OpName %c3 "c3"
@@ -17,18 +17,17 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+ %color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -49,7 +48,7 @@
%float_0 = OpConstant %float 0
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%drawShape_vf2_ = OpFunction %v3float None %8
%pos = OpFunctionParameter %_ptr_Function_v2float
%14 = OpLabel
@@ -88,18 +87,17 @@
OpStore %color %48
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %38
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.wgsl.expected.spvasm
index 945adf2..ed87ecd 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-condition-always-false/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_1_1 "color_1_1"
OpName %color "color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %drawShape_vf2_ "drawShape_vf2_"
OpName %pos "pos"
OpName %c3 "c3"
@@ -17,18 +17,17 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+ %color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%v2float = OpTypeVector %float 2
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -49,7 +48,7 @@
%float_0 = OpConstant %float 0
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%drawShape_vf2_ = OpFunction %v3float None %8
%pos = OpFunctionParameter %_ptr_Function_v2float
%14 = OpLabel
@@ -88,18 +87,17 @@
OpStore %color %48
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %38
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.spvasm.expected.spvasm
index 3e35963..62f9638 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.spvasm.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%float_1 = OpConstant %float 1
@@ -35,7 +34,7 @@
%20 = OpTypeFunction %void
%29 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %30 = OpTypeFunction %void %main_out
+ %30 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %8
%11 = OpLabel
OpBranch %12
@@ -64,18 +63,17 @@
%26 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %main_out
- %34 = OpLabel
- %35 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %35
- OpReturn
+ %main_inner = OpFunction %main_out None %30
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %x_GLF_color
+ %36 = OpCompositeConstruct %main_out %35
+ OpReturnValue %36
OpFunctionEnd
%main = OpFunction %void None %20
- %37 = OpLabel
- %38 = OpFunctionCall %void %main_1
- %40 = OpLoad %v4float %x_GLF_color
- %41 = OpCompositeConstruct %main_out %40
- %39 = OpFunctionCall %void %tint_symbol_2 %41
+ %38 = OpLabel
+ %39 = OpFunctionCall %main_out %main_inner
+ %40 = OpCompositeExtract %v4float %39 0
+ OpStore %x_GLF_color_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.wgsl.expected.spvasm
index 3e35963..62f9638 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-loop-with-return/0.wgsl.expected.spvasm
@@ -1,30 +1,29 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 41
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%float_1 = OpConstant %float 1
@@ -35,7 +34,7 @@
%20 = OpTypeFunction %void
%29 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %30 = OpTypeFunction %void %main_out
+ %30 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %8
%11 = OpLabel
OpBranch %12
@@ -64,18 +63,17 @@
%26 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %30
-%tint_symbol = OpFunctionParameter %main_out
- %34 = OpLabel
- %35 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %35
- OpReturn
+ %main_inner = OpFunction %main_out None %30
+ %33 = OpLabel
+ %34 = OpFunctionCall %void %main_1
+ %35 = OpLoad %v4float %x_GLF_color
+ %36 = OpCompositeConstruct %main_out %35
+ OpReturnValue %36
OpFunctionEnd
%main = OpFunction %void None %20
- %37 = OpLabel
- %38 = OpFunctionCall %void %main_1
- %40 = OpLoad %v4float %x_GLF_color
- %41 = OpCompositeConstruct %main_out %40
- %39 = OpFunctionCall %void %tint_symbol_2 %41
+ %38 = OpLabel
+ %39 = OpFunctionCall %main_out %main_inner
+ %40 = OpCompositeExtract %v4float %39 0
+ OpStore %x_GLF_color_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.spvasm.expected.spvasm
index 42a7dcd..29dda82 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.spvasm.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -49,7 +49,7 @@
%float_226_695999 = OpConstant %float 226.695999
%49 = OpConstantComposite %v4float %float_226_695999 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -95,20 +95,20 @@
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %52
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %52
+%gl_FragCoord_param = OpFunctionParameter %v4float
%56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %57
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %11
- %59 = OpLabel
- %60 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %60
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_3 %64
+ %61 = OpLabel
+ %63 = OpLoad %v4float %gl_FragCoord_param_1
+ %62 = OpFunctionCall %main_out %main_inner %63
+ %64 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.wgsl.expected.spvasm
index 42a7dcd..29dda82 100644
--- a/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/for-with-ifs-and-return/0-opt.wgsl.expected.spvasm
@@ -5,32 +5,32 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -49,7 +49,7 @@
%float_226_695999 = OpConstant %float 226.695999
%49 = OpConstantComposite %v4float %float_226_695999 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %52 = OpTypeFunction %void %main_out
+ %52 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%i = OpVariable %_ptr_Function_int Function %18
@@ -95,20 +95,20 @@
%24 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %52
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %52
+%gl_FragCoord_param = OpFunctionParameter %v4float
%56 = OpLabel
- %57 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %57
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %11
- %59 = OpLabel
- %60 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %60
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_3 %64
+ %61 = OpLabel
+ %63 = OpLoad %v4float %gl_FragCoord_param_1
+ %62 = OpFunctionCall %main_out %main_inner %63
+ %64 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.spvasm.expected.spvasm
index a6c6ca5..0c9f169 100644
--- a/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_43 "x_43"
OpName %x_44 "x_44"
@@ -24,36 +24,36 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %alwaysZero_vf2_ "alwaysZero_vf2_"
OpName %coord "coord"
OpName %a "a"
OpName %x_110 "x_110"
OpName %b "b"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -78,7 +78,7 @@
%74 = OpConstantComposite %v4float %float_0 %float_1 %float_1 %float_1
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out %v4float
%126 = OpTypeFunction %int %_ptr_Function_v2float
%main_1 = OpFunction %void None %15
%18 = OpLabel
@@ -197,21 +197,21 @@
%107 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %113
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %113
+%gl_FragCoord_param = OpFunctionParameter %v4float
%117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %118
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %15
- %120 = OpLabel
- %121 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %121
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_3 %125
+ %122 = OpLabel
+ %124 = OpLoad %v4float %gl_FragCoord_param_1
+ %123 = OpFunctionCall %main_out %main_inner %124
+ %125 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %125
OpReturn
OpFunctionEnd
%alwaysZero_vf2_ = OpFunction %int None %126
diff --git a/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.wgsl.expected.spvasm
index a6c6ca5..0c9f169 100644
--- a/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/frag-coord-func-call-and-ifs/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_43 "x_43"
OpName %x_44 "x_44"
@@ -24,36 +24,36 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %alwaysZero_vf2_ "alwaysZero_vf2_"
OpName %coord "coord"
OpName %a "a"
OpName %x_110 "x_110"
OpName %b "b"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -78,7 +78,7 @@
%74 = OpConstantComposite %v4float %float_0 %float_1 %float_1 %float_1
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %113 = OpTypeFunction %void %main_out
+ %113 = OpTypeFunction %main_out %v4float
%126 = OpTypeFunction %int %_ptr_Function_v2float
%main_1 = OpFunction %void None %15
%18 = OpLabel
@@ -197,21 +197,21 @@
%107 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %113
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %113
+%gl_FragCoord_param = OpFunctionParameter %v4float
%117 = OpLabel
- %118 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %118
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %15
- %120 = OpLabel
- %121 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %121
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_3 %125
+ %122 = OpLabel
+ %124 = OpLoad %v4float %gl_FragCoord_param_1
+ %123 = OpFunctionCall %main_out %main_inner %124
+ %125 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %125
OpReturn
OpFunctionEnd
%alwaysZero_vf2_ = OpFunction %int None %126
diff --git a/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.spvasm.expected.spvasm
index 3606a34..8e85648 100644
--- a/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %fx_ "fx_"
OpName %main_1 "main_1"
OpName %x2 "x2"
@@ -21,31 +21,31 @@
OpName %k0 "k0"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
@@ -63,7 +63,7 @@
%48 = OpConstantNull %float
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out %v4float
%fx_ = OpFunction %float None %15
%17 = OpLabel
%21 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_1
@@ -133,20 +133,20 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %68
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %68
+%gl_FragCoord_param = OpFunctionParameter %v4float
%72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %73
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %42
- %75 = OpLabel
- %76 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %76
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_3 %80
+ %77 = OpLabel
+ %79 = OpLoad %v4float %gl_FragCoord_param_1
+ %78 = OpFunctionCall %main_out %main_inner %79
+ %80 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.wgsl.expected.spvasm
index 3606a34..8e85648 100644
--- a/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/function-with-uniform-return/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %fx_ "fx_"
OpName %main_1 "main_1"
OpName %x2 "x2"
@@ -21,31 +21,31 @@
OpName %k0 "k0"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
@@ -63,7 +63,7 @@
%48 = OpConstantNull %float
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out %v4float
%fx_ = OpFunction %float None %15
%17 = OpLabel
%21 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_1
@@ -133,20 +133,20 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %68
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %68
+%gl_FragCoord_param = OpFunctionParameter %v4float
%72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %73
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %73 = OpFunctionCall %void %main_1
+ %74 = OpLoad %v4float %x_GLF_color
+ %75 = OpCompositeConstruct %main_out %74
+ OpReturnValue %75
OpFunctionEnd
%main = OpFunction %void None %42
- %75 = OpLabel
- %76 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %76
- %77 = OpFunctionCall %void %main_1
- %79 = OpLoad %v4float %x_GLF_color
- %80 = OpCompositeConstruct %main_out %79
- %78 = OpFunctionCall %void %tint_symbol_3 %80
+ %77 = OpLabel
+ %79 = OpLoad %v4float %gl_FragCoord_param_1
+ %78 = OpFunctionCall %main_out %main_inner %79
+ %80 = OpCompositeExtract %v4float %78 0
+ OpStore %x_GLF_color_1_1 %80
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.spvasm.expected.spvasm
index 02fd4f3..f8e23e0 100644
--- a/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 204
+; Bound: 203
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_68 "x_68"
OpName %x_29 "x_29"
@@ -40,8 +40,7 @@
OpName %x_22_1 "x_22_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %yieldsZero_ "yieldsZero_"
OpName %x_116 "x_116"
@@ -57,25 +56,25 @@
OpName %x_28_phi "x_28_phi"
OpName %x_26_phi "x_26_phi"
OpName %x_132_phi "x_132_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -106,8 +105,8 @@
%144 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%145 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %146 = OpTypeFunction %void %main_out
- %158 = OpTypeFunction %int
+ %146 = OpTypeFunction %main_out
+ %157 = OpTypeFunction %int
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_68 = OpVariable %_ptr_Function_bool Function %19
@@ -303,23 +302,22 @@
%139 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %146
-%tint_symbol = OpFunctionParameter %main_out
- %150 = OpLabel
- %151 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %151
- OpReturn
+ %main_inner = OpFunction %main_out None %146
+ %149 = OpLabel
+ %150 = OpFunctionCall %void %main_1
+ %151 = OpLoad %v4float %x_GLF_color
+ %152 = OpCompositeConstruct %main_out %151
+ OpReturnValue %152
OpFunctionEnd
%main = OpFunction %void None %11
- %153 = OpLabel
- %154 = OpFunctionCall %void %main_1
- %156 = OpLoad %v4float %x_GLF_color
- %157 = OpCompositeConstruct %main_out %156
- %155 = OpFunctionCall %void %tint_symbol_2 %157
+ %154 = OpLabel
+ %155 = OpFunctionCall %main_out %main_inner
+ %156 = OpCompositeExtract %v4float %155 0
+ OpStore %x_GLF_color_1_1 %156
OpReturn
OpFunctionEnd
-%yieldsZero_ = OpFunction %int None %158
- %160 = OpLabel
+%yieldsZero_ = OpFunction %int None %157
+ %159 = OpLabel
%x_116 = OpVariable %_ptr_Function_bool Function %19
%x_20 = OpVariable %_ptr_Function_int Function %23
%i = OpVariable %_ptr_Function_int Function %23
@@ -335,72 +333,72 @@
%x_132_phi = OpVariable %_ptr_Function_bool Function %19
OpStore %x_116 %false
OpStore %x_118_phi %false
- OpBranch %168
- %168 = OpLabel
- OpLoopMerge %169 %170 None
- OpBranch %171
- %171 = OpLabel
- %178 = OpLoad %bool %x_118_phi
+ OpBranch %167
+ %167 = OpLabel
+ OpLoopMerge %168 %169 None
+ OpBranch %170
+ %170 = OpLabel
+ %177 = OpLoad %bool %x_118_phi
OpStore %i %int_0
- OpStore %x_123_phi %178
+ OpStore %x_123_phi %177
OpStore %x_28_phi %int_0
- OpBranch %179
- %179 = OpLabel
- OpLoopMerge %180 %181 None
- OpBranch %182
- %182 = OpLabel
- %183 = OpLoad %bool %x_123_phi
- OpStore %x_123 %183
- %184 = OpLoad %int %x_28_phi
- OpStore %x_28 %184
- %185 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0
- %186 = OpLoad %float %185
- OpStore %x_26_phi %int_0
- %187 = OpLoad %bool %x_123
- OpStore %x_132_phi %187
- %188 = OpLoad %int %x_28
- %189 = OpConvertFToS %int %186
- %190 = OpSLessThan %bool %188 %189
- OpSelectionMerge %191 None
- OpBranchConditional %190 %192 %193
- %192 = OpLabel
- OpBranch %191
- %193 = OpLabel
- OpBranch %180
- %191 = OpLabel
- OpStore %x_116 %true
- %194 = OpLoad %int %x_28
- OpStore %x_20 %194
- %195 = OpLoad %int %x_28
- OpStore %x_26_phi %195
- OpStore %x_132_phi %true
- OpBranch %180
+ OpBranch %178
+ %178 = OpLabel
+ OpLoopMerge %179 %180 None
+ OpBranch %181
%181 = OpLabel
- OpStore %x_123_phi %false
- OpStore %x_28_phi %int_0
+ %182 = OpLoad %bool %x_123_phi
+ OpStore %x_123 %182
+ %183 = OpLoad %int %x_28_phi
+ OpStore %x_28 %183
+ %184 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0
+ %185 = OpLoad %float %184
+ OpStore %x_26_phi %int_0
+ %186 = OpLoad %bool %x_123
+ OpStore %x_132_phi %186
+ %187 = OpLoad %int %x_28
+ %188 = OpConvertFToS %int %185
+ %189 = OpSLessThan %bool %187 %188
+ OpSelectionMerge %190 None
+ OpBranchConditional %189 %191 %192
+ %191 = OpLabel
+ OpBranch %190
+ %192 = OpLabel
+ OpBranch %179
+ %190 = OpLabel
+ OpStore %x_116 %true
+ %193 = OpLoad %int %x_28
+ OpStore %x_20 %193
+ %194 = OpLoad %int %x_28
+ OpStore %x_26_phi %194
+ OpStore %x_132_phi %true
OpBranch %179
%180 = OpLabel
- %196 = OpLoad %int %x_26_phi
- OpStore %x_26 %196
- %197 = OpLoad %bool %x_132_phi
- %198 = OpLoad %int %x_26
- OpStore %x_27_phi %198
- OpSelectionMerge %199 None
- OpBranchConditional %197 %200 %199
- %200 = OpLabel
- OpBranch %169
+ OpStore %x_123_phi %false
+ OpStore %x_28_phi %int_0
+ OpBranch %178
+ %179 = OpLabel
+ %195 = OpLoad %int %x_26_phi
+ OpStore %x_26 %195
+ %196 = OpLoad %bool %x_132_phi
+ %197 = OpLoad %int %x_26
+ OpStore %x_27_phi %197
+ OpSelectionMerge %198 None
+ OpBranchConditional %196 %199 %198
%199 = OpLabel
+ OpBranch %168
+ %198 = OpLabel
OpStore %x_134 %int_0
OpStore %x_116 %true
+ %200 = OpLoad %int %x_134
+ OpStore %x_20 %200
%201 = OpLoad %int %x_134
- OpStore %x_20 %201
- %202 = OpLoad %int %x_134
- OpStore %x_27_phi %202
- OpBranch %169
- %170 = OpLabel
- OpStore %x_118_phi %false
+ OpStore %x_27_phi %201
OpBranch %168
%169 = OpLabel
- %203 = OpLoad %int %x_27_phi
- OpReturnValue %203
+ OpStore %x_118_phi %false
+ OpBranch %167
+ %168 = OpLabel
+ %202 = OpLoad %int %x_27_phi
+ OpReturnValue %202
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.wgsl.expected.spvasm
index 02fd4f3..f8e23e0 100644
--- a/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/global-array-loops/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 204
+; Bound: 203
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_68 "x_68"
OpName %x_29 "x_29"
@@ -40,8 +40,7 @@
OpName %x_22_1 "x_22_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %yieldsZero_ "yieldsZero_"
OpName %x_116 "x_116"
@@ -57,25 +56,25 @@
OpName %x_28_phi "x_28_phi"
OpName %x_26_phi "x_26_phi"
OpName %x_132_phi "x_132_phi"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %_arr_int_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%bool = OpTypeBool
@@ -106,8 +105,8 @@
%144 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%145 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %146 = OpTypeFunction %void %main_out
- %158 = OpTypeFunction %int
+ %146 = OpTypeFunction %main_out
+ %157 = OpTypeFunction %int
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_68 = OpVariable %_ptr_Function_bool Function %19
@@ -303,23 +302,22 @@
%139 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %146
-%tint_symbol = OpFunctionParameter %main_out
- %150 = OpLabel
- %151 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %151
- OpReturn
+ %main_inner = OpFunction %main_out None %146
+ %149 = OpLabel
+ %150 = OpFunctionCall %void %main_1
+ %151 = OpLoad %v4float %x_GLF_color
+ %152 = OpCompositeConstruct %main_out %151
+ OpReturnValue %152
OpFunctionEnd
%main = OpFunction %void None %11
- %153 = OpLabel
- %154 = OpFunctionCall %void %main_1
- %156 = OpLoad %v4float %x_GLF_color
- %157 = OpCompositeConstruct %main_out %156
- %155 = OpFunctionCall %void %tint_symbol_2 %157
+ %154 = OpLabel
+ %155 = OpFunctionCall %main_out %main_inner
+ %156 = OpCompositeExtract %v4float %155 0
+ OpStore %x_GLF_color_1_1 %156
OpReturn
OpFunctionEnd
-%yieldsZero_ = OpFunction %int None %158
- %160 = OpLabel
+%yieldsZero_ = OpFunction %int None %157
+ %159 = OpLabel
%x_116 = OpVariable %_ptr_Function_bool Function %19
%x_20 = OpVariable %_ptr_Function_int Function %23
%i = OpVariable %_ptr_Function_int Function %23
@@ -335,72 +333,72 @@
%x_132_phi = OpVariable %_ptr_Function_bool Function %19
OpStore %x_116 %false
OpStore %x_118_phi %false
- OpBranch %168
- %168 = OpLabel
- OpLoopMerge %169 %170 None
- OpBranch %171
- %171 = OpLabel
- %178 = OpLoad %bool %x_118_phi
+ OpBranch %167
+ %167 = OpLabel
+ OpLoopMerge %168 %169 None
+ OpBranch %170
+ %170 = OpLabel
+ %177 = OpLoad %bool %x_118_phi
OpStore %i %int_0
- OpStore %x_123_phi %178
+ OpStore %x_123_phi %177
OpStore %x_28_phi %int_0
- OpBranch %179
- %179 = OpLabel
- OpLoopMerge %180 %181 None
- OpBranch %182
- %182 = OpLabel
- %183 = OpLoad %bool %x_123_phi
- OpStore %x_123 %183
- %184 = OpLoad %int %x_28_phi
- OpStore %x_28 %184
- %185 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0
- %186 = OpLoad %float %185
- OpStore %x_26_phi %int_0
- %187 = OpLoad %bool %x_123
- OpStore %x_132_phi %187
- %188 = OpLoad %int %x_28
- %189 = OpConvertFToS %int %186
- %190 = OpSLessThan %bool %188 %189
- OpSelectionMerge %191 None
- OpBranchConditional %190 %192 %193
- %192 = OpLabel
- OpBranch %191
- %193 = OpLabel
- OpBranch %180
- %191 = OpLabel
- OpStore %x_116 %true
- %194 = OpLoad %int %x_28
- OpStore %x_20 %194
- %195 = OpLoad %int %x_28
- OpStore %x_26_phi %195
- OpStore %x_132_phi %true
- OpBranch %180
+ OpBranch %178
+ %178 = OpLabel
+ OpLoopMerge %179 %180 None
+ OpBranch %181
%181 = OpLabel
- OpStore %x_123_phi %false
- OpStore %x_28_phi %int_0
+ %182 = OpLoad %bool %x_123_phi
+ OpStore %x_123 %182
+ %183 = OpLoad %int %x_28_phi
+ OpStore %x_28 %183
+ %184 = OpAccessChain %_ptr_Uniform_float %x_8 %uint_0
+ %185 = OpLoad %float %184
+ OpStore %x_26_phi %int_0
+ %186 = OpLoad %bool %x_123
+ OpStore %x_132_phi %186
+ %187 = OpLoad %int %x_28
+ %188 = OpConvertFToS %int %185
+ %189 = OpSLessThan %bool %187 %188
+ OpSelectionMerge %190 None
+ OpBranchConditional %189 %191 %192
+ %191 = OpLabel
+ OpBranch %190
+ %192 = OpLabel
+ OpBranch %179
+ %190 = OpLabel
+ OpStore %x_116 %true
+ %193 = OpLoad %int %x_28
+ OpStore %x_20 %193
+ %194 = OpLoad %int %x_28
+ OpStore %x_26_phi %194
+ OpStore %x_132_phi %true
OpBranch %179
%180 = OpLabel
- %196 = OpLoad %int %x_26_phi
- OpStore %x_26 %196
- %197 = OpLoad %bool %x_132_phi
- %198 = OpLoad %int %x_26
- OpStore %x_27_phi %198
- OpSelectionMerge %199 None
- OpBranchConditional %197 %200 %199
- %200 = OpLabel
- OpBranch %169
+ OpStore %x_123_phi %false
+ OpStore %x_28_phi %int_0
+ OpBranch %178
+ %179 = OpLabel
+ %195 = OpLoad %int %x_26_phi
+ OpStore %x_26 %195
+ %196 = OpLoad %bool %x_132_phi
+ %197 = OpLoad %int %x_26
+ OpStore %x_27_phi %197
+ OpSelectionMerge %198 None
+ OpBranchConditional %196 %199 %198
%199 = OpLabel
+ OpBranch %168
+ %198 = OpLabel
OpStore %x_134 %int_0
OpStore %x_116 %true
+ %200 = OpLoad %int %x_134
+ OpStore %x_20 %200
%201 = OpLoad %int %x_134
- OpStore %x_20 %201
- %202 = OpLoad %int %x_134
- OpStore %x_27_phi %202
- OpBranch %169
- %170 = OpLabel
- OpStore %x_118_phi %false
+ OpStore %x_27_phi %201
OpBranch %168
%169 = OpLabel
- %203 = OpLoad %int %x_27_phi
- OpReturnValue %203
+ OpStore %x_118_phi %false
+ OpBranch %167
+ %168 = OpLabel
+ %202 = OpLoad %int %x_27_phi
+ OpReturnValue %202
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.spvasm.expected.spvasm
index a5e407d..a111b58 100644
--- a/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_32 "x_32"
OpName %x_43_phi "x_43_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_2 Function %21
@@ -103,18 +102,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %12
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.wgsl.expected.spvasm
index a5e407d..a111b58 100644
--- a/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/if-and-switch/0.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_32 "x_32"
OpName %x_43_phi "x_43_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_2 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -60,7 +59,7 @@
%bool = OpTypeBool
%54 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_2 Function %21
@@ -103,18 +102,17 @@
%43 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %12
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.spvasm.expected.spvasm
index 5bea6cc..c368904 100644
--- a/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_45 "x_45"
OpName %x_48 "x_48"
@@ -61,31 +61,31 @@
OpName %x_119 "x_119"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -114,7 +114,7 @@
%277 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%278 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %279 = OpTypeFunction %void %main_out
+ %279 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_45 = OpVariable %_ptr_Function_bool Function %26
@@ -547,20 +547,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %279
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %279
+%gl_FragCoord_param = OpFunctionParameter %v4float
%283 = OpLabel
- %284 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %284
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %284 = OpFunctionCall %void %main_1
+ %285 = OpLoad %v4float %x_GLF_color
+ %286 = OpCompositeConstruct %main_out %285
+ OpReturnValue %286
OpFunctionEnd
%main = OpFunction %void None %15
- %286 = OpLabel
- %287 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %287
- %288 = OpFunctionCall %void %main_1
- %290 = OpLoad %v4float %x_GLF_color
- %291 = OpCompositeConstruct %main_out %290
- %289 = OpFunctionCall %void %tint_symbol_3 %291
+ %288 = OpLabel
+ %290 = OpLoad %v4float %gl_FragCoord_param_1
+ %289 = OpFunctionCall %main_out %main_inner %290
+ %291 = OpCompositeExtract %v4float %289 0
+ OpStore %x_GLF_color_1_1 %291
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.wgsl.expected.spvasm
index 5bea6cc..c368904 100644
--- a/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/increment-value-in-nested-for-loop/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_45 "x_45"
OpName %x_48 "x_48"
@@ -61,31 +61,31 @@
OpName %x_119 "x_119"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -114,7 +114,7 @@
%277 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%278 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %279 = OpTypeFunction %void %main_out
+ %279 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_45 = OpVariable %_ptr_Function_bool Function %26
@@ -547,20 +547,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %279
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %279
+%gl_FragCoord_param = OpFunctionParameter %v4float
%283 = OpLabel
- %284 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %284
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %284 = OpFunctionCall %void %main_1
+ %285 = OpLoad %v4float %x_GLF_color
+ %286 = OpCompositeConstruct %main_out %285
+ OpReturnValue %286
OpFunctionEnd
%main = OpFunction %void None %15
- %286 = OpLabel
- %287 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %287
- %288 = OpFunctionCall %void %main_1
- %290 = OpLoad %v4float %x_GLF_color
- %291 = OpCompositeConstruct %main_out %290
- %289 = OpFunctionCall %void %tint_symbol_3 %291
+ %288 = OpLabel
+ %290 = OpLoad %v4float %gl_FragCoord_param_1
+ %289 = OpFunctionCall %main_out %main_inner %290
+ %291 = OpCompositeExtract %v4float %289 0
+ OpStore %x_GLF_color_1_1 %291
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.spvasm.expected.spvasm
index ecb0861..18b4d77 100644
--- a/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 126
+; Bound: 125
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeFrame_ "makeFrame_"
OpName %x_60 "x_60"
OpName %x_63_phi "x_63_phi"
@@ -36,27 +36,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%17 = OpConstantNull %float
@@ -80,7 +79,7 @@
%108 = OpTypeFunction %void
%113 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out
%makeFrame_ = OpFunction %float None %12
%14 = OpLabel
%x_60 = OpVariable %_ptr_Function_float Function %17
@@ -226,18 +225,17 @@
OpStore %x_GLF_color %113
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %114
-%tint_symbol = OpFunctionParameter %main_out
- %118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %119
- OpReturn
+ %main_inner = OpFunction %main_out None %114
+ %117 = OpLabel
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %108
- %121 = OpLabel
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_2 %125
+ %122 = OpLabel
+ %123 = OpFunctionCall %main_out %main_inner
+ %124 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %124
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.wgsl.expected.spvasm
index ecb0861..18b4d77 100644
--- a/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/injection-switch-as-comparison/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 126
+; Bound: 125
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeFrame_ "makeFrame_"
OpName %x_60 "x_60"
OpName %x_63_phi "x_63_phi"
@@ -36,27 +36,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%12 = OpTypeFunction %float
%_ptr_Function_float = OpTypePointer Function %float
%17 = OpConstantNull %float
@@ -80,7 +79,7 @@
%108 = OpTypeFunction %void
%113 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out
%makeFrame_ = OpFunction %float None %12
%14 = OpLabel
%x_60 = OpVariable %_ptr_Function_float Function %17
@@ -226,18 +225,17 @@
OpStore %x_GLF_color %113
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %114
-%tint_symbol = OpFunctionParameter %main_out
- %118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %119
- OpReturn
+ %main_inner = OpFunction %main_out None %114
+ %117 = OpLabel
+ %118 = OpFunctionCall %void %main_1
+ %119 = OpLoad %v4float %x_GLF_color
+ %120 = OpCompositeConstruct %main_out %119
+ OpReturnValue %120
OpFunctionEnd
%main = OpFunction %void None %108
- %121 = OpLabel
- %122 = OpFunctionCall %void %main_1
- %124 = OpLoad %v4float %x_GLF_color
- %125 = OpCompositeConstruct %main_out %124
- %123 = OpFunctionCall %void %tint_symbol_2 %125
+ %122 = OpLabel
+ %123 = OpFunctionCall %main_out %main_inner
+ %124 = OpCompositeExtract %v4float %123 0
+ OpStore %x_GLF_color_1_1 %124
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.spvasm.expected.spvasm
index 5706393..78c8778 100644
--- a/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_41 "x_41"
OpName %x_6 "x_6"
@@ -21,11 +21,11 @@
OpMemberName %S 1 "f2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 8
OpMemberDecorate %S 1 ColMajor
@@ -33,14 +33,14 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -71,7 +71,7 @@
%int_1 = OpConstant %int 1
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_41 = OpVariable %_ptr_Function_mat2v2float Function %19
@@ -119,20 +119,20 @@
OpStore %x_GLF_color %73
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %74
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %74
+%gl_FragCoord_param = OpFunctionParameter %v4float
%78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %79
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %11
- %81 = OpLabel
- %82 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %82
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_3 %86
+ %83 = OpLabel
+ %85 = OpLoad %v4float %gl_FragCoord_param_1
+ %84 = OpFunctionCall %main_out %main_inner %85
+ %86 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.wgsl.expected.spvasm
index 5706393..78c8778 100644
--- a/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/int-mat2-struct/0-opt.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_41 "x_41"
OpName %x_6 "x_6"
@@ -21,11 +21,11 @@
OpMemberName %S 1 "f2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 8
OpMemberDecorate %S 1 ColMajor
@@ -33,14 +33,14 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
@@ -71,7 +71,7 @@
%int_1 = OpConstant %int 1
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_41 = OpVariable %_ptr_Function_mat2v2float Function %19
@@ -119,20 +119,20 @@
OpStore %x_GLF_color %73
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %74
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %74
+%gl_FragCoord_param = OpFunctionParameter %v4float
%78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %79
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %79 = OpFunctionCall %void %main_1
+ %80 = OpLoad %v4float %x_GLF_color
+ %81 = OpCompositeConstruct %main_out %80
+ OpReturnValue %81
OpFunctionEnd
%main = OpFunction %void None %11
- %81 = OpLabel
- %82 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %82
- %83 = OpFunctionCall %void %main_1
- %85 = OpLoad %v4float %x_GLF_color
- %86 = OpCompositeConstruct %main_out %85
- %84 = OpFunctionCall %void %tint_symbol_3 %86
+ %83 = OpLabel
+ %85 = OpLoad %v4float %gl_FragCoord_param_1
+ %84 = OpFunctionCall %main_out %main_inner %85
+ %86 = OpCompositeExtract %v4float %84 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.spvasm.expected.spvasm
index 6bb20bf..663e474 100644
--- a/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 113
+; Bound: 112
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %k "k"
OpName %GLF_dead0j "GLF_dead0j"
@@ -22,28 +22,27 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -70,7 +69,7 @@
%float_1 = OpConstant %float 1
%100 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %101 = OpTypeFunction %void %main_out
+ %101 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%k = OpVariable %_ptr_Function_int Function %19
@@ -78,7 +77,7 @@
%donor_replacementGLF_dead0stack = OpVariable %_ptr_Function__arr_int_uint_10 Function %26
%donor_replacementGLF_dead0top = OpVariable %_ptr_Function_int Function %19
%x_54 = OpVariable %_ptr_Function_int Function %19
- %matrix_b = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_b = OpVariable %_ptr_Function_v4float Function %5
%b = OpVariable %_ptr_Function_int Function %19
OpStore %k %int_0
OpBranch %33
@@ -183,18 +182,17 @@
OpStore %x_GLF_color %100
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %101
-%tint_symbol = OpFunctionParameter %main_out
- %105 = OpLabel
- %106 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %106
- OpReturn
+ %main_inner = OpFunction %main_out None %101
+ %104 = OpLabel
+ %105 = OpFunctionCall %void %main_1
+ %106 = OpLoad %v4float %x_GLF_color
+ %107 = OpCompositeConstruct %main_out %106
+ OpReturnValue %107
OpFunctionEnd
%main = OpFunction %void None %12
- %108 = OpLabel
- %109 = OpFunctionCall %void %main_1
- %111 = OpLoad %v4float %x_GLF_color
- %112 = OpCompositeConstruct %main_out %111
- %110 = OpFunctionCall %void %tint_symbol_2 %112
+ %109 = OpLabel
+ %110 = OpFunctionCall %main_out %main_inner
+ %111 = OpCompositeExtract %v4float %110 0
+ OpStore %x_GLF_color_1_1 %111
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.wgsl.expected.spvasm
index de2d980..5b8431a 100644
--- a/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loop-dead-if-loop/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 115
+; Bound: 114
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %k "k"
OpName %GLF_dead0j "GLF_dead0j"
@@ -22,28 +22,27 @@
OpName %b "b"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -70,7 +69,7 @@
%float_1 = OpConstant %float 1
%102 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %103 = OpTypeFunction %void %main_out
+ %103 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%k = OpVariable %_ptr_Function_int Function %19
@@ -78,7 +77,7 @@
%donor_replacementGLF_dead0stack = OpVariable %_ptr_Function__arr_int_uint_10 Function %26
%donor_replacementGLF_dead0top = OpVariable %_ptr_Function_int Function %19
%x_54 = OpVariable %_ptr_Function_int Function %19
- %matrix_b = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_b = OpVariable %_ptr_Function_v4float Function %5
%b = OpVariable %_ptr_Function_int Function %19
OpStore %k %int_0
OpBranch %33
@@ -188,18 +187,17 @@
OpStore %x_GLF_color %102
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %103
-%tint_symbol = OpFunctionParameter %main_out
- %107 = OpLabel
- %108 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %108
- OpReturn
+ %main_inner = OpFunction %main_out None %103
+ %106 = OpLabel
+ %107 = OpFunctionCall %void %main_1
+ %108 = OpLoad %v4float %x_GLF_color
+ %109 = OpCompositeConstruct %main_out %108
+ OpReturnValue %109
OpFunctionEnd
%main = OpFunction %void None %12
- %110 = OpLabel
- %111 = OpFunctionCall %void %main_1
- %113 = OpLoad %v4float %x_GLF_color
- %114 = OpCompositeConstruct %main_out %113
- %112 = OpFunctionCall %void %tint_symbol_2 %114
+ %111 = OpLabel
+ %112 = OpFunctionCall %main_out %main_inner
+ %113 = OpCompositeExtract %v4float %112 0
+ OpStore %x_GLF_color_1_1 %113
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.spvasm.expected.spvasm
index 2978632..2cd86eb 100644
--- a/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
%60 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %j "j"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +47,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%j = OpVariable %_ptr_Function_int Function %15
@@ -114,18 +113,17 @@
%21 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %8
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.wgsl.expected.spvasm
index 2978632..2cd86eb 100644
--- a/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loop-nested-ifs/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 76
+; Bound: 75
; Schema: 0
OpCapability Shader
%60 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %j "j"
OpName %a "a"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +47,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Private_float = OpTypePointer Private %float
%main_out = OpTypeStruct %v4float
- %64 = OpTypeFunction %void %main_out
+ %64 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%j = OpVariable %_ptr_Function_int Function %15
@@ -114,18 +113,17 @@
%21 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %64
-%tint_symbol = OpFunctionParameter %main_out
- %68 = OpLabel
- %69 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %69
- OpReturn
+ %main_inner = OpFunction %main_out None %64
+ %67 = OpLabel
+ %68 = OpFunctionCall %void %main_1
+ %69 = OpLoad %v4float %x_GLF_color
+ %70 = OpCompositeConstruct %main_out %69
+ OpReturnValue %70
OpFunctionEnd
%main = OpFunction %void None %8
- %71 = OpLabel
- %72 = OpFunctionCall %void %main_1
- %74 = OpLoad %v4float %x_GLF_color
- %75 = OpCompositeConstruct %main_out %74
- %73 = OpFunctionCall %void %tint_symbol_2 %75
+ %72 = OpLabel
+ %73 = OpFunctionCall %main_out %main_inner
+ %74 = OpCompositeExtract %v4float %73 0
+ OpStore %x_GLF_color_1_1 %74
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.spvasm.expected.spvasm
index d6e398d..64b7405 100644
--- a/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %BinarySearchObject "BinarySearchObject"
OpMemberName %BinarySearchObject 0 "prime_numbers"
OpName %binarySearch_struct_BinarySearchObject_i1_10_1_ "binarySearch_struct_BinarySearchObject_i1_10_1_"
@@ -23,29 +23,28 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %BinarySearchObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
@@ -74,7 +73,7 @@
%float_0 = OpConstant %float 0
%109 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%binarySearch_struct_BinarySearchObject_i1_10_1_ = OpFunction %int None %12
%obj = OpFunctionParameter %_ptr_Function_BinarySearchObject
%21 = OpLabel
@@ -191,18 +190,17 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %50
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.wgsl.expected.spvasm
index d6e398d..64b7405 100644
--- a/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/loops-ifs-continues-call/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 122
+; Bound: 121
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %BinarySearchObject "BinarySearchObject"
OpMemberName %BinarySearchObject 0 "prime_numbers"
OpName %binarySearch_struct_BinarySearchObject_i1_10_1_ "binarySearch_struct_BinarySearchObject_i1_10_1_"
@@ -23,29 +23,28 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %BinarySearchObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
@@ -74,7 +73,7 @@
%float_0 = OpConstant %float 0
%109 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out
%binarySearch_struct_BinarySearchObject_i1_10_1_ = OpFunction %int None %12
%obj = OpFunctionParameter %_ptr_Function_BinarySearchObject
%21 = OpLabel
@@ -191,18 +190,17 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %110
-%tint_symbol = OpFunctionParameter %main_out
- %114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %115
- OpReturn
+ %main_inner = OpFunction %main_out None %110
+ %113 = OpLabel
+ %114 = OpFunctionCall %void %main_1
+ %115 = OpLoad %v4float %x_GLF_color
+ %116 = OpCompositeConstruct %main_out %115
+ OpReturnValue %116
OpFunctionEnd
%main = OpFunction %void None %50
- %117 = OpLabel
- %118 = OpFunctionCall %void %main_1
- %120 = OpLoad %v4float %x_GLF_color
- %121 = OpCompositeConstruct %main_out %120
- %119 = OpFunctionCall %void %tint_symbol_2 %121
+ %118 = OpLabel
+ %119 = OpFunctionCall %main_out %main_inner
+ %120 = OpCompositeExtract %v4float %119 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.spvasm.expected.spvasm
index 6623b07..dc4e412 100644
--- a/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f_mf22_ "f_mf22_"
OpName %m "m"
OpName %main_1 "main_1"
@@ -18,22 +18,22 @@
OpName %x_38_phi "x_38_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
@@ -57,7 +57,7 @@
%47 = OpConstantComposite %mat2v2float %45 %46
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out %v4float
%f_mf22_ = OpFunction %v3float None %11
%m = OpFunctionParameter %_ptr_Function_mat2v2float
%18 = OpLabel
@@ -93,20 +93,20 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %53
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %53
+%gl_FragCoord_param = OpFunctionParameter %v4float
%57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %58
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %27
- %60 = OpLabel
- %61 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %61
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_3 %65
+ %62 = OpLabel
+ %64 = OpLoad %v4float %gl_FragCoord_param_1
+ %63 = OpFunctionCall %main_out %main_inner %64
+ %65 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.wgsl.expected.spvasm
index 6623b07..dc4e412 100644
--- a/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/matrices-and-return-in-loop/0.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %f_mf22_ "f_mf22_"
OpName %m "m"
OpName %main_1 "main_1"
@@ -18,22 +18,22 @@
OpName %x_38_phi "x_38_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%v2float = OpTypeVector %float 2
%mat2v2float = OpTypeMatrix %v2float 2
@@ -57,7 +57,7 @@
%47 = OpConstantComposite %mat2v2float %45 %46
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out %v4float
%f_mf22_ = OpFunction %v3float None %11
%m = OpFunctionParameter %_ptr_Function_mat2v2float
%18 = OpLabel
@@ -93,20 +93,20 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %53
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %53
+%gl_FragCoord_param = OpFunctionParameter %v4float
%57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %58
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %27
- %60 = OpLabel
- %61 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %61
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_3 %65
+ %62 = OpLabel
+ %64 = OpLoad %v4float %gl_FragCoord_param_1
+ %63 = OpFunctionCall %main_out %main_inner %64
+ %65 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.spvasm.expected.spvasm
index ad29d54..7f1fb64 100644
--- a/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %gv "gv"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
- %gv = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+ %gv = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%float_0 = OpConstant %float 0
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
%temp = OpVariable %_ptr_Function_int Function %20
@@ -94,18 +93,17 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %13
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.wgsl.expected.spvasm
index ad29d54..7f1fb64 100644
--- a/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/max-mix-conditional-discard/0-opt.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 65
+; Bound: 64
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %gv "gv"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
- %gv = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+ %gv = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%13 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%float_0 = OpConstant %float 0
%52 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
%temp = OpVariable %_ptr_Function_int Function %20
@@ -94,18 +93,17 @@
OpStore %x_GLF_color %52
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %53
-%tint_symbol = OpFunctionParameter %main_out
- %57 = OpLabel
- %58 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %58
- OpReturn
+ %main_inner = OpFunction %main_out None %53
+ %56 = OpLabel
+ %57 = OpFunctionCall %void %main_1
+ %58 = OpLoad %v4float %x_GLF_color
+ %59 = OpCompositeConstruct %main_out %58
+ OpReturnValue %59
OpFunctionEnd
%main = OpFunction %void None %13
- %60 = OpLabel
- %61 = OpFunctionCall %void %main_1
- %63 = OpLoad %v4float %x_GLF_color
- %64 = OpCompositeConstruct %main_out %63
- %62 = OpFunctionCall %void %tint_symbol_2 %64
+ %61 = OpLabel
+ %62 = OpFunctionCall %main_out %main_inner
+ %63 = OpCompositeExtract %v4float %62 0
+ OpStore %x_GLF_color_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.spvasm.expected.spvasm
index 02d804c..1337b9a 100644
--- a/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.spvasm.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %GLF_live6mand_ "GLF_live6mand_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%uint = OpTypeInt 32 0
@@ -45,7 +44,7 @@
%float_1 = OpConstant %float 1
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%GLF_live6mand_ = OpFunction %v3float None %8
%11 = OpLabel
%14 = OpBitcast %v3float %20
@@ -58,18 +57,17 @@
OpStore %x_GLF_color %33
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %27
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.wgsl.expected.spvasm
index 02d804c..1337b9a 100644
--- a/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/mix-floor-add/0-opt.wgsl.expected.spvasm
@@ -1,31 +1,30 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 46
+; Bound: 45
; Schema: 0
OpCapability Shader
%13 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %GLF_live6mand_ "GLF_live6mand_"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%uint = OpTypeInt 32 0
@@ -45,7 +44,7 @@
%float_1 = OpConstant %float 1
%33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %34 = OpTypeFunction %void %main_out
+ %34 = OpTypeFunction %main_out
%GLF_live6mand_ = OpFunction %v3float None %8
%11 = OpLabel
%14 = OpBitcast %v3float %20
@@ -58,18 +57,17 @@
OpStore %x_GLF_color %33
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %34
-%tint_symbol = OpFunctionParameter %main_out
- %38 = OpLabel
- %39 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %39
- OpReturn
+ %main_inner = OpFunction %main_out None %34
+ %37 = OpLabel
+ %38 = OpFunctionCall %void %main_1
+ %39 = OpLoad %v4float %x_GLF_color
+ %40 = OpCompositeConstruct %main_out %39
+ OpReturnValue %40
OpFunctionEnd
%main = OpFunction %void None %27
- %41 = OpLabel
- %42 = OpFunctionCall %void %main_1
- %44 = OpLoad %v4float %x_GLF_color
- %45 = OpCompositeConstruct %main_out %44
- %43 = OpFunctionCall %void %tint_symbol_2 %45
+ %42 = OpLabel
+ %43 = OpFunctionCall %main_out %main_inner
+ %44 = OpCompositeExtract %v4float %43 0
+ OpStore %x_GLF_color_1_1 %44
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.spvasm.expected.spvasm
index 312327e..b58d564 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %m44 "m44"
OpName %x_10_phi "x_10_phi"
@@ -24,30 +24,30 @@
OpName %x_83_1 "x_83_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -94,7 +94,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%m44 = OpVariable %_ptr_Function_mat4v4float Function %21
@@ -102,8 +102,8 @@
%x_9 = OpVariable %_ptr_Function_int Function %25
%x_11_phi = OpVariable %_ptr_Function_int Function %25
%x_8 = OpVariable %_ptr_Function_int Function %25
- %x_79_1 = OpVariable %_ptr_Function_v4float Function %5
- %x_83_1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_79_1 = OpVariable %_ptr_Function_v4float Function %7
+ %x_83_1 = OpVariable %_ptr_Function_v4float Function %7
OpStore %m44 %46
OpStore %x_10_phi %int_0
OpBranch %48
@@ -183,20 +183,20 @@
OpStore %x_GLF_color %110
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %111
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %111
+%gl_FragCoord_param = OpFunctionParameter %v4float
%115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %116
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %14
- %118 = OpLabel
- %119 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %119
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_3 %123
+ %120 = OpLabel
+ %122 = OpLoad %v4float %gl_FragCoord_param_1
+ %121 = OpFunctionCall %main_out %main_inner %122
+ %123 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.wgsl.expected.spvasm
index 312327e..b58d564 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-for-break-mat-color/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "one"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %m44 "m44"
OpName %x_10_phi "x_10_phi"
@@ -24,30 +24,30 @@
OpName %x_83_1 "x_83_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%mat4v4float = OpTypeMatrix %v4float 4
@@ -94,7 +94,7 @@
%uint_2 = OpConstant %uint 2
%uint_3 = OpConstant %uint 3
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%m44 = OpVariable %_ptr_Function_mat4v4float Function %21
@@ -102,8 +102,8 @@
%x_9 = OpVariable %_ptr_Function_int Function %25
%x_11_phi = OpVariable %_ptr_Function_int Function %25
%x_8 = OpVariable %_ptr_Function_int Function %25
- %x_79_1 = OpVariable %_ptr_Function_v4float Function %5
- %x_83_1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_79_1 = OpVariable %_ptr_Function_v4float Function %7
+ %x_83_1 = OpVariable %_ptr_Function_v4float Function %7
OpStore %m44 %46
OpStore %x_10_phi %int_0
OpBranch %48
@@ -183,20 +183,20 @@
OpStore %x_GLF_color %110
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %111
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %111
+%gl_FragCoord_param = OpFunctionParameter %v4float
%115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %116
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %14
- %118 = OpLabel
- %119 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %119
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_3 %123
+ %120 = OpLabel
+ %122 = OpLoad %v4float %gl_FragCoord_param_1
+ %121 = OpFunctionCall %main_out %main_inner %122
+ %123 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.spvasm.expected.spvasm
index eca9c85..c2763f8 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.spvasm.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %nb_mod_f1_ "nb_mod_f1_"
OpName %limit "limit"
OpName %x_injected_loop_counter "x_injected_loop_counter"
@@ -19,22 +19,22 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%11 = OpTypeFunction %float %_ptr_Function_float
%int = OpTypeInt 32 1
@@ -54,7 +54,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out %v4float
%nb_mod_f1_ = OpFunction %float None %11
%limit = OpFunctionParameter %_ptr_Function_float
%15 = OpLabel
@@ -101,20 +101,20 @@
OpStore %x_GLF_color %55
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %56
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %56
+%gl_FragCoord_param = OpFunctionParameter %v4float
%60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %61
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %42
- %63 = OpLabel
- %64 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %64
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_3 %68
+ %65 = OpLabel
+ %67 = OpLoad %v4float %gl_FragCoord_param_1
+ %66 = OpFunctionCall %main_out %main_inner %67
+ %68 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.wgsl.expected.spvasm
index eca9c85..c2763f8 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-for-loops-with-return/0-opt.wgsl.expected.spvasm
@@ -5,12 +5,12 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %nb_mod_f1_ "nb_mod_f1_"
OpName %limit "limit"
OpName %x_injected_loop_counter "x_injected_loop_counter"
@@ -19,22 +19,22 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%11 = OpTypeFunction %float %_ptr_Function_float
%int = OpTypeInt 32 1
@@ -54,7 +54,7 @@
%_ptr_Private_float = OpTypePointer Private %float
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out %v4float
%nb_mod_f1_ = OpFunction %float None %11
%limit = OpFunctionParameter %_ptr_Function_float
%15 = OpLabel
@@ -101,20 +101,20 @@
OpStore %x_GLF_color %55
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %56
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %56
+%gl_FragCoord_param = OpFunctionParameter %v4float
%60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %61
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %42
- %63 = OpLabel
- %64 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %64
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_3 %68
+ %65 = OpLabel
+ %67 = OpLoad %v4float %gl_FragCoord_param_1
+ %66 = OpFunctionCall %main_out %main_inner %67
+ %68 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.spvasm.expected.spvasm
index e38a6fc..d051634 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%true = OpConstantTrue %bool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -100,18 +99,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %51
-%tint_symbol = OpFunctionParameter %main_out
- %55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %56
- OpReturn
+ %main_inner = OpFunction %main_out None %51
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %v4float %x_GLF_color
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %12
- %58 = OpLabel
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %v4float %x_GLF_color
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_2 %62
+ %59 = OpLabel
+ %60 = OpFunctionCall %main_out %main_inner
+ %61 = OpCompositeExtract %v4float %60 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.wgsl.expected.spvasm
index e38a6fc..d051634 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-ifs-and-return-in-for-loop/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%true = OpConstantTrue %bool
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -100,18 +99,17 @@
%25 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %51
-%tint_symbol = OpFunctionParameter %main_out
- %55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %56
- OpReturn
+ %main_inner = OpFunction %main_out None %51
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %v4float %x_GLF_color
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %12
- %58 = OpLabel
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %v4float %x_GLF_color
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_2 %62
+ %59 = OpLabel
+ %60 = OpFunctionCall %main_out %main_inner
+ %61 = OpCompositeExtract %v4float %60 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.spvasm.expected.spvasm
index 84ab931..bb4a7b4 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 140
+; Bound: 139
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %GLF_dead5cols "GLF_dead5cols"
@@ -22,28 +22,27 @@
OpName %donor_replacementGLF_dead5sums "donor_replacementGLF_dead5sums"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -69,7 +68,7 @@
%int_200 = OpConstant %int 200
%127 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %128 = OpTypeFunction %void %main_out
+ %128 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -228,18 +227,17 @@
OpStore %x_GLF_color %127
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %128
-%tint_symbol = OpFunctionParameter %main_out
- %132 = OpLabel
- %133 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %133
- OpReturn
+ %main_inner = OpFunction %main_out None %128
+ %131 = OpLabel
+ %132 = OpFunctionCall %void %main_1
+ %133 = OpLoad %v4float %x_GLF_color
+ %134 = OpCompositeConstruct %main_out %133
+ OpReturnValue %134
OpFunctionEnd
%main = OpFunction %void None %12
- %135 = OpLabel
- %136 = OpFunctionCall %void %main_1
- %138 = OpLoad %v4float %x_GLF_color
- %139 = OpCompositeConstruct %main_out %138
- %137 = OpFunctionCall %void %tint_symbol_2 %139
+ %136 = OpLabel
+ %137 = OpFunctionCall %main_out %main_inner
+ %138 = OpCompositeExtract %v4float %137 0
+ OpStore %x_GLF_color_1_1 %138
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.wgsl.expected.spvasm
index d22eb4e..1a033ac 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-loops-switch/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 142
+; Bound: 141
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %GLF_dead5cols "GLF_dead5cols"
@@ -22,28 +22,27 @@
OpName %donor_replacementGLF_dead5sums "donor_replacementGLF_dead5sums"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -69,7 +68,7 @@
%int_200 = OpConstant %int 200
%129 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %130 = OpTypeFunction %void %main_out
+ %130 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -233,18 +232,17 @@
OpStore %x_GLF_color %129
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %130
-%tint_symbol = OpFunctionParameter %main_out
- %134 = OpLabel
- %135 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %135
- OpReturn
+ %main_inner = OpFunction %main_out None %130
+ %133 = OpLabel
+ %134 = OpFunctionCall %void %main_1
+ %135 = OpLoad %v4float %x_GLF_color
+ %136 = OpCompositeConstruct %main_out %135
+ OpReturnValue %136
OpFunctionEnd
%main = OpFunction %void None %12
- %137 = OpLabel
- %138 = OpFunctionCall %void %main_1
- %140 = OpLoad %v4float %x_GLF_color
- %141 = OpCompositeConstruct %main_out %140
- %139 = OpFunctionCall %void %tint_symbol_2 %141
+ %138 = OpLabel
+ %139 = OpFunctionCall %main_out %main_inner
+ %140 = OpCompositeExtract %v4float %139 0
+ OpStore %x_GLF_color_1_1 %140
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.spvasm.expected.spvasm
index 6a58a17..aeb1b95 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.spvasm.expected.spvasm
@@ -5,43 +5,43 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%float_0 = OpConstant %float 0
@@ -57,7 +57,7 @@
%bool = OpTypeBool
%45 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %46 = OpTypeFunction %void %main_out
+ %46 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
OpStore %x_GLF_color %21
@@ -91,20 +91,20 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %46
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %46
+%gl_FragCoord_param = OpFunctionParameter %v4float
%50 = OpLabel
- %51 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %51
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %15
- %53 = OpLabel
- %54 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %54
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_3 %58
+ %55 = OpLabel
+ %57 = OpLoad %v4float %gl_FragCoord_param_1
+ %56 = OpFunctionCall %main_out %main_inner %57
+ %58 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.wgsl.expected.spvasm
index 6a58a17..aeb1b95 100644
--- a/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/nested-switch-break-discard/0-opt.wgsl.expected.spvasm
@@ -5,43 +5,43 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%float_0 = OpConstant %float 0
@@ -57,7 +57,7 @@
%bool = OpTypeBool
%45 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %46 = OpTypeFunction %void %main_out
+ %46 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
OpStore %x_GLF_color %21
@@ -91,20 +91,20 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %46
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %46
+%gl_FragCoord_param = OpFunctionParameter %v4float
%50 = OpLabel
- %51 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %51
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %51 = OpFunctionCall %void %main_1
+ %52 = OpLoad %v4float %x_GLF_color
+ %53 = OpCompositeConstruct %main_out %52
+ OpReturnValue %53
OpFunctionEnd
%main = OpFunction %void None %15
- %53 = OpLabel
- %54 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %54
- %55 = OpFunctionCall %void %main_1
- %57 = OpLoad %v4float %x_GLF_color
- %58 = OpCompositeConstruct %main_out %57
- %56 = OpFunctionCall %void %tint_symbol_3 %58
+ %55 = OpLabel
+ %57 = OpLoad %v4float %gl_FragCoord_param_1
+ %56 = OpFunctionCall %main_out %main_inner %57
+ %58 = OpCompositeExtract %v4float %56 0
+ OpStore %x_GLF_color_1_1 %58
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.spvasm.expected.spvasm
index 06b6414..63448fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_10 "x_10"
OpName %x_9 "x_9"
@@ -19,28 +19,27 @@
OpName %x_11_phi "x_11_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -61,7 +60,7 @@
%float_1 = OpConstant %float 1
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_10 = OpVariable %_ptr_Function__arr_int_uint_1 Function %21
@@ -108,18 +107,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %12
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.wgsl.expected.spvasm
index 06b6414..63448fe 100644
--- a/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/one-sized-array/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 69
+; Bound: 68
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_10 "x_10"
OpName %x_9 "x_9"
@@ -19,28 +19,27 @@
OpName %x_11_phi "x_11_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -61,7 +60,7 @@
%float_1 = OpConstant %float 1
%56 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_10 = OpVariable %_ptr_Function__arr_int_uint_1 Function %21
@@ -108,18 +107,17 @@
%52 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %57
-%tint_symbol = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %60 = OpLabel
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %12
- %64 = OpLabel
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_2 %68
+ %65 = OpLabel
+ %66 = OpFunctionCall %main_out %main_inner
+ %67 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %67
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.spvasm.expected.spvasm
index cbe84e4..de6b7b7 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_47 "x_47"
@@ -21,31 +21,31 @@
OpName %x_48_1 "x_48_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -64,13 +64,13 @@
%uint_1 = OpConstant %uint 1
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_30 = OpVariable %_ptr_Function_bool Function %22
%x_47 = OpVariable %_ptr_Function_float Function %25
%x_47_phi = OpVariable %_ptr_Function_float Function %25
- %x_48_1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_48_1 = OpVariable %_ptr_Function_v4float Function %7
%29 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %uint_0
%30 = OpLoad %float %29
%32 = OpFOrdGreaterThan %bool %30 %float_1
@@ -128,20 +128,20 @@
OpStore %x_GLF_color %64
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %15
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.wgsl.expected.spvasm
index cbe84e4..de6b7b7 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-float-from-while-loop/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_47 "x_47"
@@ -21,31 +21,31 @@
OpName %x_48_1 "x_48_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%bool = OpTypeBool
@@ -64,13 +64,13 @@
%uint_1 = OpConstant %uint 1
%64 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_30 = OpVariable %_ptr_Function_bool Function %22
%x_47 = OpVariable %_ptr_Function_float Function %25
%x_47_phi = OpVariable %_ptr_Function_float Function %25
- %x_48_1 = OpVariable %_ptr_Function_v4float Function %5
+ %x_48_1 = OpVariable %_ptr_Function_v4float Function %7
%29 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0 %uint_0
%30 = OpLoad %float %29
%32 = OpFOrdGreaterThan %bool %30 %float_1
@@ -128,20 +128,20 @@
OpStore %x_GLF_color %64
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %15
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.spvasm.expected.spvasm
index b4f0236..af0b528 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_ "f_"
OpName %i "i"
OpName %main_1 "main_1"
@@ -16,18 +16,17 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%8 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -46,7 +45,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%f_ = OpFunction %float None %8
%10 = OpLabel
%i = OpVariable %_ptr_Function_int Function %14
@@ -118,18 +117,17 @@
OpStore %x_GLF_color %62
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %36
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.wgsl.expected.spvasm
index b4f0236..af0b528 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-in-loop-in-function/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %f_ "f_"
OpName %i "i"
OpName %main_1 "main_1"
@@ -16,18 +16,17 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%8 = OpTypeFunction %float
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
@@ -46,7 +45,7 @@
%uint_0 = OpConstant %uint 0
%_ptr_Function_float = OpTypePointer Function %float
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%f_ = OpFunction %float None %8
%10 = OpLabel
%i = OpVariable %_ptr_Function_int Function %14
@@ -118,18 +117,17 @@
OpStore %x_GLF_color %62
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %36
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.spvasm.expected.spvasm
index 9396999..894685d 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 115
+; Bound: 114
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37 "x_37"
@@ -25,8 +25,7 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %GLF_live4drawShape_ "GLF_live4drawShape_"
OpName %x_57 "x_57"
@@ -41,15 +40,15 @@
OpName %x_8_phi "x_8_phi"
OpName %x_71_phi "x_71_phi"
OpName %x_72_phi "x_72_phi"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -70,8 +69,8 @@
%true = OpConstantTrue %bool
%57 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
- %77 = OpTypeFunction %v3float
+ %65 = OpTypeFunction %main_out
+ %76 = OpTypeFunction %v3float
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %16
@@ -152,23 +151,22 @@
OpStore %x_38 %64
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %65
-%tint_symbol = OpFunctionParameter %main_out
- %69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %70
- OpReturn
+ %main_inner = OpFunction %main_out None %65
+ %68 = OpLabel
+ %69 = OpFunctionCall %void %main_1
+ %70 = OpLoad %v4float %x_GLF_color
+ %71 = OpCompositeConstruct %main_out %70
+ OpReturnValue %71
OpFunctionEnd
%main = OpFunction %void None %8
- %72 = OpLabel
- %73 = OpFunctionCall %void %main_1
- %75 = OpLoad %v4float %x_GLF_color
- %76 = OpCompositeConstruct %main_out %75
- %74 = OpFunctionCall %void %tint_symbol_2 %76
+ %73 = OpLabel
+ %74 = OpFunctionCall %main_out %main_inner
+ %75 = OpCompositeExtract %v4float %74 0
+ OpStore %x_GLF_color_1_1 %75
OpReturn
OpFunctionEnd
-%GLF_live4drawShape_ = OpFunction %v3float None %77
- %79 = OpLabel
+%GLF_live4drawShape_ = OpFunction %v3float None %76
+ %78 = OpLabel
%x_57 = OpVariable %_ptr_Function_bool Function %16
%x_58 = OpVariable %_ptr_Function_v3float Function %20
%i = OpVariable %_ptr_Function_int Function %24
@@ -183,63 +181,63 @@
%x_72_phi = OpVariable %_ptr_Function_bool Function %16
OpStore %x_57 %false
OpStore %x_60_phi %false
- OpBranch %87
- %87 = OpLabel
- OpLoopMerge %88 %89 None
- OpBranch %90
- %90 = OpLabel
- %96 = OpLoad %bool %x_60_phi
+ OpBranch %86
+ %86 = OpLabel
+ OpLoopMerge %87 %88 None
+ OpBranch %89
+ %89 = OpLabel
+ %95 = OpLoad %bool %x_60_phi
OpStore %i %int_0
- OpStore %x_65_phi %96
+ OpStore %x_65_phi %95
OpStore %x_8_phi %int_0
- OpBranch %97
- %97 = OpLabel
- OpLoopMerge %98 %99 None
- OpBranch %100
- %100 = OpLabel
- %101 = OpLoad %bool %x_65_phi
- OpStore %x_65 %101
- %102 = OpLoad %int %x_8_phi
+ OpBranch %96
+ %96 = OpLabel
+ OpLoopMerge %97 %98 None
+ OpBranch %99
+ %99 = OpLabel
+ %100 = OpLoad %bool %x_65_phi
+ OpStore %x_65 %100
+ %101 = OpLoad %int %x_8_phi
OpStore %x_71_phi %50
- %103 = OpLoad %bool %x_65
- OpStore %x_72_phi %103
- %104 = OpSLessThan %bool %102 %int_0
- OpSelectionMerge %105 None
- OpBranchConditional %104 %106 %107
- %106 = OpLabel
- OpBranch %105
- %107 = OpLabel
- OpBranch %98
+ %102 = OpLoad %bool %x_65
+ OpStore %x_72_phi %102
+ %103 = OpSLessThan %bool %101 %int_0
+ OpSelectionMerge %104 None
+ OpBranchConditional %103 %105 %106
%105 = OpLabel
+ OpBranch %104
+ %106 = OpLabel
+ OpBranch %97
+ %104 = OpLabel
OpStore %x_57 %true
OpStore %x_58 %57
OpStore %x_71_phi %57
OpStore %x_72_phi %true
- OpBranch %98
- %99 = OpLabel
- OpStore %x_65_phi %false
- OpStore %x_8_phi %int_0
OpBranch %97
%98 = OpLabel
- %108 = OpLoad %v3float %x_71_phi
- OpStore %x_71 %108
- %109 = OpLoad %bool %x_72_phi
- %110 = OpLoad %v3float %x_71
- OpStore %x_75_phi %110
- OpSelectionMerge %111 None
- OpBranchConditional %109 %112 %111
- %112 = OpLabel
- OpBranch %88
+ OpStore %x_65_phi %false
+ OpStore %x_8_phi %int_0
+ OpBranch %96
+ %97 = OpLabel
+ %107 = OpLoad %v3float %x_71_phi
+ OpStore %x_71 %107
+ %108 = OpLoad %bool %x_72_phi
+ %109 = OpLoad %v3float %x_71
+ OpStore %x_75_phi %109
+ OpSelectionMerge %110 None
+ OpBranchConditional %108 %111 %110
%111 = OpLabel
+ OpBranch %87
+ %110 = OpLabel
OpStore %x_74 %50
OpStore %x_57 %true
- %113 = OpLoad %v3float %x_74
- OpStore %x_75_phi %113
- OpBranch %88
- %89 = OpLabel
- OpStore %x_60_phi %false
+ %112 = OpLoad %v3float %x_74
+ OpStore %x_75_phi %112
OpBranch %87
%88 = OpLabel
- %114 = OpLoad %v3float %x_75_phi
- OpReturnValue %114
+ OpStore %x_60_phi %false
+ OpBranch %86
+ %87 = OpLabel
+ %113 = OpLoad %v3float %x_75_phi
+ OpReturnValue %113
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.wgsl.expected.spvasm
index 9396999..894685d 100644
--- a/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/return-inside-loop-in-function/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 115
+; Bound: 114
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37 "x_37"
@@ -25,8 +25,7 @@
OpName %x_52_phi "x_52_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
OpName %GLF_live4drawShape_ "GLF_live4drawShape_"
OpName %x_57 "x_57"
@@ -41,15 +40,15 @@
OpName %x_8_phi "x_8_phi"
OpName %x_71_phi "x_71_phi"
OpName %x_72_phi "x_72_phi"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -70,8 +69,8 @@
%true = OpConstantTrue %bool
%57 = OpConstantComposite %v3float %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
- %77 = OpTypeFunction %v3float
+ %65 = OpTypeFunction %main_out
+ %76 = OpTypeFunction %v3float
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %16
@@ -152,23 +151,22 @@
OpStore %x_38 %64
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %65
-%tint_symbol = OpFunctionParameter %main_out
- %69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %70
- OpReturn
+ %main_inner = OpFunction %main_out None %65
+ %68 = OpLabel
+ %69 = OpFunctionCall %void %main_1
+ %70 = OpLoad %v4float %x_GLF_color
+ %71 = OpCompositeConstruct %main_out %70
+ OpReturnValue %71
OpFunctionEnd
%main = OpFunction %void None %8
- %72 = OpLabel
- %73 = OpFunctionCall %void %main_1
- %75 = OpLoad %v4float %x_GLF_color
- %76 = OpCompositeConstruct %main_out %75
- %74 = OpFunctionCall %void %tint_symbol_2 %76
+ %73 = OpLabel
+ %74 = OpFunctionCall %main_out %main_inner
+ %75 = OpCompositeExtract %v4float %74 0
+ OpStore %x_GLF_color_1_1 %75
OpReturn
OpFunctionEnd
-%GLF_live4drawShape_ = OpFunction %v3float None %77
- %79 = OpLabel
+%GLF_live4drawShape_ = OpFunction %v3float None %76
+ %78 = OpLabel
%x_57 = OpVariable %_ptr_Function_bool Function %16
%x_58 = OpVariable %_ptr_Function_v3float Function %20
%i = OpVariable %_ptr_Function_int Function %24
@@ -183,63 +181,63 @@
%x_72_phi = OpVariable %_ptr_Function_bool Function %16
OpStore %x_57 %false
OpStore %x_60_phi %false
- OpBranch %87
- %87 = OpLabel
- OpLoopMerge %88 %89 None
- OpBranch %90
- %90 = OpLabel
- %96 = OpLoad %bool %x_60_phi
+ OpBranch %86
+ %86 = OpLabel
+ OpLoopMerge %87 %88 None
+ OpBranch %89
+ %89 = OpLabel
+ %95 = OpLoad %bool %x_60_phi
OpStore %i %int_0
- OpStore %x_65_phi %96
+ OpStore %x_65_phi %95
OpStore %x_8_phi %int_0
- OpBranch %97
- %97 = OpLabel
- OpLoopMerge %98 %99 None
- OpBranch %100
- %100 = OpLabel
- %101 = OpLoad %bool %x_65_phi
- OpStore %x_65 %101
- %102 = OpLoad %int %x_8_phi
+ OpBranch %96
+ %96 = OpLabel
+ OpLoopMerge %97 %98 None
+ OpBranch %99
+ %99 = OpLabel
+ %100 = OpLoad %bool %x_65_phi
+ OpStore %x_65 %100
+ %101 = OpLoad %int %x_8_phi
OpStore %x_71_phi %50
- %103 = OpLoad %bool %x_65
- OpStore %x_72_phi %103
- %104 = OpSLessThan %bool %102 %int_0
- OpSelectionMerge %105 None
- OpBranchConditional %104 %106 %107
- %106 = OpLabel
- OpBranch %105
- %107 = OpLabel
- OpBranch %98
+ %102 = OpLoad %bool %x_65
+ OpStore %x_72_phi %102
+ %103 = OpSLessThan %bool %101 %int_0
+ OpSelectionMerge %104 None
+ OpBranchConditional %103 %105 %106
%105 = OpLabel
+ OpBranch %104
+ %106 = OpLabel
+ OpBranch %97
+ %104 = OpLabel
OpStore %x_57 %true
OpStore %x_58 %57
OpStore %x_71_phi %57
OpStore %x_72_phi %true
- OpBranch %98
- %99 = OpLabel
- OpStore %x_65_phi %false
- OpStore %x_8_phi %int_0
OpBranch %97
%98 = OpLabel
- %108 = OpLoad %v3float %x_71_phi
- OpStore %x_71 %108
- %109 = OpLoad %bool %x_72_phi
- %110 = OpLoad %v3float %x_71
- OpStore %x_75_phi %110
- OpSelectionMerge %111 None
- OpBranchConditional %109 %112 %111
- %112 = OpLabel
- OpBranch %88
+ OpStore %x_65_phi %false
+ OpStore %x_8_phi %int_0
+ OpBranch %96
+ %97 = OpLabel
+ %107 = OpLoad %v3float %x_71_phi
+ OpStore %x_71 %107
+ %108 = OpLoad %bool %x_72_phi
+ %109 = OpLoad %v3float %x_71
+ OpStore %x_75_phi %109
+ OpSelectionMerge %110 None
+ OpBranchConditional %108 %111 %110
%111 = OpLabel
+ OpBranch %87
+ %110 = OpLabel
OpStore %x_74 %50
OpStore %x_57 %true
- %113 = OpLoad %v3float %x_74
- OpStore %x_75_phi %113
- OpBranch %88
- %89 = OpLabel
- OpStore %x_60_phi %false
+ %112 = OpLoad %v3float %x_74
+ OpStore %x_75_phi %112
OpBranch %87
%88 = OpLabel
- %114 = OpLoad %v3float %x_75_phi
- OpReturnValue %114
+ OpStore %x_60_phi %false
+ OpBranch %86
+ %87 = OpLabel
+ %113 = OpLoad %v3float %x_75_phi
+ OpReturnValue %113
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.spvasm.expected.spvasm
index 4e21ac0..acc14da 100644
--- a/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 117
+; Bound: 116
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37 "x_37"
@@ -33,27 +33,26 @@
OpName %x_71_phi "x_71_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -81,7 +80,7 @@
%uint_2 = OpConstant %uint 2
%104 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %20
@@ -209,18 +208,17 @@
OpStore %x_GLF_color %104
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %105
-%tint_symbol = OpFunctionParameter %main_out
- %109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %110
- OpReturn
+ %main_inner = OpFunction %main_out None %105
+ %108 = OpLabel
+ %109 = OpFunctionCall %void %main_1
+ %110 = OpLoad %v4float %x_GLF_color
+ %111 = OpCompositeConstruct %main_out %110
+ OpReturnValue %111
OpFunctionEnd
%main = OpFunction %void None %12
- %112 = OpLabel
- %113 = OpFunctionCall %void %main_1
- %115 = OpLoad %v4float %x_GLF_color
- %116 = OpCompositeConstruct %main_out %115
- %114 = OpFunctionCall %void %tint_symbol_2 %116
+ %113 = OpLabel
+ %114 = OpFunctionCall %main_out %main_inner
+ %115 = OpCompositeExtract %v4float %114 0
+ OpStore %x_GLF_color_1_1 %115
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.wgsl.expected.spvasm
index 4e21ac0..acc14da 100644
--- a/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/returned-boolean-in-vector/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 117
+; Bound: 116
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_36 "x_36"
OpName %x_37 "x_37"
@@ -33,27 +33,26 @@
OpName %x_71_phi "x_71_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%bool = OpTypeBool
@@ -81,7 +80,7 @@
%uint_2 = OpConstant %uint 2
%104 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_36 = OpVariable %_ptr_Function_bool Function %20
@@ -209,18 +208,17 @@
OpStore %x_GLF_color %104
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %105
-%tint_symbol = OpFunctionParameter %main_out
- %109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %110
- OpReturn
+ %main_inner = OpFunction %main_out None %105
+ %108 = OpLabel
+ %109 = OpFunctionCall %void %main_1
+ %110 = OpLoad %v4float %x_GLF_color
+ %111 = OpCompositeConstruct %main_out %110
+ OpReturnValue %111
OpFunctionEnd
%main = OpFunction %void None %12
- %112 = OpLabel
- %113 = OpFunctionCall %void %main_1
- %115 = OpLoad %v4float %x_GLF_color
- %116 = OpCompositeConstruct %main_out %115
- %114 = OpFunctionCall %void %tint_symbol_2 %116
+ %113 = OpLabel
+ %114 = OpFunctionCall %main_out %main_inner
+ %115 = OpCompositeExtract %v4float %114 0
+ OpStore %x_GLF_color_1_1 %115
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.spvasm.expected.spvasm
index 92f7fbd..8142eed 100644
--- a/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_42 "x_42"
OpName %x_39 "x_39"
@@ -30,31 +30,31 @@
OpName %x_45_phi "x_45_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -79,21 +79,21 @@
%_ptr_Function_float = OpTypePointer Function %float
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %125 = OpTypeFunction %void %main_out
+ %125 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
- %x_42 = OpVariable %_ptr_Function_v4float Function %5
+ %x_42 = OpVariable %_ptr_Function_v4float Function %7
%x_39 = OpVariable %_ptr_Function_bool Function %28
%x_38_phi = OpVariable %_ptr_Function_bool Function %28
- %x_41_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_42_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_41_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_42_phi = OpVariable %_ptr_Function_v4float Function %7
%x_47_phi = OpVariable %_ptr_Function_int Function %51
%x_39_phi = OpVariable %_ptr_Function_bool Function %28
- %x_45 = OpVariable %_ptr_Function_v4float Function %5
+ %x_45 = OpVariable %_ptr_Function_v4float Function %7
%x_48 = OpVariable %_ptr_Function_int Function %51
- %x_66 = OpVariable %_ptr_Function_v4float Function %5
- %x_70 = OpVariable %_ptr_Function_v4float Function %5
- %x_45_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_66 = OpVariable %_ptr_Function_v4float Function %7
+ %x_70 = OpVariable %_ptr_Function_v4float Function %7
+ %x_45_phi = OpVariable %_ptr_Function_v4float Function %7
OpBranch %19
%19 = OpLabel
OpLoopMerge %20 %21 None
@@ -221,20 +221,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %125
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %125
+%gl_FragCoord_param = OpFunctionParameter %v4float
%129 = OpLabel
- %130 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %130
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %15
- %132 = OpLabel
- %133 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %133
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_3 %137
+ %134 = OpLabel
+ %136 = OpLoad %v4float %gl_FragCoord_param_1
+ %135 = OpFunctionCall %main_out %main_inner %136
+ %137 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %137
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.wgsl.expected.spvasm
index 92f7fbd..8142eed 100644
--- a/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/set-color-in-one-iteration-while-loop/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%39 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_42 "x_42"
OpName %x_39 "x_39"
@@ -30,31 +30,31 @@
OpName %x_45_phi "x_45_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -79,21 +79,21 @@
%_ptr_Function_float = OpTypePointer Function %float
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float
- %125 = OpTypeFunction %void %main_out
+ %125 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
- %x_42 = OpVariable %_ptr_Function_v4float Function %5
+ %x_42 = OpVariable %_ptr_Function_v4float Function %7
%x_39 = OpVariable %_ptr_Function_bool Function %28
%x_38_phi = OpVariable %_ptr_Function_bool Function %28
- %x_41_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_42_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_41_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_42_phi = OpVariable %_ptr_Function_v4float Function %7
%x_47_phi = OpVariable %_ptr_Function_int Function %51
%x_39_phi = OpVariable %_ptr_Function_bool Function %28
- %x_45 = OpVariable %_ptr_Function_v4float Function %5
+ %x_45 = OpVariable %_ptr_Function_v4float Function %7
%x_48 = OpVariable %_ptr_Function_int Function %51
- %x_66 = OpVariable %_ptr_Function_v4float Function %5
- %x_70 = OpVariable %_ptr_Function_v4float Function %5
- %x_45_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_66 = OpVariable %_ptr_Function_v4float Function %7
+ %x_70 = OpVariable %_ptr_Function_v4float Function %7
+ %x_45_phi = OpVariable %_ptr_Function_v4float Function %7
OpBranch %19
%19 = OpLabel
OpLoopMerge %20 %21 None
@@ -221,20 +221,20 @@
%20 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %125
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %125
+%gl_FragCoord_param = OpFunctionParameter %v4float
%129 = OpLabel
- %130 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %130
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %130 = OpFunctionCall %void %main_1
+ %131 = OpLoad %v4float %x_GLF_color
+ %132 = OpCompositeConstruct %main_out %131
+ OpReturnValue %132
OpFunctionEnd
%main = OpFunction %void None %15
- %132 = OpLabel
- %133 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %133
- %134 = OpFunctionCall %void %main_1
- %136 = OpLoad %v4float %x_GLF_color
- %137 = OpCompositeConstruct %main_out %136
- %135 = OpFunctionCall %void %tint_symbol_3 %137
+ %134 = OpLabel
+ %136 = OpLoad %v4float %gl_FragCoord_param_1
+ %135 = OpFunctionCall %main_out %main_inner %136
+ %137 = OpCompositeExtract %v4float %135 0
+ OpStore %x_GLF_color_1_1 %137
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.spvasm.expected.spvasm
index 58e841e..2d9494d 100644
--- a/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.spvasm.expected.spvasm
@@ -6,16 +6,16 @@
OpCapability Shader
%44 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gv "gv"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %lv "lv"
OpName %x_43 "x_43"
@@ -23,34 +23,34 @@
OpName %GLF_live5_looplimiter6 "GLF_live5_looplimiter6"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
- %gv = OpVariable %_ptr_Private_float Private %8
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %float
+ %gv = OpVariable %_ptr_Private_float Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,11 +74,11 @@
%int_1 = OpConstant %int 1
%95 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
- %lv = OpVariable %_ptr_Function_float Function %8
- %x_43 = OpVariable %_ptr_Function_float Function %8
+ %lv = OpVariable %_ptr_Function_float Function %14
+ %x_43 = OpVariable %_ptr_Function_float Function %14
%GLF_live5r = OpVariable %_ptr_Function_int Function %28
%GLF_live5_looplimiter6 = OpVariable %_ptr_Function_int Function %28
%34 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %uint_1
@@ -172,20 +172,20 @@
OpStore %x_GLF_color %95
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %96
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %96
+%gl_FragCoord_param = OpFunctionParameter %v4float
%100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %101
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %18
- %103 = OpLabel
- %104 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %104
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_3 %108
+ %105 = OpLabel
+ %107 = OpLoad %v4float %gl_FragCoord_param_1
+ %106 = OpFunctionCall %main_out %main_inner %107
+ %108 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.wgsl.expected.spvasm
index 58e841e..2d9494d 100644
--- a/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/similar-nested-ifs/0-opt.wgsl.expected.spvasm
@@ -6,16 +6,16 @@
OpCapability Shader
%44 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gv "gv"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %lv "lv"
OpName %x_43 "x_43"
@@ -23,34 +23,34 @@
OpName %GLF_live5_looplimiter6 "GLF_live5_looplimiter6"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
- %gv = OpVariable %_ptr_Private_float Private %8
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %float
+ %gv = OpVariable %_ptr_Private_float Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -74,11 +74,11 @@
%int_1 = OpConstant %int 1
%95 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %96 = OpTypeFunction %void %main_out
+ %96 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
- %lv = OpVariable %_ptr_Function_float Function %8
- %x_43 = OpVariable %_ptr_Function_float Function %8
+ %lv = OpVariable %_ptr_Function_float Function %14
+ %x_43 = OpVariable %_ptr_Function_float Function %14
%GLF_live5r = OpVariable %_ptr_Function_int Function %28
%GLF_live5_looplimiter6 = OpVariable %_ptr_Function_int Function %28
%34 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %uint_1
@@ -172,20 +172,20 @@
OpStore %x_GLF_color %95
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %96
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %96
+%gl_FragCoord_param = OpFunctionParameter %v4float
%100 = OpLabel
- %101 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %101
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %101 = OpFunctionCall %void %main_1
+ %102 = OpLoad %v4float %x_GLF_color
+ %103 = OpCompositeConstruct %main_out %102
+ OpReturnValue %103
OpFunctionEnd
%main = OpFunction %void None %18
- %103 = OpLabel
- %104 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %104
- %105 = OpFunctionCall %void %main_1
- %107 = OpLoad %v4float %x_GLF_color
- %108 = OpCompositeConstruct %main_out %107
- %106 = OpFunctionCall %void %tint_symbol_3 %108
+ %105 = OpLabel
+ %107 = OpLoad %v4float %gl_FragCoord_param_1
+ %106 = OpFunctionCall %main_out %main_inner %107
+ %108 = OpCompositeExtract %v4float %106 0
+ OpStore %x_GLF_color_1_1 %108
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.spvasm.expected.spvasm
index e273234..0f1771b 100644
--- a/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
%32 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live9r "GLF_live9r"
OpName %g "g"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,7 +41,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%GLF_live9r = OpVariable %_ptr_Function_int Function %15
@@ -77,18 +76,17 @@
OpStore %x_GLF_color %40
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %8
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.wgsl.expected.spvasm
index e273234..0f1771b 100644
--- a/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/smoothstep-after-loop/0-opt.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 52
; Schema: 0
OpCapability Shader
%32 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live9r "GLF_live9r"
OpName %g "g"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -42,7 +41,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %41 = OpTypeFunction %void %main_out
+ %41 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%GLF_live9r = OpVariable %_ptr_Function_int Function %15
@@ -77,18 +76,17 @@
OpStore %x_GLF_color %40
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %41
-%tint_symbol = OpFunctionParameter %main_out
- %45 = OpLabel
- %46 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %46
- OpReturn
+ %main_inner = OpFunction %main_out None %41
+ %44 = OpLabel
+ %45 = OpFunctionCall %void %main_1
+ %46 = OpLoad %v4float %x_GLF_color
+ %47 = OpCompositeConstruct %main_out %46
+ OpReturnValue %47
OpFunctionEnd
%main = OpFunction %void None %8
- %48 = OpLabel
- %49 = OpFunctionCall %void %main_1
- %51 = OpLoad %v4float %x_GLF_color
- %52 = OpCompositeConstruct %main_out %51
- %50 = OpFunctionCall %void %tint_symbol_2 %52
+ %49 = OpLabel
+ %50 = OpFunctionCall %main_out %main_inner
+ %51 = OpCompositeExtract %v4float %50 0
+ OpStore %x_GLF_color_1_1 %51
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.spvasm.expected.spvasm
index ec2ad53..0897775 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.spvasm.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -51,23 +51,27 @@
OpName %x_397_phi "x_397_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -77,13 +81,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -117,7 +117,7 @@
%float_0 = OpConstant %float 0
%492 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %493 = OpTypeFunction %void %main_out
+ %493 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -744,20 +744,20 @@
OpStore %x_GLF_color %492
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %493
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %493
+%gl_FragCoord_param = OpFunctionParameter %v4float
%497 = OpLabel
- %498 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %498
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %498 = OpFunctionCall %void %main_1
+ %499 = OpLoad %v4float %x_GLF_color
+ %500 = OpCompositeConstruct %main_out %499
+ OpReturnValue %500
OpFunctionEnd
%main = OpFunction %void None %22
- %500 = OpLabel
- %501 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %501
- %502 = OpFunctionCall %void %main_1
- %504 = OpLoad %v4float %x_GLF_color
- %505 = OpCompositeConstruct %main_out %504
- %503 = OpFunctionCall %void %tint_symbol_3 %505
+ %502 = OpLabel
+ %504 = OpLoad %v4float %gl_FragCoord_param_1
+ %503 = OpFunctionCall %main_out %main_inner %504
+ %505 = OpCompositeExtract %v4float %503 0
+ OpStore %x_GLF_color_1_1 %505
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.wgsl.expected.spvasm
index ec2ad53..0897775 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-access-chains/0-opt.wgsl.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -51,23 +51,27 @@
OpName %x_397_phi "x_397_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -77,13 +81,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -117,7 +117,7 @@
%float_0 = OpConstant %float 0
%492 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %493 = OpTypeFunction %void %main_out
+ %493 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -744,20 +744,20 @@
OpStore %x_GLF_color %492
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %493
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %493
+%gl_FragCoord_param = OpFunctionParameter %v4float
%497 = OpLabel
- %498 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %498
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %498 = OpFunctionCall %void %main_1
+ %499 = OpLoad %v4float %x_GLF_color
+ %500 = OpCompositeConstruct %main_out %499
+ OpReturnValue %500
OpFunctionEnd
%main = OpFunction %void None %22
- %500 = OpLabel
- %501 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %501
- %502 = OpFunctionCall %void %main_1
- %504 = OpLoad %v4float %x_GLF_color
- %505 = OpCompositeConstruct %main_out %504
- %503 = OpFunctionCall %void %tint_symbol_3 %505
+ %502 = OpLabel
+ %504 = OpLoad %v4float %gl_FragCoord_param_1
+ %503 = OpFunctionCall %main_out %main_inner %504
+ %505 = OpCompositeExtract %v4float %503 0
+ OpStore %x_GLF_color_1_1 %505
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.spvasm.expected.spvasm
index 4762c18..5473a39 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_51 "x_51"
@@ -55,31 +55,31 @@
OpName %x_130 "x_130"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -118,7 +118,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %251 = OpTypeFunction %void %main_out
+ %251 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -440,20 +440,20 @@
OpStore %x_GLF_color %250
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %251
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %251
+%gl_FragCoord_param = OpFunctionParameter %v4float
%255 = OpLabel
- %256 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %256
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %256 = OpFunctionCall %void %main_1
+ %257 = OpLoad %v4float %x_GLF_color
+ %258 = OpCompositeConstruct %main_out %257
+ OpReturnValue %258
OpFunctionEnd
%main = OpFunction %void None %15
- %258 = OpLabel
- %259 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %259
- %260 = OpFunctionCall %void %main_1
- %262 = OpLoad %v4float %x_GLF_color
- %263 = OpCompositeConstruct %main_out %262
- %261 = OpFunctionCall %void %tint_symbol_3 %263
+ %260 = OpLabel
+ %262 = OpLoad %v4float %gl_FragCoord_param_1
+ %261 = OpFunctionCall %main_out %main_inner %262
+ %263 = OpCompositeExtract %v4float %261 0
+ OpStore %x_GLF_color_1_1 %263
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.wgsl.expected.spvasm
index 777603d..37f2f9c 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_51 "x_51"
@@ -55,31 +55,31 @@
OpName %x_130 "x_130"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -118,7 +118,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %241 = OpTypeFunction %void %main_out
+ %241 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -430,20 +430,20 @@
OpStore %x_GLF_color %240
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %241
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %241
+%gl_FragCoord_param = OpFunctionParameter %v4float
%245 = OpLabel
- %246 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %246
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %246 = OpFunctionCall %void %main_1
+ %247 = OpLoad %v4float %x_GLF_color
+ %248 = OpCompositeConstruct %main_out %247
+ OpReturnValue %248
OpFunctionEnd
%main = OpFunction %void None %15
- %248 = OpLabel
- %249 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %249
- %250 = OpFunctionCall %void %main_1
- %252 = OpLoad %v4float %x_GLF_color
- %253 = OpCompositeConstruct %main_out %252
- %251 = OpFunctionCall %void %tint_symbol_3 %253
+ %250 = OpLabel
+ %252 = OpLoad %v4float %gl_FragCoord_param_1
+ %251 = OpFunctionCall %main_out %main_inner %252
+ %253 = OpCompositeExtract %v4float %251 0
+ OpStore %x_GLF_color_1_1 %253
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.spvasm.expected.spvasm
index e2f80ed..0fb4e79 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%58 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_53 "x_53"
@@ -55,31 +55,31 @@
OpName %x_136 "x_136"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -119,7 +119,7 @@
%uint_2 = OpConstant %uint 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %264 = OpTypeFunction %void %main_out
+ %264 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -453,20 +453,20 @@
OpStore %x_GLF_color %263
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %264
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %264
+%gl_FragCoord_param = OpFunctionParameter %v4float
%268 = OpLabel
- %269 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %269
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %269 = OpFunctionCall %void %main_1
+ %270 = OpLoad %v4float %x_GLF_color
+ %271 = OpCompositeConstruct %main_out %270
+ OpReturnValue %271
OpFunctionEnd
%main = OpFunction %void None %15
- %271 = OpLabel
- %272 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %272
- %273 = OpFunctionCall %void %main_1
- %275 = OpLoad %v4float %x_GLF_color
- %276 = OpCompositeConstruct %main_out %275
- %274 = OpFunctionCall %void %tint_symbol_3 %276
+ %273 = OpLabel
+ %275 = OpLoad %v4float %gl_FragCoord_param_1
+ %274 = OpFunctionCall %main_out %main_inner %275
+ %276 = OpCompositeExtract %v4float %274 0
+ OpStore %x_GLF_color_1_1 %276
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.wgsl.expected.spvasm
index 4f6810f..600e4cf 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite-phi/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%58 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_53 "x_53"
@@ -55,31 +55,31 @@
OpName %x_136 "x_136"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -119,7 +119,7 @@
%uint_2 = OpConstant %uint 2
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %254 = OpTypeFunction %void %main_out
+ %254 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -443,20 +443,20 @@
OpStore %x_GLF_color %253
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %254
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %254
+%gl_FragCoord_param = OpFunctionParameter %v4float
%258 = OpLabel
- %259 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %259
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %259 = OpFunctionCall %void %main_1
+ %260 = OpLoad %v4float %x_GLF_color
+ %261 = OpCompositeConstruct %main_out %260
+ OpReturnValue %261
OpFunctionEnd
%main = OpFunction %void None %15
- %261 = OpLabel
- %262 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %262
- %263 = OpFunctionCall %void %main_1
- %265 = OpLoad %v4float %x_GLF_color
- %266 = OpCompositeConstruct %main_out %265
- %264 = OpFunctionCall %void %tint_symbol_3 %266
+ %263 = OpLabel
+ %265 = OpLoad %v4float %gl_FragCoord_param_1
+ %264 = OpFunctionCall %main_out %main_inner %265
+ %266 = OpCompositeExtract %v4float %264 0
+ OpStore %x_GLF_color_1_1 %266
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.spvasm.expected.spvasm
index feaee7c..790f08e 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_66 "x_66"
@@ -23,32 +23,32 @@
OpName %x_70 "x_70"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -161,20 +161,20 @@
OpStore %x_GLF_color %104
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %105
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %105
+%gl_FragCoord_param = OpFunctionParameter %v4float
%109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %110
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %15
- %112 = OpLabel
- %113 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %113
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_3 %117
+ %114 = OpLabel
+ %116 = OpLoad %v4float %gl_FragCoord_param_1
+ %115 = OpFunctionCall %main_out %main_inner %116
+ %117 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.wgsl.expected.spvasm
index feaee7c..790f08e 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite2/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_66 "x_66"
@@ -23,32 +23,32 @@
OpName %x_70 "x_70"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %105 = OpTypeFunction %void %main_out
+ %105 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -161,20 +161,20 @@
OpStore %x_GLF_color %104
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %105
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %105
+%gl_FragCoord_param = OpFunctionParameter %v4float
%109 = OpLabel
- %110 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %110
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %110 = OpFunctionCall %void %main_1
+ %111 = OpLoad %v4float %x_GLF_color
+ %112 = OpCompositeConstruct %main_out %111
+ OpReturnValue %112
OpFunctionEnd
%main = OpFunction %void None %15
- %112 = OpLabel
- %113 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %113
- %114 = OpFunctionCall %void %main_1
- %116 = OpLoad %v4float %x_GLF_color
- %117 = OpCompositeConstruct %main_out %116
- %115 = OpFunctionCall %void %tint_symbol_3 %117
+ %114 = OpLabel
+ %116 = OpLoad %v4float %gl_FragCoord_param_1
+ %115 = OpFunctionCall %main_out %main_inner %116
+ %117 = OpCompositeExtract %v4float %115 0
+ OpStore %x_GLF_color_1_1 %117
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.spvasm.expected.spvasm
index f9920e1..7eb9d59 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_72 "x_72"
@@ -23,32 +23,32 @@
OpName %x_76 "x_76"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -92,7 +92,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -170,20 +170,20 @@
OpStore %x_GLF_color %113
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %114
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %114
+%gl_FragCoord_param = OpFunctionParameter %v4float
%118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %119
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %119 = OpFunctionCall %void %main_1
+ %120 = OpLoad %v4float %x_GLF_color
+ %121 = OpCompositeConstruct %main_out %120
+ OpReturnValue %121
OpFunctionEnd
%main = OpFunction %void None %15
- %121 = OpLabel
- %122 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %122
- %123 = OpFunctionCall %void %main_1
- %125 = OpLoad %v4float %x_GLF_color
- %126 = OpCompositeConstruct %main_out %125
- %124 = OpFunctionCall %void %tint_symbol_3 %126
+ %123 = OpLabel
+ %125 = OpLoad %v4float %gl_FragCoord_param_1
+ %124 = OpFunctionCall %main_out %main_inner %125
+ %126 = OpCompositeExtract %v4float %124 0
+ OpStore %x_GLF_color_1_1 %126
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.wgsl.expected.spvasm
index f9920e1..7eb9d59 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composite2/1.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_72 "x_72"
@@ -23,32 +23,32 @@
OpName %x_76 "x_76"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -92,7 +92,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %114 = OpTypeFunction %void %main_out
+ %114 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -170,20 +170,20 @@
OpStore %x_GLF_color %113
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %114
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %114
+%gl_FragCoord_param = OpFunctionParameter %v4float
%118 = OpLabel
- %119 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %119
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %119 = OpFunctionCall %void %main_1
+ %120 = OpLoad %v4float %x_GLF_color
+ %121 = OpCompositeConstruct %main_out %120
+ OpReturnValue %121
OpFunctionEnd
%main = OpFunction %void None %15
- %121 = OpLabel
- %122 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %122
- %123 = OpFunctionCall %void %main_1
- %125 = OpLoad %v4float %x_GLF_color
- %126 = OpCompositeConstruct %main_out %125
- %124 = OpFunctionCall %void %tint_symbol_3 %126
+ %123 = OpLabel
+ %125 = OpLoad %v4float %gl_FragCoord_param_1
+ %124 = OpFunctionCall %main_out %main_inner %125
+ %126 = OpCompositeExtract %v4float %124 0
+ OpStore %x_GLF_color_1_1 %126
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composites/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composites/0.spvasm.expected.spvasm
index 4a43cab..574c745 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composites/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composites/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%256 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_195 "x_195"
OpName %x_196 "x_196"
@@ -31,32 +31,32 @@
OpName %x_214_1 "x_214_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -246,19 +246,19 @@
%int_1 = OpConstant %int 1
%277 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %279 = OpTypeFunction %void %main_out
+ %279 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_195 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_209 = OpVariable %_ptr_Function_v2int Function %31
- %x_241 = OpVariable %_ptr_Function_v4float Function %5
- %x_243 = OpVariable %_ptr_Function_v4float Function %5
+ %x_241 = OpVariable %_ptr_Function_v4float Function %7
+ %x_243 = OpVariable %_ptr_Function_v4float Function %7
%x_213_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_243_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_243_phi = OpVariable %_ptr_Function_v4float Function %7
%x_244_phi = OpVariable %_ptr_Function_bool Function %40
- %x_246_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_246_phi = OpVariable %_ptr_Function_v4float Function %7
%x_230 = OpVariable %_ptr_Function_bool Function %40
%x_231_phi = OpVariable %_ptr_Function_bool Function %40
%x_214_1 = OpVariable %_ptr_Function_v2int Function %31
@@ -365,20 +365,20 @@
OpStore %x_GLF_color %278
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %279
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %279
+%gl_FragCoord_param = OpFunctionParameter %v4float
%283 = OpLabel
- %284 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %284
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %284 = OpFunctionCall %void %main_1
+ %285 = OpLoad %v4float %x_GLF_color
+ %286 = OpCompositeConstruct %main_out %285
+ OpReturnValue %286
OpFunctionEnd
%main = OpFunction %void None %15
- %286 = OpLabel
- %287 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %287
- %288 = OpFunctionCall %void %main_1
- %290 = OpLoad %v4float %x_GLF_color
- %291 = OpCompositeConstruct %main_out %290
- %289 = OpFunctionCall %void %tint_symbol_3 %291
+ %288 = OpLabel
+ %290 = OpLoad %v4float %gl_FragCoord_param_1
+ %289 = OpFunctionCall %main_out %main_inner %290
+ %291 = OpCompositeExtract %v4float %289 0
+ OpStore %x_GLF_color_1_1 %291
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composites/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composites/0.wgsl.expected.spvasm
index 4a43cab..574c745 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composites/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composites/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%256 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_195 "x_195"
OpName %x_196 "x_196"
@@ -31,32 +31,32 @@
OpName %x_214_1 "x_214_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -246,19 +246,19 @@
%int_1 = OpConstant %int 1
%277 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %279 = OpTypeFunction %void %main_out
+ %279 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_195 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_209 = OpVariable %_ptr_Function_v2int Function %31
- %x_241 = OpVariable %_ptr_Function_v4float Function %5
- %x_243 = OpVariable %_ptr_Function_v4float Function %5
+ %x_241 = OpVariable %_ptr_Function_v4float Function %7
+ %x_243 = OpVariable %_ptr_Function_v4float Function %7
%x_213_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_243_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_243_phi = OpVariable %_ptr_Function_v4float Function %7
%x_244_phi = OpVariable %_ptr_Function_bool Function %40
- %x_246_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_246_phi = OpVariable %_ptr_Function_v4float Function %7
%x_230 = OpVariable %_ptr_Function_bool Function %40
%x_231_phi = OpVariable %_ptr_Function_bool Function %40
%x_214_1 = OpVariable %_ptr_Function_v2int Function %31
@@ -365,20 +365,20 @@
OpStore %x_GLF_color %278
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %279
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %279
+%gl_FragCoord_param = OpFunctionParameter %v4float
%283 = OpLabel
- %284 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %284
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %284 = OpFunctionCall %void %main_1
+ %285 = OpLoad %v4float %x_GLF_color
+ %286 = OpCompositeConstruct %main_out %285
+ OpReturnValue %286
OpFunctionEnd
%main = OpFunction %void None %15
- %286 = OpLabel
- %287 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %287
- %288 = OpFunctionCall %void %main_1
- %290 = OpLoad %v4float %x_GLF_color
- %291 = OpCompositeConstruct %main_out %290
- %289 = OpFunctionCall %void %tint_symbol_3 %291
+ %288 = OpLabel
+ %290 = OpLoad %v4float %gl_FragCoord_param_1
+ %289 = OpFunctionCall %main_out %main_inner %290
+ %291 = OpCompositeExtract %v4float %289 0
+ OpStore %x_GLF_color_1_1 %291
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composites/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composites/1.spvasm.expected.spvasm
index 8f758b6..efa8c69 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composites/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composites/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%271 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_195 "x_195"
OpName %x_196 "x_196"
@@ -32,32 +32,32 @@
OpName %x_219_1 "x_219_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -249,7 +249,7 @@
%int_1 = OpConstant %int 1
%292 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %294 = OpTypeFunction %void %main_out
+ %294 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_195 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
@@ -257,12 +257,12 @@
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_208 = OpVariable %_ptr_Function_v2float Function %30
%x_214 = OpVariable %_ptr_Function_v2int Function %34
- %x_249 = OpVariable %_ptr_Function_v4float Function %5
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
+ %x_249 = OpVariable %_ptr_Function_v4float Function %7
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
%x_218_phi = OpVariable %_ptr_Function_v2int Function %34
- %x_251_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_251_phi = OpVariable %_ptr_Function_v4float Function %7
%x_252_phi = OpVariable %_ptr_Function_bool Function %43
- %x_254_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_254_phi = OpVariable %_ptr_Function_v4float Function %7
%x_235 = OpVariable %_ptr_Function_bool Function %43
%x_236_phi = OpVariable %_ptr_Function_bool Function %43
%x_219_1 = OpVariable %_ptr_Function_v2int Function %34
@@ -382,20 +382,20 @@
OpStore %x_GLF_color %293
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %294
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %294
+%gl_FragCoord_param = OpFunctionParameter %v4float
%298 = OpLabel
- %299 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %299
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %299 = OpFunctionCall %void %main_1
+ %300 = OpLoad %v4float %x_GLF_color
+ %301 = OpCompositeConstruct %main_out %300
+ OpReturnValue %301
OpFunctionEnd
%main = OpFunction %void None %15
- %301 = OpLabel
- %302 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %302
- %303 = OpFunctionCall %void %main_1
- %305 = OpLoad %v4float %x_GLF_color
- %306 = OpCompositeConstruct %main_out %305
- %304 = OpFunctionCall %void %tint_symbol_3 %306
+ %303 = OpLabel
+ %305 = OpLoad %v4float %gl_FragCoord_param_1
+ %304 = OpFunctionCall %main_out %main_inner %305
+ %306 = OpCompositeExtract %v4float %304 0
+ OpStore %x_GLF_color_1_1 %306
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-composites/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-composites/1.wgsl.expected.spvasm
index 8f758b6..efa8c69 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-composites/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-composites/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%271 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_195 "x_195"
OpName %x_196 "x_196"
@@ -32,32 +32,32 @@
OpName %x_219_1 "x_219_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -249,7 +249,7 @@
%int_1 = OpConstant %int 1
%292 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %294 = OpTypeFunction %void %main_out
+ %294 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_195 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
@@ -257,12 +257,12 @@
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_208 = OpVariable %_ptr_Function_v2float Function %30
%x_214 = OpVariable %_ptr_Function_v2int Function %34
- %x_249 = OpVariable %_ptr_Function_v4float Function %5
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
+ %x_249 = OpVariable %_ptr_Function_v4float Function %7
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
%x_218_phi = OpVariable %_ptr_Function_v2int Function %34
- %x_251_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_251_phi = OpVariable %_ptr_Function_v4float Function %7
%x_252_phi = OpVariable %_ptr_Function_bool Function %43
- %x_254_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_254_phi = OpVariable %_ptr_Function_v4float Function %7
%x_235 = OpVariable %_ptr_Function_bool Function %43
%x_236_phi = OpVariable %_ptr_Function_bool Function %43
%x_219_1 = OpVariable %_ptr_Function_v2int Function %34
@@ -382,20 +382,20 @@
OpStore %x_GLF_color %293
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %294
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %294
+%gl_FragCoord_param = OpFunctionParameter %v4float
%298 = OpLabel
- %299 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %299
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %299 = OpFunctionCall %void %main_1
+ %300 = OpLoad %v4float %x_GLF_color
+ %301 = OpCompositeConstruct %main_out %300
+ OpReturnValue %301
OpFunctionEnd
%main = OpFunction %void None %15
- %301 = OpLabel
- %302 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %302
- %303 = OpFunctionCall %void %main_1
- %305 = OpLoad %v4float %x_GLF_color
- %306 = OpCompositeConstruct %main_out %305
- %304 = OpFunctionCall %void %tint_symbol_3 %306
+ %303 = OpLabel
+ %305 = OpLoad %v4float %gl_FragCoord_param_1
+ %304 = OpFunctionCall %main_out %main_inner %305
+ %306 = OpCompositeExtract %v4float %304 0
+ OpStore %x_GLF_color_1_1 %306
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.spvasm.expected.spvasm
index b8a67a8..dc8895d 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -14,8 +16,6 @@
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
OpName %x_60 "x_60"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -52,23 +52,27 @@
OpName %x_407_phi "x_407_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -78,19 +82,15 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%mat2v4float = OpTypeMatrix %v4float 2
%float_0 = OpConstant %float 0
- %20 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
- %21 = OpConstantComposite %mat2v4float %20 %20
+ %24 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+ %25 = OpConstantComposite %mat2v4float %24 %24
%_ptr_Private_mat2v4float = OpTypePointer Private %mat2v4float
- %x_60 = OpVariable %_ptr_Private_mat2v4float Private %21
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %x_60 = OpVariable %_ptr_Private_mat2v4float Private %25
%void = OpTypeVoid
%28 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -123,7 +123,7 @@
%501 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%503 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %504 = OpTypeFunction %void %main_out
+ %504 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %28
%31 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %34
@@ -364,7 +364,7 @@
%224 = OpLabel
OpStore %j %int_0
%227 = OpISub %int %173 %221
- OpStore %x_60 %21
+ OpStore %x_60 %25
OpSelectionMerge %228 None
OpBranchConditional %false %229 %228
%229 = OpLabel
@@ -760,20 +760,20 @@
OpStore %x_GLF_color %503
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %504
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %504
+%gl_FragCoord_param = OpFunctionParameter %v4float
%508 = OpLabel
- %509 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %509
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %509 = OpFunctionCall %void %main_1
+ %510 = OpLoad %v4float %x_GLF_color
+ %511 = OpCompositeConstruct %main_out %510
+ OpReturnValue %511
OpFunctionEnd
%main = OpFunction %void None %28
- %511 = OpLabel
- %512 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %512
- %513 = OpFunctionCall %void %main_1
- %515 = OpLoad %v4float %x_GLF_color
- %516 = OpCompositeConstruct %main_out %515
- %514 = OpFunctionCall %void %tint_symbol_3 %516
+ %513 = OpLabel
+ %515 = OpLoad %v4float %gl_FragCoord_param_1
+ %514 = OpFunctionCall %main_out %main_inner %515
+ %516 = OpCompositeExtract %v4float %514 0
+ OpStore %x_GLF_color_1_1 %516
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.wgsl.expected.spvasm
index b8a67a8..dc8895d 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-dead-break-and-unroll/1.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -14,8 +16,6 @@
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
OpName %x_60 "x_60"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -52,23 +52,27 @@
OpName %x_407_phi "x_407_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -78,19 +82,15 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%mat2v4float = OpTypeMatrix %v4float 2
%float_0 = OpConstant %float 0
- %20 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
- %21 = OpConstantComposite %mat2v4float %20 %20
+ %24 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+ %25 = OpConstantComposite %mat2v4float %24 %24
%_ptr_Private_mat2v4float = OpTypePointer Private %mat2v4float
- %x_60 = OpVariable %_ptr_Private_mat2v4float Private %21
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %x_60 = OpVariable %_ptr_Private_mat2v4float Private %25
%void = OpTypeVoid
%28 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -123,7 +123,7 @@
%501 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%503 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %504 = OpTypeFunction %void %main_out
+ %504 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %28
%31 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %34
@@ -364,7 +364,7 @@
%224 = OpLabel
OpStore %j %int_0
%227 = OpISub %int %173 %221
- OpStore %x_60 %21
+ OpStore %x_60 %25
OpSelectionMerge %228 None
OpBranchConditional %false %229 %228
%229 = OpLabel
@@ -760,20 +760,20 @@
OpStore %x_GLF_color %503
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %504
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %504
+%gl_FragCoord_param = OpFunctionParameter %v4float
%508 = OpLabel
- %509 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %509
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %509 = OpFunctionCall %void %main_1
+ %510 = OpLoad %v4float %x_GLF_color
+ %511 = OpCompositeConstruct %main_out %510
+ OpReturnValue %511
OpFunctionEnd
%main = OpFunction %void None %28
- %511 = OpLabel
- %512 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %512
- %513 = OpFunctionCall %void %main_1
- %515 = OpLoad %v4float %x_GLF_color
- %516 = OpCompositeConstruct %main_out %515
- %514 = OpFunctionCall %void %tint_symbol_3 %516
+ %513 = OpLabel
+ %515 = OpLoad %v4float %gl_FragCoord_param_1
+ %514 = OpFunctionCall %main_out %main_inner %515
+ %516 = OpCompositeExtract %v4float %514 0
+ OpStore %x_GLF_color_1_1 %516
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.spvasm.expected.spvasm
index d01b8b5..24b7928 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%202 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -15,8 +17,6 @@
OpName %x_GLF_color "x_GLF_color"
OpName %index "index"
OpName %state "state"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -35,44 +35,44 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
OpDecorate %_arr_int_uint_16 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %14 = OpConstantNull %int
- %index = OpVariable %_ptr_Private_int Private %14
+ %18 = OpConstantNull %int
+ %index = OpVariable %_ptr_Private_int Private %18
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
%_arr_int_uint_16 = OpTypeArray %int %uint_16
%_ptr_Private__arr_int_uint_16 = OpTypePointer Private %_arr_int_uint_16
- %20 = OpConstantNull %_arr_int_uint_16
- %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %20
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %24 = OpConstantNull %_arr_int_uint_16
+ %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %24
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -142,7 +142,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %208 = OpTypeFunction %void %main_out
+ %208 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -198,10 +198,10 @@
%match_vf2_ = OpFunction %v4float None %84
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%87 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
- %i = OpVariable %_ptr_Function_int Function %14
+ %res = OpVariable %_ptr_Function_v4float Function %7
+ %i = OpVariable %_ptr_Function_int Function %18
%param = OpVariable %_ptr_Function_v2float Function %92
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
@@ -287,20 +287,20 @@
OpStore %x_GLF_color %206
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %208
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %208
+%gl_FragCoord_param = OpFunctionParameter %v4float
%212 = OpLabel
- %213 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %213
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %213 = OpFunctionCall %void %main_1
+ %214 = OpLoad %v4float %x_GLF_color
+ %215 = OpCompositeConstruct %main_out %214
+ OpReturnValue %215
OpFunctionEnd
%main = OpFunction %void None %186
- %215 = OpLabel
- %216 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %216
- %217 = OpFunctionCall %void %main_1
- %219 = OpLoad %v4float %x_GLF_color
- %220 = OpCompositeConstruct %main_out %219
- %218 = OpFunctionCall %void %tint_symbol_3 %220
+ %217 = OpLabel
+ %219 = OpLoad %v4float %gl_FragCoord_param_1
+ %218 = OpFunctionCall %main_out %main_inner %219
+ %220 = OpCompositeExtract %v4float %218 0
+ OpStore %x_GLF_color_1_1 %220
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.wgsl.expected.spvasm
index d01b8b5..24b7928 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%202 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -15,8 +17,6 @@
OpName %x_GLF_color "x_GLF_color"
OpName %index "index"
OpName %state "state"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -35,44 +35,44 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
OpDecorate %_arr_int_uint_16 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %14 = OpConstantNull %int
- %index = OpVariable %_ptr_Private_int Private %14
+ %18 = OpConstantNull %int
+ %index = OpVariable %_ptr_Private_int Private %18
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
%_arr_int_uint_16 = OpTypeArray %int %uint_16
%_ptr_Private__arr_int_uint_16 = OpTypePointer Private %_arr_int_uint_16
- %20 = OpConstantNull %_arr_int_uint_16
- %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %20
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %24 = OpConstantNull %_arr_int_uint_16
+ %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %24
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -142,7 +142,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %208 = OpTypeFunction %void %main_out
+ %208 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -198,10 +198,10 @@
%match_vf2_ = OpFunction %v4float None %84
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%87 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
- %i = OpVariable %_ptr_Function_int Function %14
+ %res = OpVariable %_ptr_Function_v4float Function %7
+ %i = OpVariable %_ptr_Function_int Function %18
%param = OpVariable %_ptr_Function_v2float Function %92
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %98
@@ -287,20 +287,20 @@
OpStore %x_GLF_color %206
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %208
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %208
+%gl_FragCoord_param = OpFunctionParameter %v4float
%212 = OpLabel
- %213 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %213
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %213 = OpFunctionCall %void %main_1
+ %214 = OpLoad %v4float %x_GLF_color
+ %215 = OpCompositeConstruct %main_out %214
+ OpReturnValue %215
OpFunctionEnd
%main = OpFunction %void None %186
- %215 = OpLabel
- %216 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %216
- %217 = OpFunctionCall %void %main_1
- %219 = OpLoad %v4float %x_GLF_color
- %220 = OpCompositeConstruct %main_out %219
- %218 = OpFunctionCall %void %tint_symbol_3 %220
+ %217 = OpLabel
+ %219 = OpLoad %v4float %gl_FragCoord_param_1
+ %218 = OpFunctionCall %main_out %main_inner %219
+ %220 = OpCompositeExtract %v4float %218 0
+ OpStore %x_GLF_color_1_1 %220
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.spvasm.expected.spvasm
index 44345bd..78ad920 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%207 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -15,8 +17,6 @@
OpName %x_GLF_color "x_GLF_color"
OpName %index "index"
OpName %state "state"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -36,44 +36,44 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
OpDecorate %_arr_int_uint_16 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %14 = OpConstantNull %int
- %index = OpVariable %_ptr_Private_int Private %14
+ %18 = OpConstantNull %int
+ %index = OpVariable %_ptr_Private_int Private %18
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
%_arr_int_uint_16 = OpTypeArray %int %uint_16
%_ptr_Private__arr_int_uint_16 = OpTypePointer Private %_arr_int_uint_16
- %20 = OpConstantNull %_arr_int_uint_16
- %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %20
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %24 = OpConstantNull %_arr_int_uint_16
+ %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %24
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -147,7 +147,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %213 = OpTypeFunction %void %main_out
+ %213 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -205,10 +205,10 @@
%match_vf2_ = OpFunction %v4float None %89
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%92 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
- %i = OpVariable %_ptr_Function_int Function %14
+ %res = OpVariable %_ptr_Function_v4float Function %7
+ %i = OpVariable %_ptr_Function_int Function %18
%param = OpVariable %_ptr_Function_v2float Function %97
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
@@ -294,20 +294,20 @@
OpStore %x_GLF_color %211
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %213
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %213
+%gl_FragCoord_param = OpFunctionParameter %v4float
%217 = OpLabel
- %218 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %218
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %218 = OpFunctionCall %void %main_1
+ %219 = OpLoad %v4float %x_GLF_color
+ %220 = OpCompositeConstruct %main_out %219
+ OpReturnValue %220
OpFunctionEnd
%main = OpFunction %void None %191
- %220 = OpLabel
- %221 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %221
- %222 = OpFunctionCall %void %main_1
- %224 = OpLoad %v4float %x_GLF_color
- %225 = OpCompositeConstruct %main_out %224
- %223 = OpFunctionCall %void %tint_symbol_3 %225
+ %222 = OpLabel
+ %224 = OpLoad %v4float %gl_FragCoord_param_1
+ %223 = OpFunctionCall %main_out %main_inner %224
+ %225 = OpCompositeExtract %v4float %223 0
+ OpStore %x_GLF_color_1_1 %225
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.wgsl.expected.spvasm
index 44345bd..78ad920 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-declare-bvec4/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%207 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
@@ -15,8 +17,6 @@
OpName %x_GLF_color "x_GLF_color"
OpName %index "index"
OpName %state "state"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -36,44 +36,44 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
OpDecorate %_arr_int_uint_16 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Private_int = OpTypePointer Private %int
- %14 = OpConstantNull %int
- %index = OpVariable %_ptr_Private_int Private %14
+ %18 = OpConstantNull %int
+ %index = OpVariable %_ptr_Private_int Private %18
%uint = OpTypeInt 32 0
%uint_16 = OpConstant %uint 16
%_arr_int_uint_16 = OpTypeArray %int %uint_16
%_ptr_Private__arr_int_uint_16 = OpTypePointer Private %_arr_int_uint_16
- %20 = OpConstantNull %_arr_int_uint_16
- %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %20
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %24 = OpConstantNull %_arr_int_uint_16
+ %state = OpVariable %_ptr_Private__arr_int_uint_16 Private %24
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -147,7 +147,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %213 = OpTypeFunction %void %main_out
+ %213 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %25
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -205,10 +205,10 @@
%match_vf2_ = OpFunction %v4float None %89
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%92 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
- %i = OpVariable %_ptr_Function_int Function %14
+ %res = OpVariable %_ptr_Function_v4float Function %7
+ %i = OpVariable %_ptr_Function_int Function %18
%param = OpVariable %_ptr_Function_v2float Function %97
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %103
@@ -294,20 +294,20 @@
OpStore %x_GLF_color %211
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %213
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %213
+%gl_FragCoord_param = OpFunctionParameter %v4float
%217 = OpLabel
- %218 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %218
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %218 = OpFunctionCall %void %main_1
+ %219 = OpLoad %v4float %x_GLF_color
+ %220 = OpCompositeConstruct %main_out %219
+ OpReturnValue %220
OpFunctionEnd
%main = OpFunction %void None %191
- %220 = OpLabel
- %221 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %221
- %222 = OpFunctionCall %void %main_1
- %224 = OpLoad %v4float %x_GLF_color
- %225 = OpCompositeConstruct %main_out %224
- %223 = OpFunctionCall %void %tint_symbol_3 %225
+ %222 = OpLabel
+ %224 = OpLoad %v4float %gl_FragCoord_param_1
+ %223 = OpFunctionCall %main_out %main_inner %224
+ %225 = OpCompositeExtract %v4float %223 0
+ OpStore %x_GLF_color_1_1 %225
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.spvasm.expected.spvasm
index b1e952c..b590ee6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%176 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %399 = OpTypeFunction %void %main_out
+ %399 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -619,20 +619,20 @@
OpStore %x_GLF_color %398
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %399
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %399
+%gl_FragCoord_param = OpFunctionParameter %v4float
%403 = OpLabel
- %404 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %404
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %404 = OpFunctionCall %void %main_1
+ %405 = OpLoad %v4float %x_GLF_color
+ %406 = OpCompositeConstruct %main_out %405
+ OpReturnValue %406
OpFunctionEnd
%main = OpFunction %void None %131
- %406 = OpLabel
- %407 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %407
- %408 = OpFunctionCall %void %main_1
- %410 = OpLoad %v4float %x_GLF_color
- %411 = OpCompositeConstruct %main_out %410
- %409 = OpFunctionCall %void %tint_symbol_3 %411
+ %408 = OpLabel
+ %410 = OpLoad %v4float %gl_FragCoord_param_1
+ %409 = OpFunctionCall %main_out %main_inner %410
+ %411 = OpCompositeExtract %v4float %409 0
+ OpStore %x_GLF_color_1_1 %411
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.wgsl.expected.spvasm
index 8ea9848..72c4199 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%180 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %403 = OpTypeFunction %void %main_out
+ %403 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -629,20 +629,20 @@
OpStore %x_GLF_color %402
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %403
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %403
+%gl_FragCoord_param = OpFunctionParameter %v4float
%407 = OpLabel
- %408 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %408
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %408 = OpFunctionCall %void %main_1
+ %409 = OpLoad %v4float %x_GLF_color
+ %410 = OpCompositeConstruct %main_out %409
+ OpReturnValue %410
OpFunctionEnd
%main = OpFunction %void None %135
- %410 = OpLabel
- %411 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %411
- %412 = OpFunctionCall %void %main_1
- %414 = OpLoad %v4float %x_GLF_color
- %415 = OpCompositeConstruct %main_out %414
- %413 = OpFunctionCall %void %tint_symbol_3 %415
+ %412 = OpLabel
+ %414 = OpLoad %v4float %gl_FragCoord_param_1
+ %413 = OpFunctionCall %main_out %main_inner %414
+ %415 = OpCompositeExtract %v4float %413 0
+ OpStore %x_GLF_color_1_1 %415
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.spvasm.expected.spvasm
index 1930344..dc0ea2b 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%176 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -131,7 +131,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %403 = OpTypeFunction %void %main_out
+ %403 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -627,20 +627,20 @@
OpStore %x_GLF_color %402
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %403
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %403
+%gl_FragCoord_param = OpFunctionParameter %v4float
%407 = OpLabel
- %408 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %408
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %408 = OpFunctionCall %void %main_1
+ %409 = OpLoad %v4float %x_GLF_color
+ %410 = OpCompositeConstruct %main_out %409
+ OpReturnValue %410
OpFunctionEnd
%main = OpFunction %void None %131
- %410 = OpLabel
- %411 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %411
- %412 = OpFunctionCall %void %main_1
- %414 = OpLoad %v4float %x_GLF_color
- %415 = OpCompositeConstruct %main_out %414
- %413 = OpFunctionCall %void %tint_symbol_3 %415
+ %412 = OpLabel
+ %414 = OpLoad %v4float %gl_FragCoord_param_1
+ %413 = OpFunctionCall %main_out %main_inner %414
+ %415 = OpCompositeExtract %v4float %413 0
+ OpStore %x_GLF_color_1_1 %415
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.wgsl.expected.spvasm
index fbc9b39..01d6d84 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%180 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -131,7 +131,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %407 = OpTypeFunction %void %main_out
+ %407 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -637,20 +637,20 @@
OpStore %x_GLF_color %406
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %407
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %407
+%gl_FragCoord_param = OpFunctionParameter %v4float
%411 = OpLabel
- %412 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %412
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %412 = OpFunctionCall %void %main_1
+ %413 = OpLoad %v4float %x_GLF_color
+ %414 = OpCompositeConstruct %main_out %413
+ OpReturnValue %414
OpFunctionEnd
%main = OpFunction %void None %135
- %414 = OpLabel
- %415 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %415
- %416 = OpFunctionCall %void %main_1
- %418 = OpLoad %v4float %x_GLF_color
- %419 = OpCompositeConstruct %main_out %418
- %417 = OpFunctionCall %void %tint_symbol_3 %419
+ %416 = OpLabel
+ %418 = OpLoad %v4float %gl_FragCoord_param_1
+ %417 = OpFunctionCall %main_out %main_inner %418
+ %419 = OpCompositeExtract %v4float %417 0
+ OpStore %x_GLF_color_1_1 %419
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.spvasm.expected.spvasm
index 43b700f..83842cb 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_40_phi "x_40_phi"
@@ -30,9 +30,11 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,15 +45,17 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -59,11 +63,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%float_0_100000001 = OpConstant %float 0.100000001
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %27
@@ -263,20 +263,20 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %154
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %154
+%gl_FragCoord_param = OpFunctionParameter %v4float
%158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %159
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %18
- %161 = OpLabel
- %162 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %162
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_3 %166
+ %163 = OpLabel
+ %165 = OpLoad %v4float %gl_FragCoord_param_1
+ %164 = OpFunctionCall %main_out %main_inner %165
+ %166 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %166
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.wgsl.expected.spvasm
index 43b700f..83842cb 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/0.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_40_phi "x_40_phi"
@@ -30,9 +30,11 @@
OpName %x_84_phi "x_84_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,15 +45,17 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -59,11 +63,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%float_0_100000001 = OpConstant %float 0.100000001
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %27
@@ -263,20 +263,20 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %154
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %154
+%gl_FragCoord_param = OpFunctionParameter %v4float
%158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %159
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %18
- %161 = OpLabel
- %162 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %162
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_3 %166
+ %163 = OpLabel
+ %165 = OpLoad %v4float %gl_FragCoord_param_1
+ %164 = OpFunctionCall %main_out %main_inner %165
+ %166 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %166
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.spvasm.expected.spvasm
index 8a60eb4..71cd98b 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_41_phi "x_41_phi"
@@ -30,9 +30,11 @@
OpName %x_85_phi "x_85_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,15 +45,17 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -59,11 +63,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%float_0_100000001 = OpConstant %float 0.100000001
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %27
@@ -263,20 +263,20 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %154
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %154
+%gl_FragCoord_param = OpFunctionParameter %v4float
%158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %159
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %18
- %161 = OpLabel
- %162 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %162
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_3 %166
+ %163 = OpLabel
+ %165 = OpLoad %v4float %gl_FragCoord_param_1
+ %164 = OpFunctionCall %main_out %main_inner %165
+ %166 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %166
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.wgsl.expected.spvasm
index 8a60eb4..71cd98b 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block2/1.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %data "data"
OpName %x_41_phi "x_41_phi"
@@ -30,9 +30,11 @@
OpName %x_85_phi "x_85_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -43,15 +45,17 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -59,11 +63,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%float_0_100000001 = OpConstant %float 0.100000001
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %154 = OpTypeFunction %void %main_out
+ %154 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%data = OpVariable %_ptr_Function__arr_float_uint_10 Function %27
@@ -263,20 +263,20 @@
%128 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %154
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %154
+%gl_FragCoord_param = OpFunctionParameter %v4float
%158 = OpLabel
- %159 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %159
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %159 = OpFunctionCall %void %main_1
+ %160 = OpLoad %v4float %x_GLF_color
+ %161 = OpCompositeConstruct %main_out %160
+ OpReturnValue %161
OpFunctionEnd
%main = OpFunction %void None %18
- %161 = OpLabel
- %162 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %162
- %163 = OpFunctionCall %void %main_1
- %165 = OpLoad %v4float %x_GLF_color
- %166 = OpCompositeConstruct %main_out %165
- %164 = OpFunctionCall %void %tint_symbol_3 %166
+ %163 = OpLabel
+ %165 = OpLoad %v4float %gl_FragCoord_param_1
+ %164 = OpFunctionCall %main_out %main_inner %165
+ %166 = OpCompositeExtract %v4float %164 0
+ OpStore %x_GLF_color_1_1 %166
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.spvasm.expected.spvasm
index 858be31..4202ee1 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%183 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -131,7 +131,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %405 = OpTypeFunction %void %main_out
+ %405 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -629,20 +629,20 @@
OpStore %x_GLF_color %404
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %405
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %405
+%gl_FragCoord_param = OpFunctionParameter %v4float
%409 = OpLabel
- %410 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %410
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %410 = OpFunctionCall %void %main_1
+ %411 = OpLoad %v4float %x_GLF_color
+ %412 = OpCompositeConstruct %main_out %411
+ OpReturnValue %412
OpFunctionEnd
%main = OpFunction %void None %138
- %412 = OpLabel
- %413 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %413
- %414 = OpFunctionCall %void %main_1
- %416 = OpLoad %v4float %x_GLF_color
- %417 = OpCompositeConstruct %main_out %416
- %415 = OpFunctionCall %void %tint_symbol_3 %417
+ %414 = OpLabel
+ %416 = OpLoad %v4float %gl_FragCoord_param_1
+ %415 = OpFunctionCall %main_out %main_inner %416
+ %417 = OpCompositeExtract %v4float %415 0
+ OpStore %x_GLF_color_1_1 %417
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.wgsl.expected.spvasm
index b7687ce..6208764 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-block3/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%187 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -18,8 +20,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
OpName %x_32 "x_32"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -45,9 +45,11 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
@@ -59,34 +61,32 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_32 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%26 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -131,7 +131,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %409 = OpTypeFunction %void %main_out
+ %409 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %26
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -639,20 +639,20 @@
OpStore %x_GLF_color %408
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %409
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %409
+%gl_FragCoord_param = OpFunctionParameter %v4float
%413 = OpLabel
- %414 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %414
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %414 = OpFunctionCall %void %main_1
+ %415 = OpLoad %v4float %x_GLF_color
+ %416 = OpCompositeConstruct %main_out %415
+ OpReturnValue %416
OpFunctionEnd
%main = OpFunction %void None %142
- %416 = OpLabel
- %417 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %417
- %418 = OpFunctionCall %void %main_1
- %420 = OpLoad %v4float %x_GLF_color
- %421 = OpCompositeConstruct %main_out %420
- %419 = OpFunctionCall %void %tint_symbol_3 %421
+ %418 = OpLabel
+ %420 = OpLoad %v4float %gl_FragCoord_param_1
+ %419 = OpFunctionCall %main_out %main_inner %420
+ %421 = OpCompositeExtract %v4float %419 0
+ OpStore %x_GLF_color_1_1 %421
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.spvasm.expected.spvasm
index 9057c70..6884591 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 627
+; Bound: 626
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -89,10 +89,9 @@
OpName %x_407_phi "x_407_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -100,11 +99,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -158,7 +157,7 @@
%613 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%614 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %615 = OpTypeFunction %void %main_out
+ %615 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %19
@@ -1157,18 +1156,17 @@
%608 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %615
-%tint_symbol = OpFunctionParameter %main_out
- %619 = OpLabel
- %620 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %620
- OpReturn
+ %main_inner = OpFunction %main_out None %615
+ %618 = OpLabel
+ %619 = OpFunctionCall %void %main_1
+ %620 = OpLoad %v4float %x_GLF_color
+ %621 = OpCompositeConstruct %main_out %620
+ OpReturnValue %621
OpFunctionEnd
%main = OpFunction %void None %8
- %622 = OpLabel
- %623 = OpFunctionCall %void %main_1
- %625 = OpLoad %v4float %x_GLF_color
- %626 = OpCompositeConstruct %main_out %625
- %624 = OpFunctionCall %void %tint_symbol_2 %626
+ %623 = OpLabel
+ %624 = OpFunctionCall %main_out %main_inner
+ %625 = OpCompositeExtract %v4float %624 0
+ OpStore %x_GLF_color_1_1 %625
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.wgsl.expected.spvasm
index 9057c70..6884591 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-load-from-frag-color/1.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 627
+; Bound: 626
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -89,10 +89,9 @@
OpName %x_407_phi "x_407_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -100,11 +99,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -158,7 +157,7 @@
%613 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%614 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %615 = OpTypeFunction %void %main_out
+ %615 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %19
@@ -1157,18 +1156,17 @@
%608 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %615
-%tint_symbol = OpFunctionParameter %main_out
- %619 = OpLabel
- %620 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %620
- OpReturn
+ %main_inner = OpFunction %main_out None %615
+ %618 = OpLabel
+ %619 = OpFunctionCall %void %main_1
+ %620 = OpLoad %v4float %x_GLF_color
+ %621 = OpCompositeConstruct %main_out %620
+ OpReturnValue %621
OpFunctionEnd
%main = OpFunction %void None %8
- %622 = OpLabel
- %623 = OpFunctionCall %void %main_1
- %625 = OpLoad %v4float %x_GLF_color
- %626 = OpCompositeConstruct %main_out %625
- %624 = OpFunctionCall %void %tint_symbol_2 %626
+ %623 = OpLabel
+ %624 = OpFunctionCall %main_out %main_inner
+ %625 = OpCompositeExtract %v4float %624 0
+ OpStore %x_GLF_color_1_1 %625
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.spvasm.expected.spvasm
index 770f48a..000259e 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%45 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_77 "x_77"
OpName %x_78 "x_78"
@@ -30,33 +30,33 @@
OpName %x_98 "x_98"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -128,21 +128,21 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %169 = OpTypeFunction %void %main_out
+ %169 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_77 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_78 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_79 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_80 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %31
- %x_89 = OpVariable %_ptr_Function_v4float Function %5
- %x_89_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_89 = OpVariable %_ptr_Function_v4float Function %7
+ %x_89_phi = OpVariable %_ptr_Function_v4float Function %7
%x_92_phi = OpVariable %_ptr_Function_int Function %38
- %x_136 = OpVariable %_ptr_Function_v4float Function %5
+ %x_136 = OpVariable %_ptr_Function_v4float Function %7
%x_93 = OpVariable %_ptr_Function_int Function %38
%x_121_phi = OpVariable %_ptr_Function_bool Function %65
- %x_90_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_98 = OpVariable %_ptr_Function_v4float Function %5
+ %x_90_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_98 = OpVariable %_ptr_Function_v4float Function %7
%39 = OpLoad %v4float %gl_FragCoord
%42 = OpAccessChain %_ptr_Uniform_v2float %x_6 %uint_0
%43 = OpLoad %v2float %42
@@ -261,20 +261,20 @@
OpStore %x_GLF_color %168
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %169
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %169
+%gl_FragCoord_param = OpFunctionParameter %v4float
%173 = OpLabel
- %174 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %174
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %174 = OpFunctionCall %void %main_1
+ %175 = OpLoad %v4float %x_GLF_color
+ %176 = OpCompositeConstruct %main_out %175
+ OpReturnValue %176
OpFunctionEnd
%main = OpFunction %void None %15
- %176 = OpLabel
- %177 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %177
- %178 = OpFunctionCall %void %main_1
- %180 = OpLoad %v4float %x_GLF_color
- %181 = OpCompositeConstruct %main_out %180
- %179 = OpFunctionCall %void %tint_symbol_3 %181
+ %178 = OpLabel
+ %180 = OpLoad %v4float %gl_FragCoord_param_1
+ %179 = OpFunctionCall %main_out %main_inner %180
+ %181 = OpCompositeExtract %v4float %179 0
+ OpStore %x_GLF_color_1_1 %181
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.wgsl.expected.spvasm
index 770f48a..000259e 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-null-in-phi-and-unroll/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%45 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_77 "x_77"
OpName %x_78 "x_78"
@@ -30,33 +30,33 @@
OpName %x_98 "x_98"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -128,21 +128,21 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %169 = OpTypeFunction %void %main_out
+ %169 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_77 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_78 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_79 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %24
%x_80 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %31
- %x_89 = OpVariable %_ptr_Function_v4float Function %5
- %x_89_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_89 = OpVariable %_ptr_Function_v4float Function %7
+ %x_89_phi = OpVariable %_ptr_Function_v4float Function %7
%x_92_phi = OpVariable %_ptr_Function_int Function %38
- %x_136 = OpVariable %_ptr_Function_v4float Function %5
+ %x_136 = OpVariable %_ptr_Function_v4float Function %7
%x_93 = OpVariable %_ptr_Function_int Function %38
%x_121_phi = OpVariable %_ptr_Function_bool Function %65
- %x_90_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_98 = OpVariable %_ptr_Function_v4float Function %5
+ %x_90_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_98 = OpVariable %_ptr_Function_v4float Function %7
%39 = OpLoad %v4float %gl_FragCoord
%42 = OpAccessChain %_ptr_Uniform_v2float %x_6 %uint_0
%43 = OpLoad %v2float %42
@@ -261,20 +261,20 @@
OpStore %x_GLF_color %168
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %169
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %169
+%gl_FragCoord_param = OpFunctionParameter %v4float
%173 = OpLabel
- %174 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %174
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %174 = OpFunctionCall %void %main_1
+ %175 = OpLoad %v4float %x_GLF_color
+ %176 = OpCompositeConstruct %main_out %175
+ OpReturnValue %176
OpFunctionEnd
%main = OpFunction %void None %15
- %176 = OpLabel
- %177 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %177
- %178 = OpFunctionCall %void %main_1
- %180 = OpLoad %v4float %x_GLF_color
- %181 = OpCompositeConstruct %main_out %180
- %179 = OpFunctionCall %void %tint_symbol_3 %181
+ %178 = OpLabel
+ %180 = OpLoad %v4float %gl_FragCoord_param_1
+ %179 = OpFunctionCall %main_out %main_inner %180
+ %181 = OpCompositeExtract %v4float %179 0
+ OpStore %x_GLF_color_1_1 %181
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.spvasm.expected.spvasm
index 7dfa9c8..8630dfb 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_69 "x_69"
@@ -23,32 +23,32 @@
OpName %x_73 "x_73"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -93,7 +93,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -169,20 +169,20 @@
OpStore %x_GLF_color %110
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %111
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %111
+%gl_FragCoord_param = OpFunctionParameter %v4float
%115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %116
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %15
- %118 = OpLabel
- %119 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %119
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_3 %123
+ %120 = OpLabel
+ %122 = OpLoad %v4float %gl_FragCoord_param_1
+ %121 = OpFunctionCall %main_out %main_inner %122
+ %123 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.wgsl.expected.spvasm
index 7dfa9c8..8630dfb 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/1.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_69 "x_69"
@@ -23,32 +23,32 @@
OpName %x_73 "x_73"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -93,7 +93,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %111 = OpTypeFunction %void %main_out
+ %111 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -169,20 +169,20 @@
OpStore %x_GLF_color %110
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %111
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %111
+%gl_FragCoord_param = OpFunctionParameter %v4float
%115 = OpLabel
- %116 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %116
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %116 = OpFunctionCall %void %main_1
+ %117 = OpLoad %v4float %x_GLF_color
+ %118 = OpCompositeConstruct %main_out %117
+ OpReturnValue %118
OpFunctionEnd
%main = OpFunction %void None %15
- %118 = OpLabel
- %119 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %119
- %120 = OpFunctionCall %void %main_1
- %122 = OpLoad %v4float %x_GLF_color
- %123 = OpCompositeConstruct %main_out %122
- %121 = OpFunctionCall %void %tint_symbol_3 %123
+ %120 = OpLabel
+ %122 = OpLoad %v4float %gl_FragCoord_param_1
+ %121 = OpFunctionCall %main_out %main_inner %122
+ %123 = OpCompositeExtract %v4float %121 0
+ OpStore %x_GLF_color_1_1 %123
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.spvasm.expected.spvasm
index 6899c03..d917257 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_69 "x_69"
@@ -23,32 +23,32 @@
OpName %x_73 "x_73"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -164,20 +164,20 @@
OpStore %x_GLF_color %107
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %108
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %108
+%gl_FragCoord_param = OpFunctionParameter %v4float
%112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %113
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %15
- %115 = OpLabel
- %116 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %116
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_3 %120
+ %117 = OpLabel
+ %119 = OpLoad %v4float %gl_FragCoord_param_1
+ %118 = OpFunctionCall %main_out %main_inner %119
+ %120 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.wgsl.expected.spvasm
index 6899c03..d917257 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bifurcation-Os-mutate-var-vector-shuffle/2.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_69 "x_69"
@@ -23,32 +23,32 @@
OpName %x_73 "x_73"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -91,7 +91,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %108 = OpTypeFunction %void %main_out
+ %108 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -164,20 +164,20 @@
OpStore %x_GLF_color %107
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %108
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %108
+%gl_FragCoord_param = OpFunctionParameter %v4float
%112 = OpLabel
- %113 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %113
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %113 = OpFunctionCall %void %main_1
+ %114 = OpLoad %v4float %x_GLF_color
+ %115 = OpCompositeConstruct %main_out %114
+ OpReturnValue %115
OpFunctionEnd
%main = OpFunction %void None %15
- %115 = OpLabel
- %116 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %116
- %117 = OpFunctionCall %void %main_1
- %119 = OpLoad %v4float %x_GLF_color
- %120 = OpCompositeConstruct %main_out %119
- %118 = OpFunctionCall %void %tint_symbol_3 %120
+ %117 = OpLabel
+ %119 = OpLoad %v4float %gl_FragCoord_param_1
+ %118 = OpFunctionCall %main_out %main_inner %119
+ %120 = OpCompositeExtract %v4float %118 0
+ OpStore %x_GLF_color_1_1 %120
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.spvasm.expected.spvasm
index d4767b3..c4002c2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %checkSwap_f1_f1_ "checkSwap_f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -32,9 +32,11 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_9 NonWritable
@@ -45,15 +47,17 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -61,11 +65,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %bool %_ptr_Function_float %_ptr_Function_float
@@ -95,7 +95,7 @@
%float_10 = OpConstant %float 10
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %180 = OpTypeFunction %void %main_out
+ %180 = OpTypeFunction %main_out %v4float
%checkSwap_f1_f1_ = OpFunction %bool None %18
%a = OpFunctionParameter %_ptr_Function_float
%b = OpFunctionParameter %_ptr_Function_float
@@ -286,20 +286,20 @@
%154 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %180
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %180
+%gl_FragCoord_param = OpFunctionParameter %v4float
%184 = OpLabel
- %185 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %185
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %185 = OpFunctionCall %void %main_1
+ %186 = OpLoad %v4float %x_GLF_color
+ %187 = OpCompositeConstruct %main_out %186
+ OpReturnValue %187
OpFunctionEnd
%main = OpFunction %void None %54
- %187 = OpLabel
- %188 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %188
- %189 = OpFunctionCall %void %main_1
- %191 = OpLoad %v4float %x_GLF_color
- %192 = OpCompositeConstruct %main_out %191
- %190 = OpFunctionCall %void %tint_symbol_3 %192
+ %189 = OpLabel
+ %191 = OpLoad %v4float %gl_FragCoord_param_1
+ %190 = OpFunctionCall %main_out %main_inner %191
+ %192 = OpCompositeExtract %v4float %190 0
+ OpStore %x_GLF_color_1_1 %192
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.wgsl.expected.spvasm
index d4767b3..c4002c2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/0.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %checkSwap_f1_f1_ "checkSwap_f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -32,9 +32,11 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_9 NonWritable
@@ -45,15 +47,17 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -61,11 +65,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %bool %_ptr_Function_float %_ptr_Function_float
@@ -95,7 +95,7 @@
%float_10 = OpConstant %float 10
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %180 = OpTypeFunction %void %main_out
+ %180 = OpTypeFunction %main_out %v4float
%checkSwap_f1_f1_ = OpFunction %bool None %18
%a = OpFunctionParameter %_ptr_Function_float
%b = OpFunctionParameter %_ptr_Function_float
@@ -286,20 +286,20 @@
%154 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %180
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %180
+%gl_FragCoord_param = OpFunctionParameter %v4float
%184 = OpLabel
- %185 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %185
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %185 = OpFunctionCall %void %main_1
+ %186 = OpLoad %v4float %x_GLF_color
+ %187 = OpCompositeConstruct %main_out %186
+ OpReturnValue %187
OpFunctionEnd
%main = OpFunction %void None %54
- %187 = OpLabel
- %188 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %188
- %189 = OpFunctionCall %void %main_1
- %191 = OpLoad %v4float %x_GLF_color
- %192 = OpCompositeConstruct %main_out %191
- %190 = OpFunctionCall %void %tint_symbol_3 %192
+ %189 = OpLabel
+ %191 = OpLoad %v4float %gl_FragCoord_param_1
+ %190 = OpFunctionCall %main_out %main_inner %191
+ %192 = OpCompositeExtract %v4float %190 0
+ OpStore %x_GLF_color_1_1 %192
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.spvasm.expected.spvasm
index 75d9c10..11e08b3 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %checkSwap_f1_f1_ "checkSwap_f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -45,9 +45,11 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_9 NonWritable
@@ -58,15 +60,17 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -74,11 +78,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %bool %_ptr_Function_float %_ptr_Function_float
@@ -111,7 +111,7 @@
%float_10 = OpConstant %float 10
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %234 = OpTypeFunction %void %main_out
+ %234 = OpTypeFunction %main_out %v4float
%checkSwap_f1_f1_ = OpFunction %bool None %18
%a = OpFunctionParameter %_ptr_Function_float
%b = OpFunctionParameter %_ptr_Function_float
@@ -405,20 +405,20 @@
%208 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %234
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %234
+%gl_FragCoord_param = OpFunctionParameter %v4float
%238 = OpLabel
- %239 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %239
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %239 = OpFunctionCall %void %main_1
+ %240 = OpLoad %v4float %x_GLF_color
+ %241 = OpCompositeConstruct %main_out %240
+ OpReturnValue %241
OpFunctionEnd
%main = OpFunction %void None %109
- %241 = OpLabel
- %242 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %242
- %243 = OpFunctionCall %void %main_1
- %245 = OpLoad %v4float %x_GLF_color
- %246 = OpCompositeConstruct %main_out %245
- %244 = OpFunctionCall %void %tint_symbol_3 %246
+ %243 = OpLabel
+ %245 = OpLoad %v4float %gl_FragCoord_param_1
+ %244 = OpFunctionCall %main_out %main_inner %245
+ %246 = OpCompositeExtract %v4float %244 0
+ OpStore %x_GLF_color_1_1 %246
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.wgsl.expected.spvasm
index 75d9c10..11e08b3 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-bubblesort-flag-complex-conditionals/1.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "resolution"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %checkSwap_f1_f1_ "checkSwap_f1_f1_"
OpName %a "a"
OpName %b "b"
@@ -45,9 +45,11 @@
OpName %temp "temp"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_9 NonWritable
@@ -58,15 +60,17 @@
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -74,11 +78,7 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %bool %_ptr_Function_float %_ptr_Function_float
@@ -111,7 +111,7 @@
%float_10 = OpConstant %float 10
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %234 = OpTypeFunction %void %main_out
+ %234 = OpTypeFunction %main_out %v4float
%checkSwap_f1_f1_ = OpFunction %bool None %18
%a = OpFunctionParameter %_ptr_Function_float
%b = OpFunctionParameter %_ptr_Function_float
@@ -405,20 +405,20 @@
%208 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %234
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %234
+%gl_FragCoord_param = OpFunctionParameter %v4float
%238 = OpLabel
- %239 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %239
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %239 = OpFunctionCall %void %main_1
+ %240 = OpLoad %v4float %x_GLF_color
+ %241 = OpCompositeConstruct %main_out %240
+ OpReturnValue %241
OpFunctionEnd
%main = OpFunction %void None %109
- %241 = OpLabel
- %242 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %242
- %243 = OpFunctionCall %void %main_1
- %245 = OpLoad %v4float %x_GLF_color
- %246 = OpCompositeConstruct %main_out %245
- %244 = OpFunctionCall %void %tint_symbol_3 %246
+ %243 = OpLabel
+ %245 = OpLoad %v4float %gl_FragCoord_param_1
+ %244 = OpFunctionCall %main_out %main_inner %245
+ %246 = OpCompositeExtract %v4float %244 0
+ OpStore %x_GLF_color_1_1 %246
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.spvasm.expected.spvasm
index 5b40919..4292706 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%37 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_65 "x_65"
@@ -25,32 +25,32 @@
OpName %x_69_phi "x_69_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -92,7 +92,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -173,20 +173,20 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %110
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %110
+%gl_FragCoord_param = OpFunctionParameter %v4float
%114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %115
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %115 = OpFunctionCall %void %main_1
+ %116 = OpLoad %v4float %x_GLF_color
+ %117 = OpCompositeConstruct %main_out %116
+ OpReturnValue %117
OpFunctionEnd
%main = OpFunction %void None %15
- %117 = OpLabel
- %118 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %118
- %119 = OpFunctionCall %void %main_1
- %121 = OpLoad %v4float %x_GLF_color
- %122 = OpCompositeConstruct %main_out %121
- %120 = OpFunctionCall %void %tint_symbol_3 %122
+ %119 = OpLabel
+ %121 = OpLoad %v4float %gl_FragCoord_param_1
+ %120 = OpFunctionCall %main_out %main_inner %121
+ %122 = OpCompositeExtract %v4float %120 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.wgsl.expected.spvasm
index 5b40919..4292706 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%37 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_65 "x_65"
@@ -25,32 +25,32 @@
OpName %x_69_phi "x_69_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -92,7 +92,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %110 = OpTypeFunction %void %main_out
+ %110 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -173,20 +173,20 @@
OpStore %x_GLF_color %109
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %110
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %110
+%gl_FragCoord_param = OpFunctionParameter %v4float
%114 = OpLabel
- %115 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %115
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %115 = OpFunctionCall %void %main_1
+ %116 = OpLoad %v4float %x_GLF_color
+ %117 = OpCompositeConstruct %main_out %116
+ OpReturnValue %117
OpFunctionEnd
%main = OpFunction %void None %15
- %117 = OpLabel
- %118 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %118
- %119 = OpFunctionCall %void %main_1
- %121 = OpLoad %v4float %x_GLF_color
- %122 = OpCompositeConstruct %main_out %121
- %120 = OpFunctionCall %void %tint_symbol_3 %122
+ %119 = OpLabel
+ %121 = OpLoad %v4float %gl_FragCoord_param_1
+ %120 = OpFunctionCall %main_out %main_inner %121
+ %122 = OpCompositeExtract %v4float %120 0
+ OpStore %x_GLF_color_1_1 %122
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.spvasm.expected.spvasm
index 9edd5c3..be911ea 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%43 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_71 "x_71"
@@ -25,32 +25,32 @@
OpName %x_75_phi "x_75_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -95,7 +95,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %123 = OpTypeFunction %void %main_out
+ %123 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -188,20 +188,20 @@
OpStore %x_GLF_color %122
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %123
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %123
+%gl_FragCoord_param = OpFunctionParameter %v4float
%127 = OpLabel
- %128 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %128
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %128 = OpFunctionCall %void %main_1
+ %129 = OpLoad %v4float %x_GLF_color
+ %130 = OpCompositeConstruct %main_out %129
+ OpReturnValue %130
OpFunctionEnd
%main = OpFunction %void None %15
- %130 = OpLabel
- %131 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %131
- %132 = OpFunctionCall %void %main_1
- %134 = OpLoad %v4float %x_GLF_color
- %135 = OpCompositeConstruct %main_out %134
- %133 = OpFunctionCall %void %tint_symbol_3 %135
+ %132 = OpLabel
+ %134 = OpLoad %v4float %gl_FragCoord_param_1
+ %133 = OpFunctionCall %main_out %main_inner %134
+ %135 = OpCompositeExtract %v4float %133 0
+ OpStore %x_GLF_color_1_1 %135
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.wgsl.expected.spvasm
index 9edd5c3..be911ea 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-collatz-O-mutate-composite-construct-extract/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%43 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_71 "x_71"
@@ -25,32 +25,32 @@
OpName %x_75_phi "x_75_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -95,7 +95,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %123 = OpTypeFunction %void %main_out
+ %123 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -188,20 +188,20 @@
OpStore %x_GLF_color %122
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %123
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %123
+%gl_FragCoord_param = OpFunctionParameter %v4float
%127 = OpLabel
- %128 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %128
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %128 = OpFunctionCall %void %main_1
+ %129 = OpLoad %v4float %x_GLF_color
+ %130 = OpCompositeConstruct %main_out %129
+ OpReturnValue %130
OpFunctionEnd
%main = OpFunction %void None %15
- %130 = OpLabel
- %131 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %131
- %132 = OpFunctionCall %void %main_1
- %134 = OpLoad %v4float %x_GLF_color
- %135 = OpCompositeConstruct %main_out %134
- %133 = OpFunctionCall %void %tint_symbol_3 %135
+ %132 = OpLabel
+ %134 = OpLoad %v4float %gl_FragCoord_param_1
+ %133 = OpFunctionCall %main_out %main_inner %134
+ %135 = OpCompositeExtract %v4float %133 0
+ OpStore %x_GLF_color_1_1 %135
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.spvasm.expected.spvasm
index 2af7e74..f873f32 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_51 "x_51"
@@ -55,31 +55,31 @@
OpName %x_130 "x_130"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -118,7 +118,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %251 = OpTypeFunction %void %main_out
+ %251 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -440,20 +440,20 @@
OpStore %x_GLF_color %250
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %251
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %251
+%gl_FragCoord_param = OpFunctionParameter %v4float
%255 = OpLabel
- %256 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %256
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %256 = OpFunctionCall %void %main_1
+ %257 = OpLoad %v4float %x_GLF_color
+ %258 = OpCompositeConstruct %main_out %257
+ OpReturnValue %258
OpFunctionEnd
%main = OpFunction %void None %15
- %258 = OpLabel
- %259 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %259
- %260 = OpFunctionCall %void %main_1
- %262 = OpLoad %v4float %x_GLF_color
- %263 = OpCompositeConstruct %main_out %262
- %261 = OpFunctionCall %void %tint_symbol_3 %263
+ %260 = OpLabel
+ %262 = OpLoad %v4float %gl_FragCoord_param_1
+ %261 = OpFunctionCall %main_out %main_inner %262
+ %263 = OpCompositeExtract %v4float %261 0
+ OpStore %x_GLF_color_1_1 %263
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.wgsl.expected.spvasm
index d0770ba..eb782e5 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-colorgrid-modulo-O-move-block-down/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_51 "x_51"
@@ -55,31 +55,31 @@
OpName %x_130 "x_130"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -118,7 +118,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %241 = OpTypeFunction %void %main_out
+ %241 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %22
@@ -430,20 +430,20 @@
OpStore %x_GLF_color %240
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %241
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %241
+%gl_FragCoord_param = OpFunctionParameter %v4float
%245 = OpLabel
- %246 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %246
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %246 = OpFunctionCall %void %main_1
+ %247 = OpLoad %v4float %x_GLF_color
+ %248 = OpCompositeConstruct %main_out %247
+ OpReturnValue %248
OpFunctionEnd
%main = OpFunction %void None %15
- %248 = OpLabel
- %249 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %249
- %250 = OpFunctionCall %void %main_1
- %252 = OpLoad %v4float %x_GLF_color
- %253 = OpCompositeConstruct %main_out %252
- %251 = OpFunctionCall %void %tint_symbol_3 %253
+ %250 = OpLabel
+ %252 = OpLoad %v4float %gl_FragCoord_param_1
+ %251 = OpFunctionCall %main_out %main_inner %252
+ %253 = OpCompositeExtract %v4float %251 0
+ OpStore %x_GLF_color_1_1 %253
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.spvasm.expected.spvasm
index 77bd5f4..de934f4 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.spvasm.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -61,23 +61,27 @@
OpName %x_425_phi "x_425_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -87,13 +91,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -129,7 +129,7 @@
%float_0 = OpConstant %float 0
%531 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %532 = OpTypeFunction %void %main_out
+ %532 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -156,8 +156,8 @@
%x_289 = OpVariable %_ptr_Function_int Function %35
%x_295 = OpVariable %_ptr_Function_int Function %35
%x_296 = OpVariable %_ptr_Function_int Function %35
- %x_303 = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
- %x_304 = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
+ %x_303 = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
+ %x_304 = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
%x_315 = OpVariable %_ptr_Function_int Function %35
%x_316 = OpVariable %_ptr_Function_int Function %35
%x_359 = OpVariable %_ptr_Function_bool Function %40
@@ -169,7 +169,7 @@
%x_282_phi = OpVariable %_ptr_Function_bool Function %40
%x_290_phi = OpVariable %_ptr_Function_int Function %35
%x_297_phi = OpVariable %_ptr_Function_int Function %35
- %x_305_phi = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
+ %x_305_phi = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
%x_317_phi = OpVariable %_ptr_Function_int Function %35
%x_360_phi = OpVariable %_ptr_Function_bool Function %40
%x_373_phi = OpVariable %_ptr_Function_bool Function %40
@@ -829,20 +829,20 @@
OpStore %x_GLF_color %531
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %532
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %532
+%gl_FragCoord_param = OpFunctionParameter %v4float
%536 = OpLabel
- %537 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %537
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %537 = OpFunctionCall %void %main_1
+ %538 = OpLoad %v4float %x_GLF_color
+ %539 = OpCompositeConstruct %main_out %538
+ OpReturnValue %539
OpFunctionEnd
%main = OpFunction %void None %22
- %539 = OpLabel
- %540 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %540
- %541 = OpFunctionCall %void %main_1
- %543 = OpLoad %v4float %x_GLF_color
- %544 = OpCompositeConstruct %main_out %543
- %542 = OpFunctionCall %void %tint_symbol_3 %544
+ %541 = OpLabel
+ %543 = OpLoad %v4float %gl_FragCoord_param_1
+ %542 = OpFunctionCall %main_out %main_inner %543
+ %544 = OpCompositeExtract %v4float %542 0
+ OpStore %x_GLF_color_1_1 %544
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.wgsl.expected.spvasm
index 77bd5f4..de934f4 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/1.wgsl.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -61,23 +61,27 @@
OpName %x_425_phi "x_425_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -87,13 +91,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -129,7 +129,7 @@
%float_0 = OpConstant %float 0
%531 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %532 = OpTypeFunction %void %main_out
+ %532 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -156,8 +156,8 @@
%x_289 = OpVariable %_ptr_Function_int Function %35
%x_295 = OpVariable %_ptr_Function_int Function %35
%x_296 = OpVariable %_ptr_Function_int Function %35
- %x_303 = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
- %x_304 = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
+ %x_303 = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
+ %x_304 = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
%x_315 = OpVariable %_ptr_Function_int Function %35
%x_316 = OpVariable %_ptr_Function_int Function %35
%x_359 = OpVariable %_ptr_Function_bool Function %40
@@ -169,7 +169,7 @@
%x_282_phi = OpVariable %_ptr_Function_bool Function %40
%x_290_phi = OpVariable %_ptr_Function_int Function %35
%x_297_phi = OpVariable %_ptr_Function_int Function %35
- %x_305_phi = OpVariable %_ptr_Function__arr_int_uint_256 Function %16
+ %x_305_phi = OpVariable %_ptr_Function__arr_int_uint_256 Function %20
%x_317_phi = OpVariable %_ptr_Function_int Function %35
%x_360_phi = OpVariable %_ptr_Function_bool Function %40
%x_373_phi = OpVariable %_ptr_Function_bool Function %40
@@ -829,20 +829,20 @@
OpStore %x_GLF_color %531
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %532
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %532
+%gl_FragCoord_param = OpFunctionParameter %v4float
%536 = OpLabel
- %537 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %537
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %537 = OpFunctionCall %void %main_1
+ %538 = OpLoad %v4float %x_GLF_color
+ %539 = OpCompositeConstruct %main_out %538
+ OpReturnValue %539
OpFunctionEnd
%main = OpFunction %void None %22
- %539 = OpLabel
- %540 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %540
- %541 = OpFunctionCall %void %main_1
- %543 = OpLoad %v4float %x_GLF_color
- %544 = OpCompositeConstruct %main_out %543
- %542 = OpFunctionCall %void %tint_symbol_3 %544
+ %541 = OpLabel
+ %543 = OpLoad %v4float %gl_FragCoord_param_1
+ %542 = OpFunctionCall %main_out %main_inner %543
+ %544 = OpCompositeExtract %v4float %542 0
+ OpStore %x_GLF_color_1_1 %544
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.spvasm.expected.spvasm
index 25009f4..2b6e8e1 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.spvasm.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -51,23 +51,27 @@
OpName %x_401_phi "x_401_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -77,13 +81,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -118,7 +118,7 @@
%float_0 = OpConstant %float 0
%495 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %496 = OpTypeFunction %void %main_out
+ %496 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -751,20 +751,20 @@
OpStore %x_GLF_color %495
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %496
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %496
+%gl_FragCoord_param = OpFunctionParameter %v4float
%500 = OpLabel
- %501 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %501
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %501 = OpFunctionCall %void %main_1
+ %502 = OpLoad %v4float %x_GLF_color
+ %503 = OpCompositeConstruct %main_out %502
+ OpReturnValue %503
OpFunctionEnd
%main = OpFunction %void None %22
- %503 = OpLabel
- %504 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %504
- %505 = OpFunctionCall %void %main_1
- %507 = OpLoad %v4float %x_GLF_color
- %508 = OpCompositeConstruct %main_out %507
- %506 = OpFunctionCall %void %tint_symbol_3 %508
+ %505 = OpLabel
+ %507 = OpLoad %v4float %gl_FragCoord_param_1
+ %506 = OpFunctionCall %main_out %main_inner %507
+ %508 = OpCompositeExtract %v4float %506 0
+ OpStore %x_GLF_color_1_1 %508
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.wgsl.expected.spvasm
index 25009f4..2b6e8e1 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-maze-flatten-copy-composite/2.wgsl.expected.spvasm
@@ -5,16 +5,16 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_7 "x_7"
OpName %map "map"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %pos "pos"
OpName %ipos "ipos"
@@ -51,23 +51,27 @@
OpName %x_401_phi "x_401_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -77,13 +81,9 @@
%uint_256 = OpConstant %uint 256
%_arr_int_uint_256 = OpTypeArray %int %uint_256
%_ptr_Private__arr_int_uint_256 = OpTypePointer Private %_arr_int_uint_256
- %16 = OpConstantNull %_arr_int_uint_256
- %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %16
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %20 = OpConstantNull %_arr_int_uint_256
+ %map = OpVariable %_ptr_Private__arr_int_uint_256 Private %20
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%22 = OpTypeFunction %void
%_ptr_Function_v2float = OpTypePointer Function %v2float
@@ -118,7 +118,7 @@
%float_0 = OpConstant %float 0
%495 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %496 = OpTypeFunction %void %main_out
+ %496 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %22
%25 = OpLabel
%pos = OpVariable %_ptr_Function_v2float Function %28
@@ -751,20 +751,20 @@
OpStore %x_GLF_color %495
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %496
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %496
+%gl_FragCoord_param = OpFunctionParameter %v4float
%500 = OpLabel
- %501 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %501
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %501 = OpFunctionCall %void %main_1
+ %502 = OpLoad %v4float %x_GLF_color
+ %503 = OpCompositeConstruct %main_out %502
+ OpReturnValue %503
OpFunctionEnd
%main = OpFunction %void None %22
- %503 = OpLabel
- %504 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %504
- %505 = OpFunctionCall %void %main_1
- %507 = OpLoad %v4float %x_GLF_color
- %508 = OpCompositeConstruct %main_out %507
- %506 = OpFunctionCall %void %tint_symbol_3 %508
+ %505 = OpLabel
+ %507 = OpLoad %v4float %gl_FragCoord_param_1
+ %506 = OpFunctionCall %main_out %main_inner %507
+ %508 = OpCompositeExtract %v4float %506 0
+ OpStore %x_GLF_color_1_1 %508
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.spvasm.expected.spvasm
index dc5e13f..f1c11c2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%166 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -74,32 +74,32 @@
OpName %x_257_phi "x_257_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -147,7 +147,7 @@
%int_8 = OpConstant %int 8
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %404 = OpTypeFunction %void %main_out
+ %404 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -705,20 +705,20 @@
OpStore %x_GLF_color %403
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %404
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %404
+%gl_FragCoord_param = OpFunctionParameter %v4float
%408 = OpLabel
- %409 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %409
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %409 = OpFunctionCall %void %main_1
+ %410 = OpLoad %v4float %x_GLF_color
+ %411 = OpCompositeConstruct %main_out %410
+ OpReturnValue %411
OpFunctionEnd
%main = OpFunction %void None %15
- %411 = OpLabel
- %412 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %412
- %413 = OpFunctionCall %void %main_1
- %415 = OpLoad %v4float %x_GLF_color
- %416 = OpCompositeConstruct %main_out %415
- %414 = OpFunctionCall %void %tint_symbol_3 %416
+ %413 = OpLabel
+ %415 = OpLoad %v4float %gl_FragCoord_param_1
+ %414 = OpFunctionCall %main_out %main_inner %415
+ %416 = OpCompositeExtract %v4float %414 0
+ OpStore %x_GLF_color_1_1 %416
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.wgsl.expected.spvasm
index 62be4a8..09fcfae 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%166 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -74,32 +74,32 @@
OpName %x_257_phi "x_257_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -147,7 +147,7 @@
%int_8 = OpConstant %int 8
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %408 = OpTypeFunction %void %main_out
+ %408 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -715,20 +715,20 @@
OpStore %x_GLF_color %407
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %408
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %408
+%gl_FragCoord_param = OpFunctionParameter %v4float
%412 = OpLabel
- %413 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %413
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %413 = OpFunctionCall %void %main_1
+ %414 = OpLoad %v4float %x_GLF_color
+ %415 = OpCompositeConstruct %main_out %414
+ OpReturnValue %415
OpFunctionEnd
%main = OpFunction %void None %15
- %415 = OpLabel
- %416 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %416
- %417 = OpFunctionCall %void %main_1
- %419 = OpLoad %v4float %x_GLF_color
- %420 = OpCompositeConstruct %main_out %419
- %418 = OpFunctionCall %void %tint_symbol_3 %420
+ %417 = OpLabel
+ %419 = OpLoad %v4float %gl_FragCoord_param_1
+ %418 = OpFunctionCall %main_out %main_inner %419
+ %420 = OpCompositeExtract %v4float %418 0
+ OpStore %x_GLF_color_1_1 %420
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.spvasm.expected.spvasm
index 2cc6c8d..e95f0ce 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%164 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -74,32 +74,32 @@
OpName %x_256_phi "x_256_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -146,7 +146,7 @@
%int_8 = OpConstant %int 8
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %402 = OpTypeFunction %void %main_out
+ %402 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -701,20 +701,20 @@
OpStore %x_GLF_color %401
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %402
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %402
+%gl_FragCoord_param = OpFunctionParameter %v4float
%406 = OpLabel
- %407 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %407
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %407 = OpFunctionCall %void %main_1
+ %408 = OpLoad %v4float %x_GLF_color
+ %409 = OpCompositeConstruct %main_out %408
+ OpReturnValue %409
OpFunctionEnd
%main = OpFunction %void None %15
- %409 = OpLabel
- %410 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %410
- %411 = OpFunctionCall %void %main_1
- %413 = OpLoad %v4float %x_GLF_color
- %414 = OpCompositeConstruct %main_out %413
- %412 = OpFunctionCall %void %tint_symbol_3 %414
+ %411 = OpLabel
+ %413 = OpLoad %v4float %gl_FragCoord_param_1
+ %412 = OpFunctionCall %main_out %main_inner %413
+ %414 = OpCompositeExtract %v4float %412 0
+ OpStore %x_GLF_color_1_1 %414
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.wgsl.expected.spvasm
index 4e098fd..95cd58b 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-O-prop-up-mutate-var/2.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%164 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -74,32 +74,32 @@
OpName %x_256_phi "x_256_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -146,7 +146,7 @@
%int_8 = OpConstant %int 8
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %406 = OpTypeFunction %void %main_out
+ %406 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -711,20 +711,20 @@
OpStore %x_GLF_color %405
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %406
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %406
+%gl_FragCoord_param = OpFunctionParameter %v4float
%410 = OpLabel
- %411 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %411
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %411 = OpFunctionCall %void %main_1
+ %412 = OpLoad %v4float %x_GLF_color
+ %413 = OpCompositeConstruct %main_out %412
+ OpReturnValue %413
OpFunctionEnd
%main = OpFunction %void None %15
- %413 = OpLabel
- %414 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %414
- %415 = OpFunctionCall %void %main_1
- %417 = OpLoad %v4float %x_GLF_color
- %418 = OpCompositeConstruct %main_out %417
- %416 = OpFunctionCall %void %tint_symbol_3 %418
+ %415 = OpLabel
+ %417 = OpLoad %v4float %gl_FragCoord_param_1
+ %416 = OpFunctionCall %main_out %main_inner %417
+ %418 = OpCompositeExtract %v4float %416 0
+ OpStore %x_GLF_color_1_1 %418
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.spvasm.expected.spvasm
index 446ddb5..6ec2be4 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%173 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -42,40 +42,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -119,7 +119,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %396 = OpTypeFunction %void %main_out
+ %396 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -608,20 +608,20 @@
OpStore %x_GLF_color %395
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %396
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %396
+%gl_FragCoord_param = OpFunctionParameter %v4float
%400 = OpLabel
- %401 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %401
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %401 = OpFunctionCall %void %main_1
+ %402 = OpLoad %v4float %x_GLF_color
+ %403 = OpCompositeConstruct %main_out %402
+ OpReturnValue %403
OpFunctionEnd
%main = OpFunction %void None %128
- %403 = OpLabel
- %404 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %404
- %405 = OpFunctionCall %void %main_1
- %407 = OpLoad %v4float %x_GLF_color
- %408 = OpCompositeConstruct %main_out %407
- %406 = OpFunctionCall %void %tint_symbol_3 %408
+ %405 = OpLabel
+ %407 = OpLoad %v4float %gl_FragCoord_param_1
+ %406 = OpFunctionCall %main_out %main_inner %407
+ %408 = OpCompositeExtract %v4float %406 0
+ OpStore %x_GLF_color_1_1 %408
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.wgsl.expected.spvasm
index f7dffbe..25a6bc2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/0.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%177 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -42,40 +42,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -119,7 +119,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %400 = OpTypeFunction %void %main_out
+ %400 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -618,20 +618,20 @@
OpStore %x_GLF_color %399
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %400
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %400
+%gl_FragCoord_param = OpFunctionParameter %v4float
%404 = OpLabel
- %405 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %405
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %405 = OpFunctionCall %void %main_1
+ %406 = OpLoad %v4float %x_GLF_color
+ %407 = OpCompositeConstruct %main_out %406
+ OpReturnValue %407
OpFunctionEnd
%main = OpFunction %void None %132
- %407 = OpLabel
- %408 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %408
- %409 = OpFunctionCall %void %main_1
- %411 = OpLoad %v4float %x_GLF_color
- %412 = OpCompositeConstruct %main_out %411
- %410 = OpFunctionCall %void %tint_symbol_3 %412
+ %409 = OpLabel
+ %411 = OpLoad %v4float %gl_FragCoord_param_1
+ %410 = OpFunctionCall %main_out %main_inner %411
+ %412 = OpCompositeExtract %v4float %410 0
+ OpStore %x_GLF_color_1_1 %412
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.spvasm.expected.spvasm
index 9168706..bd5121d 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%173 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -43,40 +43,40 @@
OpName %guard233 "guard233"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -125,7 +125,7 @@
%float_0 = OpConstant %float 0
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %420 = OpTypeFunction %void %main_out
+ %420 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -649,20 +649,20 @@
OpStore %x_GLF_color %419
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %420
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %420
+%gl_FragCoord_param = OpFunctionParameter %v4float
%424 = OpLabel
- %425 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %425
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %425 = OpFunctionCall %void %main_1
+ %426 = OpLoad %v4float %x_GLF_color
+ %427 = OpCompositeConstruct %main_out %426
+ OpReturnValue %427
OpFunctionEnd
%main = OpFunction %void None %128
- %427 = OpLabel
- %428 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %428
- %429 = OpFunctionCall %void %main_1
- %431 = OpLoad %v4float %x_GLF_color
- %432 = OpCompositeConstruct %main_out %431
- %430 = OpFunctionCall %void %tint_symbol_3 %432
+ %429 = OpLabel
+ %431 = OpLoad %v4float %gl_FragCoord_param_1
+ %430 = OpFunctionCall %main_out %main_inner %431
+ %432 = OpCompositeExtract %v4float %430 0
+ OpStore %x_GLF_color_1_1 %432
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.wgsl.expected.spvasm
index 2f3113f..62814e3 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-dead-code/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%177 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -43,40 +43,40 @@
OpName %guard233 "guard233"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -125,7 +125,7 @@
%float_0 = OpConstant %float 0
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %424 = OpTypeFunction %void %main_out
+ %424 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -659,20 +659,20 @@
OpStore %x_GLF_color %423
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %424
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %424
+%gl_FragCoord_param = OpFunctionParameter %v4float
%428 = OpLabel
- %429 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %429
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %429 = OpFunctionCall %void %main_1
+ %430 = OpLoad %v4float %x_GLF_color
+ %431 = OpCompositeConstruct %main_out %430
+ OpReturnValue %431
OpFunctionEnd
%main = OpFunction %void None %132
- %431 = OpLabel
- %432 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %432
- %433 = OpFunctionCall %void %main_1
- %435 = OpLoad %v4float %x_GLF_color
- %436 = OpCompositeConstruct %main_out %435
- %434 = OpFunctionCall %void %tint_symbol_3 %436
+ %433 = OpLabel
+ %435 = OpLoad %v4float %gl_FragCoord_param_1
+ %434 = OpFunctionCall %main_out %main_inner %435
+ %436 = OpCompositeExtract %v4float %434 0
+ OpStore %x_GLF_color_1_1 %436
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.spvasm.expected.spvasm
index 0fda3bd..63aeb8c 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%286 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -60,40 +60,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %505 = OpTypeFunction %void %main_out
+ %505 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -823,20 +823,20 @@
OpStore %x_GLF_color %504
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %505
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %505
+%gl_FragCoord_param = OpFunctionParameter %v4float
%509 = OpLabel
- %510 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %510
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %510 = OpFunctionCall %void %main_1
+ %511 = OpLoad %v4float %x_GLF_color
+ %512 = OpCompositeConstruct %main_out %511
+ OpReturnValue %512
OpFunctionEnd
%main = OpFunction %void None %242
- %512 = OpLabel
- %513 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %513
- %514 = OpFunctionCall %void %main_1
- %516 = OpLoad %v4float %x_GLF_color
- %517 = OpCompositeConstruct %main_out %516
- %515 = OpFunctionCall %void %tint_symbol_3 %517
+ %514 = OpLabel
+ %516 = OpLoad %v4float %gl_FragCoord_param_1
+ %515 = OpFunctionCall %main_out %main_inner %516
+ %517 = OpCompositeExtract %v4float %515 0
+ OpStore %x_GLF_color_1_1 %517
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.wgsl.expected.spvasm
index 77c510c..592eb4f 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%290 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -60,40 +60,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %509 = OpTypeFunction %void %main_out
+ %509 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -833,20 +833,20 @@
OpStore %x_GLF_color %508
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %509
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %509
+%gl_FragCoord_param = OpFunctionParameter %v4float
%513 = OpLabel
- %514 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %514
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %514 = OpFunctionCall %void %main_1
+ %515 = OpLoad %v4float %x_GLF_color
+ %516 = OpCompositeConstruct %main_out %515
+ OpReturnValue %516
OpFunctionEnd
%main = OpFunction %void None %246
- %516 = OpLabel
- %517 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %517
- %518 = OpFunctionCall %void %main_1
- %520 = OpLoad %v4float %x_GLF_color
- %521 = OpCompositeConstruct %main_out %520
- %519 = OpFunctionCall %void %tint_symbol_3 %521
+ %518 = OpLabel
+ %520 = OpLoad %v4float %gl_FragCoord_param_1
+ %519 = OpFunctionCall %main_out %main_inner %520
+ %521 = OpCompositeExtract %v4float %519 0
+ OpStore %x_GLF_color_1_1 %521
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.spvasm.expected.spvasm
index b0327f0..3f88a65 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%284 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -60,40 +60,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %503 = OpTypeFunction %void %main_out
+ %503 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -821,20 +821,20 @@
OpStore %x_GLF_color %502
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %503
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %503
+%gl_FragCoord_param = OpFunctionParameter %v4float
%507 = OpLabel
- %508 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %508
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %508 = OpFunctionCall %void %main_1
+ %509 = OpLoad %v4float %x_GLF_color
+ %510 = OpCompositeConstruct %main_out %509
+ OpReturnValue %510
OpFunctionEnd
%main = OpFunction %void None %240
- %510 = OpLabel
- %511 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %511
- %512 = OpFunctionCall %void %main_1
- %514 = OpLoad %v4float %x_GLF_color
- %515 = OpCompositeConstruct %main_out %514
- %513 = OpFunctionCall %void %tint_symbol_3 %515
+ %512 = OpLabel
+ %514 = OpLoad %v4float %gl_FragCoord_param_1
+ %513 = OpFunctionCall %main_out %main_inner %514
+ %515 = OpCompositeExtract %v4float %513 0
+ OpStore %x_GLF_color_1_1 %515
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.wgsl.expected.spvasm
index 0bab964..64bc0c1 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-flatten-selection-dead-continues/2-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%288 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -60,40 +60,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_8 = OpConstant %int 8
%v3float = OpTypeVector %float 3
%main_out = OpTypeStruct %v4float
- %507 = OpTypeFunction %void %main_out
+ %507 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -831,20 +831,20 @@
OpStore %x_GLF_color %506
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %507
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %507
+%gl_FragCoord_param = OpFunctionParameter %v4float
%511 = OpLabel
- %512 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %512
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %512 = OpFunctionCall %void %main_1
+ %513 = OpLoad %v4float %x_GLF_color
+ %514 = OpCompositeConstruct %main_out %513
+ OpReturnValue %514
OpFunctionEnd
%main = OpFunction %void None %244
- %514 = OpLabel
- %515 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %515
- %516 = OpFunctionCall %void %main_1
- %518 = OpLoad %v4float %x_GLF_color
- %519 = OpCompositeConstruct %main_out %518
- %517 = OpFunctionCall %void %tint_symbol_3 %519
+ %516 = OpLabel
+ %518 = OpLoad %v4float %gl_FragCoord_param_1
+ %517 = OpFunctionCall %main_out %main_inner %518
+ %519 = OpCompositeExtract %v4float %517 0
+ OpStore %x_GLF_color_1_1 %519
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.spvasm.expected.spvasm
index b86fd08..f5ab977 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%250 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -41,8 +41,8 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %mergeSort_ "mergeSort_"
OpName %low "low"
@@ -55,37 +55,37 @@
OpName %param "param"
OpName %param_1 "param_1"
OpName %param_2 "param_2"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %395 = OpTypeFunction %void %main_out
+ %395 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -617,21 +617,21 @@
OpStore %x_GLF_color %394
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %395
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %395
+%gl_FragCoord_param = OpFunctionParameter %v4float
%399 = OpLabel
- %400 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %400
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %400 = OpFunctionCall %void %main_1
+ %401 = OpLoad %v4float %x_GLF_color
+ %402 = OpCompositeConstruct %main_out %401
+ OpReturnValue %402
OpFunctionEnd
%main = OpFunction %void None %128
- %402 = OpLabel
- %403 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %403
- %404 = OpFunctionCall %void %main_1
- %406 = OpLoad %v4float %x_GLF_color
- %407 = OpCompositeConstruct %main_out %406
- %405 = OpFunctionCall %void %tint_symbol_3 %407
+ %404 = OpLabel
+ %406 = OpLoad %v4float %gl_FragCoord_param_1
+ %405 = OpFunctionCall %main_out %main_inner %406
+ %407 = OpCompositeExtract %v4float %405 0
+ OpStore %x_GLF_color_1_1 %407
OpReturn
OpFunctionEnd
%mergeSort_ = OpFunction %void None %128
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.wgsl.expected.spvasm
index 6f99e9f..34a9af0 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%254 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -41,8 +41,8 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %mergeSort_ "mergeSort_"
OpName %low "low"
@@ -55,37 +55,37 @@
OpName %param "param"
OpName %param_1 "param_1"
OpName %param_2 "param_2"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %399 = OpTypeFunction %void %main_out
+ %399 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -627,21 +627,21 @@
OpStore %x_GLF_color %398
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %399
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %399
+%gl_FragCoord_param = OpFunctionParameter %v4float
%403 = OpLabel
- %404 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %404
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %404 = OpFunctionCall %void %main_1
+ %405 = OpLoad %v4float %x_GLF_color
+ %406 = OpCompositeConstruct %main_out %405
+ OpReturnValue %406
OpFunctionEnd
%main = OpFunction %void None %132
- %406 = OpLabel
- %407 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %407
- %408 = OpFunctionCall %void %main_1
- %410 = OpLoad %v4float %x_GLF_color
- %411 = OpCompositeConstruct %main_out %410
- %409 = OpFunctionCall %void %tint_symbol_3 %411
+ %408 = OpLabel
+ %410 = OpLoad %v4float %gl_FragCoord_param_1
+ %409 = OpFunctionCall %main_out %main_inner %410
+ %411 = OpCompositeExtract %v4float %409 0
+ OpStore %x_GLF_color_1_1 %411
OpReturn
OpFunctionEnd
%mergeSort_ = OpFunction %void None %132
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.spvasm.expected.spvasm
index 06e5ba8..cd54ca6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%248 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -41,8 +41,8 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %mergeSort_ "mergeSort_"
OpName %low "low"
@@ -55,37 +55,37 @@
OpName %param "param"
OpName %param_1 "param_1"
OpName %param_2 "param_2"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -129,7 +129,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %393 = OpTypeFunction %void %main_out
+ %393 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -613,21 +613,21 @@
OpStore %x_GLF_color %392
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %393
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %393
+%gl_FragCoord_param = OpFunctionParameter %v4float
%397 = OpLabel
- %398 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %398
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %398 = OpFunctionCall %void %main_1
+ %399 = OpLoad %v4float %x_GLF_color
+ %400 = OpCompositeConstruct %main_out %399
+ OpReturnValue %400
OpFunctionEnd
%main = OpFunction %void None %128
- %400 = OpLabel
- %401 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %401
- %402 = OpFunctionCall %void %main_1
- %404 = OpLoad %v4float %x_GLF_color
- %405 = OpCompositeConstruct %main_out %404
- %403 = OpFunctionCall %void %tint_symbol_3 %405
+ %402 = OpLabel
+ %404 = OpLoad %v4float %gl_FragCoord_param_1
+ %403 = OpFunctionCall %main_out %main_inner %404
+ %405 = OpCompositeExtract %v4float %403 0
+ OpStore %x_GLF_color_1_1 %405
OpReturn
OpFunctionEnd
%mergeSort_ = OpFunction %void None %128
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.wgsl.expected.spvasm
index a502034..5965e67 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-mergesort-func-inline-mutate-var/2.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%252 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -41,8 +41,8 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
OpName %mergeSort_ "mergeSort_"
OpName %low "low"
@@ -55,37 +55,37 @@
OpName %param "param"
OpName %param_1 "param_1"
OpName %param_2 "param_2"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -129,7 +129,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %397 = OpTypeFunction %void %main_out
+ %397 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -623,21 +623,21 @@
OpStore %x_GLF_color %396
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %397
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %397
+%gl_FragCoord_param = OpFunctionParameter %v4float
%401 = OpLabel
- %402 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %402
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %402 = OpFunctionCall %void %main_1
+ %403 = OpLoad %v4float %x_GLF_color
+ %404 = OpCompositeConstruct %main_out %403
+ OpReturnValue %404
OpFunctionEnd
%main = OpFunction %void None %132
- %404 = OpLabel
- %405 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %405
- %406 = OpFunctionCall %void %main_1
- %408 = OpLoad %v4float %x_GLF_color
- %409 = OpCompositeConstruct %main_out %408
- %407 = OpFunctionCall %void %tint_symbol_3 %409
+ %406 = OpLabel
+ %408 = OpLoad %v4float %gl_FragCoord_param_1
+ %407 = OpFunctionCall %main_out %main_inner %408
+ %409 = OpCompositeExtract %v4float %407 0
+ OpStore %x_GLF_color_1_1 %409
OpReturn
OpFunctionEnd
%mergeSort_ = OpFunction %void None %132
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.spvasm.expected.spvasm
index d89e65c..1040dc6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_77 "x_77"
@@ -32,32 +32,32 @@
OpName %x_114 "x_114"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -107,7 +107,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.wgsl.expected.spvasm
index d89e65c..1040dc6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_77 "x_77"
@@ -32,32 +32,32 @@
OpName %x_114 "x_114"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -107,7 +107,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.spvasm.expected.spvasm
index 0b49352..56656ad 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -109,7 +109,7 @@
%170 = OpConstantComposite %_arr_v4float_uint_16 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %175 = OpTypeFunction %void %main_out
+ %175 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -278,20 +278,20 @@
OpStore %x_GLF_color %174
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %175
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %175
+%gl_FragCoord_param = OpFunctionParameter %v4float
%179 = OpLabel
- %180 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %180
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %180 = OpFunctionCall %void %main_1
+ %181 = OpLoad %v4float %x_GLF_color
+ %182 = OpCompositeConstruct %main_out %181
+ OpReturnValue %182
OpFunctionEnd
%main = OpFunction %void None %15
- %182 = OpLabel
- %183 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %183
- %184 = OpFunctionCall %void %main_1
- %186 = OpLoad %v4float %x_GLF_color
- %187 = OpCompositeConstruct %main_out %186
- %185 = OpFunctionCall %void %tint_symbol_3 %187
+ %184 = OpLabel
+ %186 = OpLoad %v4float %gl_FragCoord_param_1
+ %185 = OpFunctionCall %main_out %main_inner %186
+ %187 = OpCompositeExtract %v4float %185 0
+ OpStore %x_GLF_color_1_1 %187
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.wgsl.expected.spvasm
index 0b49352..56656ad 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-O-mutate-variable/1.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -109,7 +109,7 @@
%170 = OpConstantComposite %_arr_v4float_uint_16 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %175 = OpTypeFunction %void %main_out
+ %175 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -278,20 +278,20 @@
OpStore %x_GLF_color %174
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %175
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %175
+%gl_FragCoord_param = OpFunctionParameter %v4float
%179 = OpLabel
- %180 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %180
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %180 = OpFunctionCall %void %main_1
+ %181 = OpLoad %v4float %x_GLF_color
+ %182 = OpCompositeConstruct %main_out %181
+ OpReturnValue %182
OpFunctionEnd
%main = OpFunction %void None %15
- %182 = OpLabel
- %183 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %183
- %184 = OpFunctionCall %void %main_1
- %186 = OpLoad %v4float %x_GLF_color
- %187 = OpCompositeConstruct %main_out %186
- %185 = OpFunctionCall %void %tint_symbol_3 %187
+ %184 = OpLabel
+ %186 = OpLoad %v4float %gl_FragCoord_param_1
+ %185 = OpFunctionCall %main_out %main_inner %186
+ %187 = OpCompositeExtract %v4float %185 0
+ OpStore %x_GLF_color_1_1 %187
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.spvasm.expected.spvasm
index 2951010..4dc817a 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_76 "x_76"
@@ -32,32 +32,32 @@
OpName %x_113 "x_113"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -106,7 +106,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.wgsl.expected.spvasm
index 2951010..4dc817a 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_76 "x_76"
@@ -32,32 +32,32 @@
OpName %x_113 "x_113"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -106,7 +106,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.spvasm.expected.spvasm
index af0b70a..ab775fd 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -108,7 +108,7 @@
%170 = OpConstantComposite %_arr_v4float_uint_16 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %175 = OpTypeFunction %void %main_out
+ %175 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -278,20 +278,20 @@
OpStore %x_GLF_color %174
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %175
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %175
+%gl_FragCoord_param = OpFunctionParameter %v4float
%179 = OpLabel
- %180 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %180
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %180 = OpFunctionCall %void %main_1
+ %181 = OpLoad %v4float %x_GLF_color
+ %182 = OpCompositeConstruct %main_out %181
+ OpReturnValue %182
OpFunctionEnd
%main = OpFunction %void None %15
- %182 = OpLabel
- %183 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %183
- %184 = OpFunctionCall %void %main_1
- %186 = OpLoad %v4float %x_GLF_color
- %187 = OpCompositeConstruct %main_out %186
- %185 = OpFunctionCall %void %tint_symbol_3 %187
+ %184 = OpLabel
+ %186 = OpLoad %v4float %gl_FragCoord_param_1
+ %185 = OpFunctionCall %main_out %main_inner %186
+ %187 = OpCompositeExtract %v4float %185 0
+ OpStore %x_GLF_color_1_1 %187
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.wgsl.expected.spvasm
index af0b70a..ab775fd 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/1.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -108,7 +108,7 @@
%170 = OpConstantComposite %_arr_v4float_uint_16 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169 %169
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %175 = OpTypeFunction %void %main_out
+ %175 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -278,20 +278,20 @@
OpStore %x_GLF_color %174
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %175
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %175
+%gl_FragCoord_param = OpFunctionParameter %v4float
%179 = OpLabel
- %180 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %180
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %180 = OpFunctionCall %void %main_1
+ %181 = OpLoad %v4float %x_GLF_color
+ %182 = OpCompositeConstruct %main_out %181
+ OpReturnValue %182
OpFunctionEnd
%main = OpFunction %void None %15
- %182 = OpLabel
- %183 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %183
- %184 = OpFunctionCall %void %main_1
- %186 = OpLoad %v4float %x_GLF_color
- %187 = OpCompositeConstruct %main_out %186
- %185 = OpFunctionCall %void %tint_symbol_3 %187
+ %184 = OpLabel
+ %186 = OpLoad %v4float %gl_FragCoord_param_1
+ %185 = OpFunctionCall %main_out %main_inner %186
+ %187 = OpCompositeExtract %v4float %185 0
+ OpStore %x_GLF_color_1_1 %187
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.spvasm.expected.spvasm
index 657d9eb..b6999e2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -106,7 +106,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.wgsl.expected.spvasm
index 657d9eb..b6999e2 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-orbit-Os-access-chain-mutate-pointer/2.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %indexable "indexable"
OpName %x_80 "x_80"
@@ -32,32 +32,32 @@
OpName %x_117 "x_117"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -106,7 +106,7 @@
%167 = OpConstantComposite %_arr_v4float_uint_16 %151 %153 %154 %155 %156 %157 %158 %159 %151 %160 %161 %162 %163 %164 %165 %166
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %24
@@ -273,20 +273,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %15
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.spvasm.expected.spvasm
index cc6b7b1..d649091 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%267 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_196 "x_196"
OpName %x_197 "x_197"
@@ -33,32 +33,32 @@
OpName %x_215_1 "x_215_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -249,19 +249,19 @@
%int_1 = OpConstant %int 1
%288 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %290 = OpTypeFunction %void %main_out
+ %290 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_198 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_210 = OpVariable %_ptr_Function_v2int Function %31
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
- %x_253 = OpVariable %_ptr_Function_v4float Function %5
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
+ %x_253 = OpVariable %_ptr_Function_v4float Function %7
%x_214_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_253_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_253_phi = OpVariable %_ptr_Function_v4float Function %7
%x_254_phi = OpVariable %_ptr_Function_bool Function %40
- %x_256_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_256_phi = OpVariable %_ptr_Function_v4float Function %7
%x_233 = OpVariable %_ptr_Function_int Function %68
%x_234 = OpVariable %_ptr_Function_int Function %68
%x_235_phi = OpVariable %_ptr_Function_int Function %68
@@ -389,20 +389,20 @@
OpStore %x_GLF_color %289
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %290
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %290
+%gl_FragCoord_param = OpFunctionParameter %v4float
%294 = OpLabel
- %295 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %295
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %295 = OpFunctionCall %void %main_1
+ %296 = OpLoad %v4float %x_GLF_color
+ %297 = OpCompositeConstruct %main_out %296
+ OpReturnValue %297
OpFunctionEnd
%main = OpFunction %void None %15
- %297 = OpLabel
- %298 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %298
- %299 = OpFunctionCall %void %main_1
- %301 = OpLoad %v4float %x_GLF_color
- %302 = OpCompositeConstruct %main_out %301
- %300 = OpFunctionCall %void %tint_symbol_3 %302
+ %299 = OpLabel
+ %301 = OpLoad %v4float %gl_FragCoord_param_1
+ %300 = OpFunctionCall %main_out %main_inner %301
+ %302 = OpCompositeExtract %v4float %300 0
+ OpStore %x_GLF_color_1_1 %302
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.wgsl.expected.spvasm
index cc6b7b1..d649091 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%267 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_196 "x_196"
OpName %x_197 "x_197"
@@ -33,32 +33,32 @@
OpName %x_215_1 "x_215_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -249,19 +249,19 @@
%int_1 = OpConstant %int 1
%288 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %290 = OpTypeFunction %void %main_out
+ %290 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_198 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_210 = OpVariable %_ptr_Function_v2int Function %31
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
- %x_253 = OpVariable %_ptr_Function_v4float Function %5
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
+ %x_253 = OpVariable %_ptr_Function_v4float Function %7
%x_214_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_253_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_253_phi = OpVariable %_ptr_Function_v4float Function %7
%x_254_phi = OpVariable %_ptr_Function_bool Function %40
- %x_256_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_256_phi = OpVariable %_ptr_Function_v4float Function %7
%x_233 = OpVariable %_ptr_Function_int Function %68
%x_234 = OpVariable %_ptr_Function_int Function %68
%x_235_phi = OpVariable %_ptr_Function_int Function %68
@@ -389,20 +389,20 @@
OpStore %x_GLF_color %289
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %290
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %290
+%gl_FragCoord_param = OpFunctionParameter %v4float
%294 = OpLabel
- %295 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %295
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %295 = OpFunctionCall %void %main_1
+ %296 = OpLoad %v4float %x_GLF_color
+ %297 = OpCompositeConstruct %main_out %296
+ OpReturnValue %297
OpFunctionEnd
%main = OpFunction %void None %15
- %297 = OpLabel
- %298 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %298
- %299 = OpFunctionCall %void %main_1
- %301 = OpLoad %v4float %x_GLF_color
- %302 = OpCompositeConstruct %main_out %301
- %300 = OpFunctionCall %void %tint_symbol_3 %302
+ %299 = OpLabel
+ %301 = OpLoad %v4float %gl_FragCoord_param_1
+ %300 = OpFunctionCall %main_out %main_inner %301
+ %302 = OpCompositeExtract %v4float %300 0
+ OpStore %x_GLF_color_1_1 %302
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.spvasm.expected.spvasm
index ace8cfb..cbcac4d 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%263 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_196 "x_196"
OpName %x_197 "x_197"
@@ -32,32 +32,32 @@
OpName %x_215_1 "x_215_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -248,19 +248,19 @@
%int_1 = OpConstant %int 1
%284 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %286 = OpTypeFunction %void %main_out
+ %286 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_198 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_210 = OpVariable %_ptr_Function_v2int Function %31
- %x_249 = OpVariable %_ptr_Function_v4float Function %5
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
+ %x_249 = OpVariable %_ptr_Function_v4float Function %7
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
%x_214_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_251_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_251_phi = OpVariable %_ptr_Function_v4float Function %7
%x_252_phi = OpVariable %_ptr_Function_bool Function %40
- %x_254_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_254_phi = OpVariable %_ptr_Function_v4float Function %7
%x_233 = OpVariable %_ptr_Function_int Function %68
%x_234 = OpVariable %_ptr_Function_int Function %68
%x_235_phi = OpVariable %_ptr_Function_int Function %68
@@ -378,20 +378,20 @@
OpStore %x_GLF_color %285
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %286
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %286
+%gl_FragCoord_param = OpFunctionParameter %v4float
%290 = OpLabel
- %291 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %291
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %291 = OpFunctionCall %void %main_1
+ %292 = OpLoad %v4float %x_GLF_color
+ %293 = OpCompositeConstruct %main_out %292
+ OpReturnValue %293
OpFunctionEnd
%main = OpFunction %void None %15
- %293 = OpLabel
- %294 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %294
- %295 = OpFunctionCall %void %main_1
- %297 = OpLoad %v4float %x_GLF_color
- %298 = OpCompositeConstruct %main_out %297
- %296 = OpFunctionCall %void %tint_symbol_3 %298
+ %295 = OpLabel
+ %297 = OpLoad %v4float %gl_FragCoord_param_1
+ %296 = OpFunctionCall %main_out %main_inner %297
+ %298 = OpCompositeExtract %v4float %296 0
+ OpStore %x_GLF_color_1_1 %298
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.wgsl.expected.spvasm
index ace8cfb..cbcac4d 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-O-op-select-to-op-phi/2.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%263 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_196 "x_196"
OpName %x_197 "x_197"
@@ -32,32 +32,32 @@
OpName %x_215_1 "x_215_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -248,19 +248,19 @@
%int_1 = OpConstant %int 1
%284 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %286 = OpTypeFunction %void %main_out
+ %286 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_196 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_197 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_198 = OpVariable %_ptr_Function__arr_int_uint_256 Function %25
%x_210 = OpVariable %_ptr_Function_v2int Function %31
- %x_249 = OpVariable %_ptr_Function_v4float Function %5
- %x_251 = OpVariable %_ptr_Function_v4float Function %5
+ %x_249 = OpVariable %_ptr_Function_v4float Function %7
+ %x_251 = OpVariable %_ptr_Function_v4float Function %7
%x_214_phi = OpVariable %_ptr_Function_v2int Function %31
- %x_251_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_251_phi = OpVariable %_ptr_Function_v4float Function %7
%x_252_phi = OpVariable %_ptr_Function_bool Function %40
- %x_254_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_254_phi = OpVariable %_ptr_Function_v4float Function %7
%x_233 = OpVariable %_ptr_Function_int Function %68
%x_234 = OpVariable %_ptr_Function_int Function %68
%x_235_phi = OpVariable %_ptr_Function_int Function %68
@@ -378,20 +378,20 @@
OpStore %x_GLF_color %285
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %286
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %286
+%gl_FragCoord_param = OpFunctionParameter %v4float
%290 = OpLabel
- %291 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %291
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %291 = OpFunctionCall %void %main_1
+ %292 = OpLoad %v4float %x_GLF_color
+ %293 = OpCompositeConstruct %main_out %292
+ OpReturnValue %293
OpFunctionEnd
%main = OpFunction %void None %15
- %293 = OpLabel
- %294 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %294
- %295 = OpFunctionCall %void %main_1
- %297 = OpLoad %v4float %x_GLF_color
- %298 = OpCompositeConstruct %main_out %297
- %296 = OpFunctionCall %void %tint_symbol_3 %298
+ %295 = OpLabel
+ %297 = OpLoad %v4float %gl_FragCoord_param_1
+ %296 = OpFunctionCall %main_out %main_inner %297
+ %298 = OpCompositeExtract %v4float %296 0
+ OpStore %x_GLF_color_1_1 %298
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.spvasm.expected.spvasm
index 1bc7c3e..0c45b13 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%247 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %trace_vi2_ "trace_vi2_"
OpName %pos "pos"
OpName %indexable "indexable"
@@ -29,32 +29,32 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
@@ -244,7 +244,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_256 = OpConstant %float 256
%main_out = OpTypeStruct %v4float
- %297 = OpTypeFunction %void %main_out
+ %297 = OpTypeFunction %main_out %v4float
%trace_vi2_ = OpFunction %v4float None %15
%pos = OpFunctionParameter %_ptr_Function_v2int
%21 = OpLabel
@@ -359,20 +359,20 @@
OpStore %x_GLF_color %295
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %297
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %297
+%gl_FragCoord_param = OpFunctionParameter %v4float
%301 = OpLabel
- %302 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %302
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %302 = OpFunctionCall %void %main_1
+ %303 = OpLoad %v4float %x_GLF_color
+ %304 = OpCompositeConstruct %main_out %303
+ OpReturnValue %304
OpFunctionEnd
%main = OpFunction %void None %266
- %304 = OpLabel
- %305 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %305
- %306 = OpFunctionCall %void %main_1
- %308 = OpLoad %v4float %x_GLF_color
- %309 = OpCompositeConstruct %main_out %308
- %307 = OpFunctionCall %void %tint_symbol_3 %309
+ %306 = OpLabel
+ %308 = OpLoad %v4float %gl_FragCoord_param_1
+ %307 = OpFunctionCall %main_out %main_inner %308
+ %309 = OpCompositeExtract %v4float %307 0
+ OpStore %x_GLF_color_1_1 %309
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.wgsl.expected.spvasm
index 1bc7c3e..0c45b13 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%247 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %trace_vi2_ "trace_vi2_"
OpName %pos "pos"
OpName %indexable "indexable"
@@ -29,32 +29,32 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
@@ -244,7 +244,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_256 = OpConstant %float 256
%main_out = OpTypeStruct %v4float
- %297 = OpTypeFunction %void %main_out
+ %297 = OpTypeFunction %main_out %v4float
%trace_vi2_ = OpFunction %v4float None %15
%pos = OpFunctionParameter %_ptr_Function_v2int
%21 = OpLabel
@@ -359,20 +359,20 @@
OpStore %x_GLF_color %295
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %297
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %297
+%gl_FragCoord_param = OpFunctionParameter %v4float
%301 = OpLabel
- %302 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %302
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %302 = OpFunctionCall %void %main_1
+ %303 = OpLoad %v4float %x_GLF_color
+ %304 = OpCompositeConstruct %main_out %303
+ OpReturnValue %304
OpFunctionEnd
%main = OpFunction %void None %266
- %304 = OpLabel
- %305 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %305
- %306 = OpFunctionCall %void %main_1
- %308 = OpLoad %v4float %x_GLF_color
- %309 = OpCompositeConstruct %main_out %308
- %307 = OpFunctionCall %void %tint_symbol_3 %309
+ %306 = OpLabel
+ %308 = OpLoad %v4float %gl_FragCoord_param_1
+ %307 = OpFunctionCall %main_out %main_inner %308
+ %309 = OpCompositeExtract %v4float %307 0
+ OpStore %x_GLF_color_1_1 %309
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.spvasm.expected.spvasm
index 5d77d9b..da642c3 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%256 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %trace_vi2_ "trace_vi2_"
OpName %pos "pos"
OpName %indexable "indexable"
@@ -29,32 +29,32 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
@@ -245,7 +245,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_256 = OpConstant %float 256
%main_out = OpTypeStruct %v4float
- %306 = OpTypeFunction %void %main_out
+ %306 = OpTypeFunction %main_out %v4float
%trace_vi2_ = OpFunction %v4float None %15
%pos = OpFunctionParameter %_ptr_Function_v2int
%21 = OpLabel
@@ -369,20 +369,20 @@
OpStore %x_GLF_color %304
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %306
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %306
+%gl_FragCoord_param = OpFunctionParameter %v4float
%310 = OpLabel
- %311 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %311
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %311 = OpFunctionCall %void %main_1
+ %312 = OpLoad %v4float %x_GLF_color
+ %313 = OpCompositeConstruct %main_out %312
+ OpReturnValue %313
OpFunctionEnd
%main = OpFunction %void None %275
- %313 = OpLabel
- %314 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %314
- %315 = OpFunctionCall %void %main_1
- %317 = OpLoad %v4float %x_GLF_color
- %318 = OpCompositeConstruct %main_out %317
- %316 = OpFunctionCall %void %tint_symbol_3 %318
+ %315 = OpLabel
+ %317 = OpLoad %v4float %gl_FragCoord_param_1
+ %316 = OpFunctionCall %main_out %main_inner %317
+ %318 = OpCompositeExtract %v4float %316 0
+ OpStore %x_GLF_color_1_1 %318
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.wgsl.expected.spvasm
index 5d77d9b..da642c3 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-pillars-volatile-nontemporal-store/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%256 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %trace_vi2_ "trace_vi2_"
OpName %pos "pos"
OpName %indexable "indexable"
@@ -29,32 +29,32 @@
OpName %param "param"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_256 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%_ptr_Function_v2int = OpTypePointer Function %v2int
@@ -245,7 +245,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_256 = OpConstant %float 256
%main_out = OpTypeStruct %v4float
- %306 = OpTypeFunction %void %main_out
+ %306 = OpTypeFunction %main_out %v4float
%trace_vi2_ = OpFunction %v4float None %15
%pos = OpFunctionParameter %_ptr_Function_v2int
%21 = OpLabel
@@ -369,20 +369,20 @@
OpStore %x_GLF_color %304
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %306
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %306
+%gl_FragCoord_param = OpFunctionParameter %v4float
%310 = OpLabel
- %311 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %311
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %311 = OpFunctionCall %void %main_1
+ %312 = OpLoad %v4float %x_GLF_color
+ %313 = OpCompositeConstruct %main_out %312
+ OpReturnValue %313
OpFunctionEnd
%main = OpFunction %void None %275
- %313 = OpLabel
- %314 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %314
- %315 = OpFunctionCall %void %main_1
- %317 = OpLoad %v4float %x_GLF_color
- %318 = OpCompositeConstruct %main_out %317
- %316 = OpFunctionCall %void %tint_symbol_3 %318
+ %315 = OpLabel
+ %317 = OpLoad %v4float %gl_FragCoord_param_1
+ %316 = OpFunctionCall %main_out %main_inner %317
+ %318 = OpCompositeExtract %v4float %316 0
+ OpStore %x_GLF_color_1_1 %318
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.spvasm.expected.spvasm
index dfd34c5..1685711 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%343 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_32 "x_32"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -46,9 +46,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -56,31 +58,29 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_32 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -121,7 +121,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %361 = OpTypeFunction %void %main_out
+ %361 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -522,20 +522,20 @@
OpStore %x_GLF_color %360
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %361
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %361
+%gl_FragCoord_param = OpFunctionParameter %v4float
%365 = OpLabel
- %366 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %366
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %366 = OpFunctionCall %void %main_1
+ %367 = OpLoad %v4float %x_GLF_color
+ %368 = OpCompositeConstruct %main_out %367
+ OpReturnValue %368
OpFunctionEnd
%main = OpFunction %void None %109
- %368 = OpLabel
- %369 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %369
- %370 = OpFunctionCall %void %main_1
- %372 = OpLoad %v4float %x_GLF_color
- %373 = OpCompositeConstruct %main_out %372
- %371 = OpFunctionCall %void %tint_symbol_3 %373
+ %370 = OpLabel
+ %372 = OpLoad %v4float %gl_FragCoord_param_1
+ %371 = OpFunctionCall %main_out %main_inner %372
+ %373 = OpCompositeExtract %v4float %371 0
+ OpStore %x_GLF_color_1_1 %373
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.wgsl.expected.spvasm
index dfd34c5..1685711 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-dontinline/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%343 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_32 "x_32"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -46,9 +46,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -56,31 +58,29 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_32 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -121,7 +121,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %361 = OpTypeFunction %void %main_out
+ %361 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -522,20 +522,20 @@
OpStore %x_GLF_color %360
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %361
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %361
+%gl_FragCoord_param = OpFunctionParameter %v4float
%365 = OpLabel
- %366 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %366
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %366 = OpFunctionCall %void %main_1
+ %367 = OpLoad %v4float %x_GLF_color
+ %368 = OpCompositeConstruct %main_out %367
+ OpReturnValue %368
OpFunctionEnd
%main = OpFunction %void None %109
- %368 = OpLabel
- %369 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %369
- %370 = OpFunctionCall %void %main_1
- %372 = OpLoad %v4float %x_GLF_color
- %373 = OpCompositeConstruct %main_out %372
- %371 = OpFunctionCall %void %tint_symbol_3 %373
+ %370 = OpLabel
+ %372 = OpLoad %v4float %gl_FragCoord_param_1
+ %371 = OpFunctionCall %main_out %main_inner %372
+ %373 = OpCompositeExtract %v4float %371 0
+ OpStore %x_GLF_color_1_1 %373
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.spvasm.expected.spvasm
index 2c8db03..c09bea6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%348 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_32 "x_32"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -47,9 +47,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -57,31 +59,29 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_32 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%v3float = OpTypeVector %float 3
@@ -126,7 +126,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %366 = OpTypeFunction %void %main_out
+ %366 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -528,20 +528,20 @@
OpStore %x_GLF_color %365
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %366
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %366
+%gl_FragCoord_param = OpFunctionParameter %v4float
%370 = OpLabel
- %371 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %371
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %371 = OpFunctionCall %void %main_1
+ %372 = OpLoad %v4float %x_GLF_color
+ %373 = OpCompositeConstruct %main_out %372
+ OpReturnValue %373
OpFunctionEnd
%main = OpFunction %void None %115
- %373 = OpLabel
- %374 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %374
- %375 = OpFunctionCall %void %main_1
- %377 = OpLoad %v4float %x_GLF_color
- %378 = OpCompositeConstruct %main_out %377
- %376 = OpFunctionCall %void %tint_symbol_3 %378
+ %375 = OpLabel
+ %377 = OpLoad %v4float %gl_FragCoord_param_1
+ %376 = OpFunctionCall %main_out %main_inner %377
+ %378 = OpCompositeExtract %v4float %376 0
+ OpStore %x_GLF_color_1_1 %378
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.wgsl.expected.spvasm
index 2c8db03..c09bea6 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-quicksort-mat-func-param/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%348 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_32 "x_32"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -47,9 +47,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -57,31 +59,29 @@
OpDecorate %x_32 NonWritable
OpDecorate %x_32 DescriptorSet 0
OpDecorate %x_32 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_32 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%v3float = OpTypeVector %float 3
@@ -126,7 +126,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %366 = OpTypeFunction %void %main_out
+ %366 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -528,20 +528,20 @@
OpStore %x_GLF_color %365
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %366
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %366
+%gl_FragCoord_param = OpFunctionParameter %v4float
%370 = OpLabel
- %371 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %371
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %371 = OpFunctionCall %void %main_1
+ %372 = OpLoad %v4float %x_GLF_color
+ %373 = OpCompositeConstruct %main_out %372
+ OpReturnValue %373
OpFunctionEnd
%main = OpFunction %void None %115
- %373 = OpLabel
- %374 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %374
- %375 = OpFunctionCall %void %main_1
- %377 = OpLoad %v4float %x_GLF_color
- %378 = OpCompositeConstruct %main_out %377
- %376 = OpFunctionCall %void %tint_symbol_3 %378
+ %375 = OpLabel
+ %377 = OpLoad %v4float %gl_FragCoord_param_1
+ %376 = OpFunctionCall %main_out %main_inner %377
+ %378 = OpCompositeExtract %v4float %376 0
+ OpStore %x_GLF_color_1_1 %378
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.spvasm.expected.spvasm
index 5d0f00b..7ae9ae4 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_81 "x_81"
OpName %x_82 "x_82"
@@ -31,33 +31,33 @@
OpName %x_104 "x_104"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -131,7 +131,7 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %174 = OpTypeFunction %void %main_out
+ %174 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_81 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
@@ -139,14 +139,14 @@
%x_83 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_84 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_85 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %35
- %x_95 = OpVariable %_ptr_Function_v4float Function %5
- %x_95_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_95 = OpVariable %_ptr_Function_v4float Function %7
+ %x_95_phi = OpVariable %_ptr_Function_v4float Function %7
%x_98_phi = OpVariable %_ptr_Function_int Function %42
- %x_143 = OpVariable %_ptr_Function_v4float Function %5
+ %x_143 = OpVariable %_ptr_Function_v4float Function %7
%x_99 = OpVariable %_ptr_Function_int Function %42
%x_127_phi = OpVariable %_ptr_Function_bool Function %87
- %x_96_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_104 = OpVariable %_ptr_Function_v4float Function %5
+ %x_96_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_104 = OpVariable %_ptr_Function_v4float Function %7
OpStore %x_81 %24
OpStore %x_81 %59
%60 = OpLoad %_arr_v4float_uint_8 %x_81
@@ -271,20 +271,20 @@
OpStore %x_GLF_color %173
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %174
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %174
+%gl_FragCoord_param = OpFunctionParameter %v4float
%178 = OpLabel
- %179 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %179
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %179 = OpFunctionCall %void %main_1
+ %180 = OpLoad %v4float %x_GLF_color
+ %181 = OpCompositeConstruct %main_out %180
+ OpReturnValue %181
OpFunctionEnd
%main = OpFunction %void None %15
- %181 = OpLabel
- %182 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %182
- %183 = OpFunctionCall %void %main_1
- %185 = OpLoad %v4float %x_GLF_color
- %186 = OpCompositeConstruct %main_out %185
- %184 = OpFunctionCall %void %tint_symbol_3 %186
+ %183 = OpLabel
+ %185 = OpLoad %v4float %gl_FragCoord_param_1
+ %184 = OpFunctionCall %main_out %main_inner %185
+ %186 = OpCompositeExtract %v4float %184 0
+ OpStore %x_GLF_color_1_1 %186
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.wgsl.expected.spvasm
index 5d0f00b..7ae9ae4 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_81 "x_81"
OpName %x_82 "x_82"
@@ -31,33 +31,33 @@
OpName %x_104 "x_104"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -131,7 +131,7 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %174 = OpTypeFunction %void %main_out
+ %174 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_81 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
@@ -139,14 +139,14 @@
%x_83 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_84 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_85 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %35
- %x_95 = OpVariable %_ptr_Function_v4float Function %5
- %x_95_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_95 = OpVariable %_ptr_Function_v4float Function %7
+ %x_95_phi = OpVariable %_ptr_Function_v4float Function %7
%x_98_phi = OpVariable %_ptr_Function_int Function %42
- %x_143 = OpVariable %_ptr_Function_v4float Function %5
+ %x_143 = OpVariable %_ptr_Function_v4float Function %7
%x_99 = OpVariable %_ptr_Function_int Function %42
%x_127_phi = OpVariable %_ptr_Function_bool Function %87
- %x_96_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_104 = OpVariable %_ptr_Function_v4float Function %5
+ %x_96_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_104 = OpVariable %_ptr_Function_v4float Function %7
OpStore %x_81 %24
OpStore %x_81 %59
%60 = OpLoad %_arr_v4float_uint_8 %x_81
@@ -271,20 +271,20 @@
OpStore %x_GLF_color %173
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %174
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %174
+%gl_FragCoord_param = OpFunctionParameter %v4float
%178 = OpLabel
- %179 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %179
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %179 = OpFunctionCall %void %main_1
+ %180 = OpLoad %v4float %x_GLF_color
+ %181 = OpCompositeConstruct %main_out %180
+ OpReturnValue %181
OpFunctionEnd
%main = OpFunction %void None %15
- %181 = OpLabel
- %182 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %182
- %183 = OpFunctionCall %void %main_1
- %185 = OpLoad %v4float %x_GLF_color
- %186 = OpCompositeConstruct %main_out %185
- %184 = OpFunctionCall %void %tint_symbol_3 %186
+ %183 = OpLabel
+ %185 = OpLoad %v4float %gl_FragCoord_param_1
+ %184 = OpFunctionCall %main_out %main_inner %185
+ %186 = OpCompositeExtract %v4float %184 0
+ OpStore %x_GLF_color_1_1 %186
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.spvasm.expected.spvasm
index 4ef0500..f0b1639 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_81 "x_81"
OpName %x_82 "x_82"
@@ -31,33 +31,33 @@
OpName %x_104 "x_104"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -131,7 +131,7 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %173 = OpTypeFunction %void %main_out
+ %173 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_81 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
@@ -139,14 +139,14 @@
%x_83 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_84 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_85 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %35
- %x_95 = OpVariable %_ptr_Function_v4float Function %5
- %x_95_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_95 = OpVariable %_ptr_Function_v4float Function %7
+ %x_95_phi = OpVariable %_ptr_Function_v4float Function %7
%x_98_phi = OpVariable %_ptr_Function_int Function %42
- %x_142 = OpVariable %_ptr_Function_v4float Function %5
+ %x_142 = OpVariable %_ptr_Function_v4float Function %7
%x_99 = OpVariable %_ptr_Function_int Function %42
%x_127_phi = OpVariable %_ptr_Function_bool Function %87
- %x_96_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_104 = OpVariable %_ptr_Function_v4float Function %5
+ %x_96_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_104 = OpVariable %_ptr_Function_v4float Function %7
OpStore %x_81 %24
OpStore %x_81 %59
%60 = OpLoad %_arr_v4float_uint_8 %x_81
@@ -268,20 +268,20 @@
OpStore %x_GLF_color %172
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %173
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %173
+%gl_FragCoord_param = OpFunctionParameter %v4float
%177 = OpLabel
- %178 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %178
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %178 = OpFunctionCall %void %main_1
+ %179 = OpLoad %v4float %x_GLF_color
+ %180 = OpCompositeConstruct %main_out %179
+ OpReturnValue %180
OpFunctionEnd
%main = OpFunction %void None %15
- %180 = OpLabel
- %181 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %181
- %182 = OpFunctionCall %void %main_1
- %184 = OpLoad %v4float %x_GLF_color
- %185 = OpCompositeConstruct %main_out %184
- %183 = OpFunctionCall %void %tint_symbol_3 %185
+ %182 = OpLabel
+ %184 = OpLoad %v4float %gl_FragCoord_param_1
+ %183 = OpFunctionCall %main_out %main_inner %184
+ %185 = OpCompositeExtract %v4float %183 0
+ OpStore %x_GLF_color_1_1 %185
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.wgsl.expected.spvasm
index 4ef0500..f0b1639 100644
--- a/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/spv-stable-rects-Os-mutate-var-push-through-var/2.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_81 "x_81"
OpName %x_82 "x_82"
@@ -31,33 +31,33 @@
OpName %x_104 "x_104"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -131,7 +131,7 @@
%int_16 = OpConstant %int 16
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %173 = OpTypeFunction %void %main_out
+ %173 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%x_81 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
@@ -139,14 +139,14 @@
%x_83 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_84 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %27
%x_85 = OpVariable %_ptr_Function__arr_v4float_uint_16 Function %35
- %x_95 = OpVariable %_ptr_Function_v4float Function %5
- %x_95_phi = OpVariable %_ptr_Function_v4float Function %5
+ %x_95 = OpVariable %_ptr_Function_v4float Function %7
+ %x_95_phi = OpVariable %_ptr_Function_v4float Function %7
%x_98_phi = OpVariable %_ptr_Function_int Function %42
- %x_142 = OpVariable %_ptr_Function_v4float Function %5
+ %x_142 = OpVariable %_ptr_Function_v4float Function %7
%x_99 = OpVariable %_ptr_Function_int Function %42
%x_127_phi = OpVariable %_ptr_Function_bool Function %87
- %x_96_phi = OpVariable %_ptr_Function_v4float Function %5
- %x_104 = OpVariable %_ptr_Function_v4float Function %5
+ %x_96_phi = OpVariable %_ptr_Function_v4float Function %7
+ %x_104 = OpVariable %_ptr_Function_v4float Function %7
OpStore %x_81 %24
OpStore %x_81 %59
%60 = OpLoad %_arr_v4float_uint_8 %x_81
@@ -268,20 +268,20 @@
OpStore %x_GLF_color %172
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %173
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %173
+%gl_FragCoord_param = OpFunctionParameter %v4float
%177 = OpLabel
- %178 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %178
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %178 = OpFunctionCall %void %main_1
+ %179 = OpLoad %v4float %x_GLF_color
+ %180 = OpCompositeConstruct %main_out %179
+ OpReturnValue %180
OpFunctionEnd
%main = OpFunction %void None %15
- %180 = OpLabel
- %181 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %181
- %182 = OpFunctionCall %void %main_1
- %184 = OpLoad %v4float %x_GLF_color
- %185 = OpCompositeConstruct %main_out %184
- %183 = OpFunctionCall %void %tint_symbol_3 %185
+ %182 = OpLabel
+ %184 = OpLoad %v4float %gl_FragCoord_param_1
+ %183 = OpFunctionCall %main_out %main_inner %184
+ %185 = OpCompositeExtract %v4float %183 0
+ OpStore %x_GLF_color_1_1 %185
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.spvasm.expected.spvasm
index 9ea3312..2b27a7a 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 619
+; Bound: 618
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -89,10 +89,9 @@
OpName %x_396_phi "x_396_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -100,11 +99,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -156,7 +155,7 @@
%605 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%606 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %607 = OpTypeFunction %void %main_out
+ %607 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %19
@@ -1149,18 +1148,17 @@
%600 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %607
-%tint_symbol = OpFunctionParameter %main_out
- %611 = OpLabel
- %612 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %612
- OpReturn
+ %main_inner = OpFunction %main_out None %607
+ %610 = OpLabel
+ %611 = OpFunctionCall %void %main_1
+ %612 = OpLoad %v4float %x_GLF_color
+ %613 = OpCompositeConstruct %main_out %612
+ OpReturnValue %613
OpFunctionEnd
%main = OpFunction %void None %8
- %614 = OpLabel
- %615 = OpFunctionCall %void %main_1
- %617 = OpLoad %v4float %x_GLF_color
- %618 = OpCompositeConstruct %main_out %617
- %616 = OpFunctionCall %void %tint_symbol_2 %618
+ %615 = OpLabel
+ %616 = OpFunctionCall %main_out %main_inner
+ %617 = OpCompositeExtract %v4float %616 0
+ OpStore %x_GLF_color_1_1 %617
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.wgsl.expected.spvasm
index 9ea3312..2b27a7a 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 619
+; Bound: 618
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -89,10 +89,9 @@
OpName %x_396_phi "x_396_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -100,11 +99,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -156,7 +155,7 @@
%605 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%606 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %607 = OpTypeFunction %void %main_out
+ %607 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %19
@@ -1149,18 +1148,17 @@
%600 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %607
-%tint_symbol = OpFunctionParameter %main_out
- %611 = OpLabel
- %612 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %612
- OpReturn
+ %main_inner = OpFunction %main_out None %607
+ %610 = OpLabel
+ %611 = OpFunctionCall %void %main_1
+ %612 = OpLoad %v4float %x_GLF_color
+ %613 = OpCompositeConstruct %main_out %612
+ OpReturnValue %613
OpFunctionEnd
%main = OpFunction %void None %8
- %614 = OpLabel
- %615 = OpFunctionCall %void %main_1
- %617 = OpLoad %v4float %x_GLF_color
- %618 = OpCompositeConstruct %main_out %617
- %616 = OpFunctionCall %void %tint_symbol_2 %618
+ %615 = OpLabel
+ %616 = OpFunctionCall %main_out %main_inner
+ %617 = OpCompositeExtract %v4float %616 0
+ OpStore %x_GLF_color_1_1 %617
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.spvasm.expected.spvasm
index 41d75a5..15d09a8 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -152,35 +152,35 @@
OpName %x_612_phi "x_612_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -234,7 +234,7 @@
%991 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%992 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %993 = OpTypeFunction %void %main_out
+ %993 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %26
@@ -1901,20 +1901,20 @@
%987 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %993
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %993
+%gl_FragCoord_param = OpFunctionParameter %v4float
%997 = OpLabel
- %998 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %998
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %998 = OpFunctionCall %void %main_1
+ %999 = OpLoad %v4float %x_GLF_color
+ %1000 = OpCompositeConstruct %main_out %999
+ OpReturnValue %1000
OpFunctionEnd
%main = OpFunction %void None %15
- %1000 = OpLabel
- %1001 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %1001
- %1002 = OpFunctionCall %void %main_1
- %1004 = OpLoad %v4float %x_GLF_color
- %1005 = OpCompositeConstruct %main_out %1004
- %1003 = OpFunctionCall %void %tint_symbol_3 %1005
+ %1002 = OpLabel
+ %1004 = OpLoad %v4float %gl_FragCoord_param_1
+ %1003 = OpFunctionCall %main_out %main_inner %1004
+ %1005 = OpCompositeExtract %v4float %1003 0
+ OpStore %x_GLF_color_1_1 %1005
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.wgsl.expected.spvasm
index 41d75a5..15d09a8 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-false-if-discard-loop/1.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
@@ -152,35 +152,35 @@
OpName %x_612_phi "x_612_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -234,7 +234,7 @@
%991 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%992 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %993 = OpTypeFunction %void %main_out
+ %993 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function %26
@@ -1901,20 +1901,20 @@
%987 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %993
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %993
+%gl_FragCoord_param = OpFunctionParameter %v4float
%997 = OpLabel
- %998 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %998
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %998 = OpFunctionCall %void %main_1
+ %999 = OpLoad %v4float %x_GLF_color
+ %1000 = OpCompositeConstruct %main_out %999
+ OpReturnValue %1000
OpFunctionEnd
%main = OpFunction %void None %15
- %1000 = OpLabel
- %1001 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %1001
- %1002 = OpFunctionCall %void %main_1
- %1004 = OpLoad %v4float %x_GLF_color
- %1005 = OpCompositeConstruct %main_out %1004
- %1003 = OpFunctionCall %void %tint_symbol_3 %1005
+ %1002 = OpLabel
+ %1004 = OpLoad %v4float %gl_FragCoord_param_1
+ %1003 = OpFunctionCall %main_out %main_inner %1004
+ %1005 = OpCompositeExtract %v4float %1003 0
+ OpStore %x_GLF_color_1_1 %1005
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.spvasm.expected.spvasm
index 3d85c3b..f512823 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.spvasm.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 316
+; Bound: 315
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
OpMemberName %BST 2 "rightIndex"
OpName %tree_1 "tree_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -58,30 +58,29 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -116,7 +115,7 @@
%302 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%303 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %304 = OpTypeFunction %void %main_out
+ %304 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %16
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -459,18 +458,17 @@
%297 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %304
-%tint_symbol = OpFunctionParameter %main_out
- %308 = OpLabel
- %309 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %309
- OpReturn
+ %main_inner = OpFunction %main_out None %304
+ %307 = OpLabel
+ %308 = OpFunctionCall %void %main_1
+ %309 = OpLoad %v4float %x_GLF_color
+ %310 = OpCompositeConstruct %main_out %309
+ OpReturnValue %310
OpFunctionEnd
%main = OpFunction %void None %163
- %311 = OpLabel
- %312 = OpFunctionCall %void %main_1
- %314 = OpLoad %v4float %x_GLF_color
- %315 = OpCompositeConstruct %main_out %314
- %313 = OpFunctionCall %void %tint_symbol_2 %315
+ %312 = OpLabel
+ %313 = OpFunctionCall %main_out %main_inner
+ %314 = OpCompositeExtract %v4float %313 0
+ OpStore %x_GLF_color_1_1 %314
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.wgsl.expected.spvasm
index 3d85c3b..f512823 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/0.wgsl.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 316
+; Bound: 315
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
OpMemberName %BST 2 "rightIndex"
OpName %tree_1 "tree_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -58,30 +58,29 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -116,7 +115,7 @@
%302 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%303 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %304 = OpTypeFunction %void %main_out
+ %304 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %16
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -459,18 +458,17 @@
%297 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %304
-%tint_symbol = OpFunctionParameter %main_out
- %308 = OpLabel
- %309 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %309
- OpReturn
+ %main_inner = OpFunction %main_out None %304
+ %307 = OpLabel
+ %308 = OpFunctionCall %void %main_1
+ %309 = OpLoad %v4float %x_GLF_color
+ %310 = OpCompositeConstruct %main_out %309
+ OpReturnValue %310
OpFunctionEnd
%main = OpFunction %void None %163
- %311 = OpLabel
- %312 = OpFunctionCall %void %main_1
- %314 = OpLoad %v4float %x_GLF_color
- %315 = OpCompositeConstruct %main_out %314
- %313 = OpFunctionCall %void %tint_symbol_2 %315
+ %312 = OpLabel
+ %313 = OpFunctionCall %main_out %main_inner
+ %314 = OpCompositeExtract %v4float %313 0
+ OpStore %x_GLF_color_1_1 %314
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.spvasm.expected.spvasm
index b62cb2f..1173db6 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -14,8 +16,6 @@
OpName %tree_1 "tree_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -62,34 +62,34 @@
OpName %x_156_phi "x_156_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -127,7 +127,7 @@
%318 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%319 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %320 = OpTypeFunction %void %main_out
+ %320 = OpTypeFunction %main_out %v4float
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %19
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -486,20 +486,20 @@
%314 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %320
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %320
+%gl_FragCoord_param = OpFunctionParameter %v4float
%324 = OpLabel
- %325 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %325
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %325 = OpFunctionCall %void %main_1
+ %326 = OpLoad %v4float %x_GLF_color
+ %327 = OpCompositeConstruct %main_out %326
+ OpReturnValue %327
OpFunctionEnd
%main = OpFunction %void None %166
- %327 = OpLabel
- %328 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %328
- %329 = OpFunctionCall %void %main_1
- %331 = OpLoad %v4float %x_GLF_color
- %332 = OpCompositeConstruct %main_out %331
- %330 = OpFunctionCall %void %tint_symbol_3 %332
+ %329 = OpLabel
+ %331 = OpLoad %v4float %gl_FragCoord_param_1
+ %330 = OpFunctionCall %main_out %main_inner %331
+ %332 = OpCompositeExtract %v4float %330 0
+ OpStore %x_GLF_color_1_1 %332
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.wgsl.expected.spvasm
index b62cb2f..1173db6 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fragcoord-less-than-zero/1.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -14,8 +16,6 @@
OpName %tree_1 "tree_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -62,34 +62,34 @@
OpName %x_156_phi "x_156_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -127,7 +127,7 @@
%318 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%319 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %320 = OpTypeFunction %void %main_out
+ %320 = OpTypeFunction %main_out %v4float
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %19
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -486,20 +486,20 @@
%314 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %320
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %320
+%gl_FragCoord_param = OpFunctionParameter %v4float
%324 = OpLabel
- %325 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %325
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %325 = OpFunctionCall %void %main_1
+ %326 = OpLoad %v4float %x_GLF_color
+ %327 = OpCompositeConstruct %main_out %326
+ OpReturnValue %327
OpFunctionEnd
%main = OpFunction %void None %166
- %327 = OpLabel
- %328 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %328
- %329 = OpFunctionCall %void %main_1
- %331 = OpLoad %v4float %x_GLF_color
- %332 = OpCompositeConstruct %main_out %331
- %330 = OpFunctionCall %void %tint_symbol_3 %332
+ %329 = OpLabel
+ %331 = OpLoad %v4float %gl_FragCoord_param_1
+ %330 = OpFunctionCall %main_out %main_inner %331
+ %332 = OpCompositeExtract %v4float %330 0
+ OpStore %x_GLF_color_1_1 %332
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.spvasm.expected.spvasm
index 990bb9a..25d57df 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 355
+; Bound: 354
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -16,7 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -62,9 +62,9 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -74,27 +74,26 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_16 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -130,7 +129,7 @@
%341 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%342 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %343 = OpTypeFunction %void %main_out
+ %343 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %20
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -522,18 +521,17 @@
%336 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %343
-%tint_symbol = OpFunctionParameter %main_out
- %347 = OpLabel
- %348 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %348
- OpReturn
+ %main_inner = OpFunction %main_out None %343
+ %346 = OpLabel
+ %347 = OpFunctionCall %void %main_1
+ %348 = OpLoad %v4float %x_GLF_color
+ %349 = OpCompositeConstruct %main_out %348
+ OpReturnValue %349
OpFunctionEnd
%main = OpFunction %void None %202
- %350 = OpLabel
- %351 = OpFunctionCall %void %main_1
- %353 = OpLoad %v4float %x_GLF_color
- %354 = OpCompositeConstruct %main_out %353
- %352 = OpFunctionCall %void %tint_symbol_2 %354
+ %351 = OpLabel
+ %352 = OpFunctionCall %main_out %main_inner
+ %353 = OpCompositeExtract %v4float %352 0
+ OpStore %x_GLF_color_1_1 %353
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.wgsl.expected.spvasm
index 990bb9a..25d57df 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-nested-if-and-conditional/1.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 355
+; Bound: 354
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -16,7 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -62,9 +62,9 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -74,27 +74,26 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_16 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -130,7 +129,7 @@
%341 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%342 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %343 = OpTypeFunction %void %main_out
+ %343 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %20
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -522,18 +521,17 @@
%336 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %343
-%tint_symbol = OpFunctionParameter %main_out
- %347 = OpLabel
- %348 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %348
- OpReturn
+ %main_inner = OpFunction %main_out None %343
+ %346 = OpLabel
+ %347 = OpFunctionCall %void %main_1
+ %348 = OpLoad %v4float %x_GLF_color
+ %349 = OpCompositeConstruct %main_out %348
+ OpReturnValue %349
OpFunctionEnd
%main = OpFunction %void None %202
- %350 = OpLabel
- %351 = OpFunctionCall %void %main_1
- %353 = OpLoad %v4float %x_GLF_color
- %354 = OpCompositeConstruct %main_out %353
- %352 = OpFunctionCall %void %tint_symbol_2 %354
+ %351 = OpLabel
+ %352 = OpFunctionCall %main_out %main_inner
+ %353 = OpCompositeExtract %v4float %352 0
+ OpStore %x_GLF_color_1_1 %353
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.spvasm.expected.spvasm
index 68b226d..0f01d3e 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.spvasm.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 316
+; Bound: 315
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
OpMemberName %BST 2 "rightIndex"
OpName %tree "tree"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %node "node"
OpName %data "data"
@@ -58,30 +58,29 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -116,7 +115,7 @@
%302 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%303 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %304 = OpTypeFunction %void %main_out
+ %304 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %16
%node = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -459,18 +458,17 @@
%297 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %304
-%tint_symbol = OpFunctionParameter %main_out
- %308 = OpLabel
- %309 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %309
- OpReturn
+ %main_inner = OpFunction %main_out None %304
+ %307 = OpLabel
+ %308 = OpFunctionCall %void %main_1
+ %309 = OpLoad %v4float %x_GLF_color
+ %310 = OpCompositeConstruct %main_out %309
+ OpReturnValue %310
OpFunctionEnd
%main = OpFunction %void None %163
- %311 = OpLabel
- %312 = OpFunctionCall %void %main_1
- %314 = OpLoad %v4float %x_GLF_color
- %315 = OpCompositeConstruct %main_out %314
- %313 = OpFunctionCall %void %tint_symbol_2 %315
+ %312 = OpLabel
+ %313 = OpFunctionCall %main_out %main_inner
+ %314 = OpCompositeExtract %v4float %313 0
+ OpStore %x_GLF_color_1_1 %314
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.wgsl.expected.spvasm
index 68b226d..0f01d3e 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/0-opt.wgsl.expected.spvasm
@@ -1,19 +1,19 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 316
+; Bound: 315
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
OpMemberName %BST 2 "rightIndex"
OpName %tree "tree"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %node "node"
OpName %data "data"
@@ -58,30 +58,29 @@
OpName %param_24 "param_24"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
OpDecorate %_arr_BST_uint_10 ArrayStride 12
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %13 = OpConstantNull %_arr_BST_uint_10
+ %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -116,7 +115,7 @@
%302 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%303 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %304 = OpTypeFunction %void %main_out
+ %304 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %16
%node = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -459,18 +458,17 @@
%297 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %304
-%tint_symbol = OpFunctionParameter %main_out
- %308 = OpLabel
- %309 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %309
- OpReturn
+ %main_inner = OpFunction %main_out None %304
+ %307 = OpLabel
+ %308 = OpFunctionCall %void %main_1
+ %309 = OpLoad %v4float %x_GLF_color
+ %310 = OpCompositeConstruct %main_out %309
+ OpReturnValue %310
OpFunctionEnd
%main = OpFunction %void None %163
- %311 = OpLabel
- %312 = OpFunctionCall %void %main_1
- %314 = OpLoad %v4float %x_GLF_color
- %315 = OpCompositeConstruct %main_out %314
- %313 = OpFunctionCall %void %tint_symbol_2 %315
+ %312 = OpLabel
+ %313 = OpFunctionCall %main_out %main_inner
+ %314 = OpCompositeExtract %v4float %313 0
+ OpStore %x_GLF_color_1_1 %314
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.spvasm.expected.spvasm
index 885a0ba..b8f0ad9 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 371
+; Bound: 370
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -19,7 +20,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_50 "x_50"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %node "node"
OpName %data "data"
@@ -70,9 +70,9 @@
OpName %param_25 "param_25"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %BST 0 Offset 0
@@ -84,32 +84,31 @@
OpDecorate %x_50 NonWritable
OpDecorate %x_50 DescriptorSet 0
OpDecorate %x_50 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
+ %13 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %13
%BST = OpTypeStruct %int %int %int
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %13 = OpConstantNull %_arr_BST_uint_10
- %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
- %float = OpTypeFloat 32
+ %18 = OpConstantNull %_arr_BST_uint_10
+ %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %18
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_50 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %22 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %22
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %22
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -146,7 +145,7 @@
%357 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%358 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %359 = OpTypeFunction %void %main_out
+ %359 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %25
%node = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -555,18 +554,17 @@
%352 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %359
-%tint_symbol = OpFunctionParameter %main_out
- %363 = OpLabel
- %364 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %364
- OpReturn
+ %main_inner = OpFunction %main_out None %359
+ %362 = OpLabel
+ %363 = OpFunctionCall %void %main_1
+ %364 = OpLoad %v4float %x_GLF_color
+ %365 = OpCompositeConstruct %main_out %364
+ OpReturnValue %365
OpFunctionEnd
%main = OpFunction %void None %183
- %366 = OpLabel
- %367 = OpFunctionCall %void %main_1
- %369 = OpLoad %v4float %x_GLF_color
- %370 = OpCompositeConstruct %main_out %369
- %368 = OpFunctionCall %void %tint_symbol_2 %370
+ %367 = OpLabel
+ %368 = OpFunctionCall %main_out %main_inner
+ %369 = OpCompositeExtract %v4float %368 0
+ OpStore %x_GLF_color_1_1 %369
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.wgsl.expected.spvasm
index 885a0ba..b8f0ad9 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-with-loop-read-write-global/1.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 371
+; Bound: 370
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -19,7 +20,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_50 "x_50"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %node "node"
OpName %data "data"
@@ -70,9 +70,9 @@
OpName %param_25 "param_25"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %BST 0 Offset 0
@@ -84,32 +84,31 @@
OpDecorate %x_50 NonWritable
OpDecorate %x_50 DescriptorSet 0
OpDecorate %x_50 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
+ %13 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %13
%BST = OpTypeStruct %int %int %int
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %13 = OpConstantNull %_arr_BST_uint_10
- %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %13
- %float = OpTypeFloat 32
+ %18 = OpConstantNull %_arr_BST_uint_10
+ %tree = OpVariable %_ptr_Private__arr_BST_uint_10 Private %18
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_50 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %22 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %22
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %22
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -146,7 +145,7 @@
%357 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%358 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %359 = OpTypeFunction %void %main_out
+ %359 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %25
%node = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -555,18 +554,17 @@
%352 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %359
-%tint_symbol = OpFunctionParameter %main_out
- %363 = OpLabel
- %364 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %364
- OpReturn
+ %main_inner = OpFunction %main_out None %359
+ %362 = OpLabel
+ %363 = OpFunctionCall %void %main_1
+ %364 = OpLoad %v4float %x_GLF_color
+ %365 = OpCompositeConstruct %main_out %364
+ OpReturnValue %365
OpFunctionEnd
%main = OpFunction %void None %183
- %366 = OpLabel
- %367 = OpFunctionCall %void %main_1
- %369 = OpLoad %v4float %x_GLF_color
- %370 = OpCompositeConstruct %main_out %369
- %368 = OpFunctionCall %void %tint_symbol_2 %370
+ %367 = OpLabel
+ %368 = OpFunctionCall %main_out %main_inner
+ %369 = OpCompositeExtract %v4float %368 0
+ OpStore %x_GLF_color_1_1 %369
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.spvasm.expected.spvasm
index d892d09..4742393 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%83 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collatz_i1_ "collatz_i1_"
OpName %v "v"
OpName %count "count"
@@ -25,32 +25,32 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
@@ -97,7 +97,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %124 = OpTypeFunction %void %main_out
+ %124 = OpTypeFunction %main_out %v4float
%collatz_i1_ = OpFunction %int None %15
%v = OpFunctionParameter %_ptr_Function_int
%20 = OpLabel
@@ -181,20 +181,20 @@
OpStore %x_GLF_color %123
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %124
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %124
+%gl_FragCoord_param = OpFunctionParameter %v4float
%128 = OpLabel
- %129 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %129
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %129 = OpFunctionCall %void %main_1
+ %130 = OpLoad %v4float %x_GLF_color
+ %131 = OpCompositeConstruct %main_out %130
+ OpReturnValue %131
OpFunctionEnd
%main = OpFunction %void None %57
- %131 = OpLabel
- %132 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %132
- %133 = OpFunctionCall %void %main_1
- %135 = OpLoad %v4float %x_GLF_color
- %136 = OpCompositeConstruct %main_out %135
- %134 = OpFunctionCall %void %tint_symbol_3 %136
+ %133 = OpLabel
+ %135 = OpLoad %v4float %gl_FragCoord_param_1
+ %134 = OpFunctionCall %main_out %main_inner %135
+ %136 = OpCompositeExtract %v4float %134 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.wgsl.expected.spvasm
index d892d09..4742393 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-collatz-push-constant-with-nested-min-max/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%83 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collatz_i1_ "collatz_i1_"
OpName %v "v"
OpName %count "count"
@@ -25,32 +25,32 @@
OpName %indexable "indexable"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpTypeFunction %int %_ptr_Function_int
@@ -97,7 +97,7 @@
%int_16 = OpConstant %int 16
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %124 = OpTypeFunction %void %main_out
+ %124 = OpTypeFunction %main_out %v4float
%collatz_i1_ = OpFunction %int None %15
%v = OpFunctionParameter %_ptr_Function_int
%20 = OpLabel
@@ -181,20 +181,20 @@
OpStore %x_GLF_color %123
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %124
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %124
+%gl_FragCoord_param = OpFunctionParameter %v4float
%128 = OpLabel
- %129 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %129
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %129 = OpFunctionCall %void %main_1
+ %130 = OpLoad %v4float %x_GLF_color
+ %131 = OpCompositeConstruct %main_out %130
+ OpReturnValue %131
OpFunctionEnd
%main = OpFunction %void None %57
- %131 = OpLabel
- %132 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %132
- %133 = OpFunctionCall %void %main_1
- %135 = OpLoad %v4float %x_GLF_color
- %136 = OpCompositeConstruct %main_out %135
- %134 = OpFunctionCall %void %tint_symbol_3 %136
+ %133 = OpLabel
+ %135 = OpLoad %v4float %gl_FragCoord_param_1
+ %134 = OpFunctionCall %main_out %main_inner %135
+ %136 = OpCompositeExtract %v4float %134 0
+ OpStore %x_GLF_color_1_1 %136
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.spvasm.expected.spvasm
index e4c4488..f86cae1 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_6 "x_6"
@@ -16,8 +18,6 @@
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_54 "x_54"
@@ -58,9 +58,11 @@
OpName %x_147 "x_147"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -71,10 +73,14 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -82,15 +88,9 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -129,7 +129,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %275 = OpTypeFunction %void %main_out
+ %275 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %25
@@ -481,20 +481,20 @@
OpStore %x_GLF_color %274
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %275
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %275
+%gl_FragCoord_param = OpFunctionParameter %v4float
%279 = OpLabel
- %280 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %280
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %280 = OpFunctionCall %void %main_1
+ %281 = OpLoad %v4float %x_GLF_color
+ %282 = OpCompositeConstruct %main_out %281
+ OpReturnValue %282
OpFunctionEnd
%main = OpFunction %void None %18
- %282 = OpLabel
- %283 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %283
- %284 = OpFunctionCall %void %main_1
- %286 = OpLoad %v4float %x_GLF_color
- %287 = OpCompositeConstruct %main_out %286
- %285 = OpFunctionCall %void %tint_symbol_3 %287
+ %284 = OpLabel
+ %286 = OpLoad %v4float %gl_FragCoord_param_1
+ %285 = OpFunctionCall %main_out %main_inner %286
+ %287 = OpCompositeExtract %v4float %285 0
+ OpStore %x_GLF_color_1_1 %287
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.wgsl.expected.spvasm
index a037b9b..be70146 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-double-always-false-discard/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_6 "x_6"
@@ -16,8 +18,6 @@
OpName %x_9 "x_9"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %c "c"
OpName %x_54 "x_54"
@@ -58,9 +58,11 @@
OpName %x_147 "x_147"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_6 NonWritable
@@ -71,10 +73,14 @@
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -82,15 +88,9 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %12
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %12
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%18 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -129,7 +129,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %265 = OpTypeFunction %void %main_out
+ %265 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %18
%21 = OpLabel
%c = OpVariable %_ptr_Function_v3float Function %25
@@ -471,20 +471,20 @@
OpStore %x_GLF_color %264
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %265
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %265
+%gl_FragCoord_param = OpFunctionParameter %v4float
%269 = OpLabel
- %270 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %270
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %270 = OpFunctionCall %void %main_1
+ %271 = OpLoad %v4float %x_GLF_color
+ %272 = OpCompositeConstruct %main_out %271
+ OpReturnValue %272
OpFunctionEnd
%main = OpFunction %void None %18
- %272 = OpLabel
- %273 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %273
- %274 = OpFunctionCall %void %main_1
- %276 = OpLoad %v4float %x_GLF_color
- %277 = OpCompositeConstruct %main_out %276
- %275 = OpFunctionCall %void %tint_symbol_3 %277
+ %274 = OpLabel
+ %276 = OpLoad %v4float %gl_FragCoord_param_1
+ %275 = OpFunctionCall %main_out %main_inner %276
+ %277 = OpCompositeExtract %v4float %275 0
+ OpStore %x_GLF_color_1_1 %277
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.spvasm.expected.spvasm
index f7d8cfd..d9bbe00 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -30,31 +30,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -88,7 +88,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %164 = OpTypeFunction %void %main_out
+ %164 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -252,20 +252,20 @@
OpStore %x_GLF_color %163
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %164
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %164
+%gl_FragCoord_param = OpFunctionParameter %v4float
%168 = OpLabel
- %169 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %169
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %169 = OpFunctionCall %void %main_1
+ %170 = OpLoad %v4float %x_GLF_color
+ %171 = OpCompositeConstruct %main_out %170
+ OpReturnValue %171
OpFunctionEnd
%main = OpFunction %void None %81
- %171 = OpLabel
- %172 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %172
- %173 = OpFunctionCall %void %main_1
- %175 = OpLoad %v4float %x_GLF_color
- %176 = OpCompositeConstruct %main_out %175
- %174 = OpFunctionCall %void %tint_symbol_3 %176
+ %173 = OpLabel
+ %175 = OpLoad %v4float %gl_FragCoord_param_1
+ %174 = OpFunctionCall %main_out %main_inner %175
+ %176 = OpCompositeExtract %v4float %174 0
+ OpStore %x_GLF_color_1_1 %176
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.wgsl.expected.spvasm
index dfc561e..c64868a 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-float-mat-determinant-clamp/0.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -30,31 +30,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -88,7 +88,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %159 = OpTypeFunction %void %main_out
+ %159 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -247,20 +247,20 @@
OpStore %x_GLF_color %158
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %159
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %159
+%gl_FragCoord_param = OpFunctionParameter %v4float
%163 = OpLabel
- %164 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %164
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %164 = OpFunctionCall %void %main_1
+ %165 = OpLoad %v4float %x_GLF_color
+ %166 = OpCompositeConstruct %main_out %165
+ OpReturnValue %166
OpFunctionEnd
%main = OpFunction %void None %76
- %166 = OpLabel
- %167 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %167
- %168 = OpFunctionCall %void %main_1
- %170 = OpLoad %v4float %x_GLF_color
- %171 = OpCompositeConstruct %main_out %170
- %169 = OpFunctionCall %void %tint_symbol_3 %171
+ %168 = OpLabel
+ %170 = OpLoad %v4float %gl_FragCoord_param_1
+ %169 = OpFunctionCall %main_out %main_inner %170
+ %171 = OpCompositeExtract %v4float %169 0
+ OpStore %x_GLF_color_1_1 %171
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.spvasm.expected.spvasm
index b1caf46..21e010e 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_20 "x_20"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -34,9 +34,11 @@
OpName %x_58 "x_58"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
@@ -47,26 +49,24 @@
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_20 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -100,7 +100,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %178 = OpTypeFunction %void %main_out
+ %178 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -281,20 +281,20 @@
OpStore %x_GLF_color %177
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %178
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %178
+%gl_FragCoord_param = OpFunctionParameter %v4float
%182 = OpLabel
- %183 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %183
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %183 = OpFunctionCall %void %main_1
+ %184 = OpLoad %v4float %x_GLF_color
+ %185 = OpCompositeConstruct %main_out %184
+ OpReturnValue %185
OpFunctionEnd
%main = OpFunction %void None %84
- %185 = OpLabel
- %186 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %186
- %187 = OpFunctionCall %void %main_1
- %189 = OpLoad %v4float %x_GLF_color
- %190 = OpCompositeConstruct %main_out %189
- %188 = OpFunctionCall %void %tint_symbol_3 %190
+ %187 = OpLabel
+ %189 = OpLoad %v4float %gl_FragCoord_param_1
+ %188 = OpFunctionCall %main_out %main_inner %189
+ %190 = OpCompositeExtract %v4float %188 0
+ OpStore %x_GLF_color_1_1 %190
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.wgsl.expected.spvasm
index 8fe03c2..b918afc 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-injected-conditional-true/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
@@ -16,8 +18,6 @@
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_20 "x_20"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -34,9 +34,11 @@
OpName %x_58 "x_58"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
@@ -47,26 +49,24 @@
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_20 = OpVariable %_ptr_Uniform_buf1 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -100,7 +100,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %173 = OpTypeFunction %void %main_out
+ %173 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -276,20 +276,20 @@
OpStore %x_GLF_color %172
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %173
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %173
+%gl_FragCoord_param = OpFunctionParameter %v4float
%177 = OpLabel
- %178 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %178
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %178 = OpFunctionCall %void %main_1
+ %179 = OpLoad %v4float %x_GLF_color
+ %180 = OpCompositeConstruct %main_out %179
+ OpReturnValue %180
OpFunctionEnd
%main = OpFunction %void None %79
- %180 = OpLabel
- %181 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %181
- %182 = OpFunctionCall %void %main_1
- %184 = OpLoad %v4float %x_GLF_color
- %185 = OpCompositeConstruct %main_out %184
- %183 = OpFunctionCall %void %tint_symbol_3 %185
+ %182 = OpLabel
+ %184 = OpLoad %v4float %gl_FragCoord_param_1
+ %183 = OpFunctionCall %main_out %main_inner %184
+ %185 = OpCompositeExtract %v4float %183 0
+ OpStore %x_GLF_color_1_1 %185
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.spvasm.expected.spvasm
index a7cfea1..7a51a84 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -38,31 +38,31 @@
OpName %x_69 "x_69"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -97,7 +97,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %172 = OpTypeFunction %void %main_out
+ %172 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -277,20 +277,20 @@
OpStore %x_GLF_color %171
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %172
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %172
+%gl_FragCoord_param = OpFunctionParameter %v4float
%176 = OpLabel
- %177 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %177
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %177 = OpFunctionCall %void %main_1
+ %178 = OpLoad %v4float %x_GLF_color
+ %179 = OpCompositeConstruct %main_out %178
+ OpReturnValue %179
OpFunctionEnd
%main = OpFunction %void None %94
- %179 = OpLabel
- %180 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %180
- %181 = OpFunctionCall %void %main_1
- %183 = OpLoad %v4float %x_GLF_color
- %184 = OpCompositeConstruct %main_out %183
- %182 = OpFunctionCall %void %tint_symbol_3 %184
+ %181 = OpLabel
+ %183 = OpLoad %v4float %gl_FragCoord_param_1
+ %182 = OpFunctionCall %main_out %main_inner %183
+ %184 = OpCompositeExtract %v4float %182 0
+ OpStore %x_GLF_color_1_1 %184
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.wgsl.expected.spvasm
index f1e2c9b..b82742a 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/0-opt.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%64 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -38,31 +38,31 @@
OpName %x_69 "x_69"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -97,7 +97,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %167 = OpTypeFunction %void %main_out
+ %167 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -272,20 +272,20 @@
OpStore %x_GLF_color %166
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %167
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %167
+%gl_FragCoord_param = OpFunctionParameter %v4float
%171 = OpLabel
- %172 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %172
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %172 = OpFunctionCall %void %main_1
+ %173 = OpLoad %v4float %x_GLF_color
+ %174 = OpCompositeConstruct %main_out %173
+ OpReturnValue %174
OpFunctionEnd
%main = OpFunction %void None %89
- %174 = OpLabel
- %175 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %175
- %176 = OpFunctionCall %void %main_1
- %178 = OpLoad %v4float %x_GLF_color
- %179 = OpCompositeConstruct %main_out %178
- %177 = OpFunctionCall %void %tint_symbol_3 %179
+ %176 = OpLabel
+ %178 = OpLoad %v4float %gl_FragCoord_param_1
+ %177 = OpFunctionCall %main_out %main_inner %178
+ %179 = OpCompositeExtract %v4float %177 0
+ OpStore %x_GLF_color_1_1 %179
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.spvasm.expected.spvasm
index cc78cd7..7219acd 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -42,9 +42,11 @@
OpName %x_75 "x_75"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -55,26 +57,24 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_16 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -109,7 +109,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %184 = OpTypeFunction %void %main_out
+ %184 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -302,20 +302,20 @@
OpStore %x_GLF_color %183
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %184
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %184
+%gl_FragCoord_param = OpFunctionParameter %v4float
%188 = OpLabel
- %189 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %189
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %189 = OpFunctionCall %void %main_1
+ %190 = OpLoad %v4float %x_GLF_color
+ %191 = OpCompositeConstruct %main_out %190
+ OpReturnValue %191
OpFunctionEnd
%main = OpFunction %void None %97
- %191 = OpLabel
- %192 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %192
- %193 = OpFunctionCall %void %main_1
- %195 = OpLoad %v4float %x_GLF_color
- %196 = OpCompositeConstruct %main_out %195
- %194 = OpFunctionCall %void %tint_symbol_3 %196
+ %193 = OpLabel
+ %195 = OpLoad %v4float %gl_FragCoord_param_1
+ %194 = OpFunctionCall %main_out %main_inner %195
+ %196 = OpCompositeExtract %v4float %194 0
+ OpStore %x_GLF_color_1_1 %196
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.wgsl.expected.spvasm
index a05688b..4152129 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-divided-1/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_10 "x_10"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_16 "x_16"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -42,9 +42,11 @@
OpName %x_75 "x_75"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -55,26 +57,24 @@
OpDecorate %x_16 NonWritable
OpDecorate %x_16 DescriptorSet 0
OpDecorate %x_16 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_16 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -109,7 +109,7 @@
%int_3 = OpConstant %int 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %179 = OpTypeFunction %void %main_out
+ %179 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -297,20 +297,20 @@
OpStore %x_GLF_color %178
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %179
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %179
+%gl_FragCoord_param = OpFunctionParameter %v4float
%183 = OpLabel
- %184 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %184
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %184 = OpFunctionCall %void %main_1
+ %185 = OpLoad %v4float %x_GLF_color
+ %186 = OpCompositeConstruct %main_out %185
+ OpReturnValue %186
OpFunctionEnd
%main = OpFunction %void None %92
- %186 = OpLabel
- %187 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %187
- %188 = OpFunctionCall %void %main_1
- %190 = OpLoad %v4float %x_GLF_color
- %191 = OpCompositeConstruct %main_out %190
- %189 = OpFunctionCall %void %tint_symbol_3 %191
+ %188 = OpLabel
+ %190 = OpLoad %v4float %gl_FragCoord_param_1
+ %189 = OpFunctionCall %main_out %main_inner %190
+ %191 = OpCompositeExtract %v4float %189 0
+ OpStore %x_GLF_color_1_1 %191
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.spvasm.expected.spvasm
index ddb9a0a..9f31452 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_19 "x_19"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -35,9 +35,11 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
@@ -48,26 +50,24 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_19 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -103,7 +103,7 @@
%float_1 = OpConstant %float 1
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %199 = OpTypeFunction %void %main_out
+ %199 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -317,20 +317,20 @@
OpStore %x_GLF_color %198
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %199
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %199
+%gl_FragCoord_param = OpFunctionParameter %v4float
%203 = OpLabel
- %204 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %204
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %204 = OpFunctionCall %void %main_1
+ %205 = OpLoad %v4float %x_GLF_color
+ %206 = OpCompositeConstruct %main_out %205
+ OpReturnValue %206
OpFunctionEnd
%main = OpFunction %void None %84
- %206 = OpLabel
- %207 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %207
- %208 = OpFunctionCall %void %main_1
- %210 = OpLoad %v4float %x_GLF_color
- %211 = OpCompositeConstruct %main_out %210
- %209 = OpFunctionCall %void %tint_symbol_3 %211
+ %208 = OpLabel
+ %210 = OpLoad %v4float %gl_FragCoord_param_1
+ %209 = OpFunctionCall %main_out %main_inner %210
+ %211 = OpCompositeExtract %v4float %209 0
+ OpStore %x_GLF_color_1_1 %211
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.wgsl.expected.spvasm
index 9faf394..f050722 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-true-conditional-simple-loop/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%59 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
@@ -16,8 +18,6 @@
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_19 "x_19"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -35,9 +35,11 @@
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
@@ -48,26 +50,24 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_19 = OpVariable %_ptr_Uniform_buf1 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%18 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%25 = OpConstantNull %float
@@ -103,7 +103,7 @@
%float_1 = OpConstant %float 1
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %194 = OpTypeFunction %void %main_out
+ %194 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %18
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -312,20 +312,20 @@
OpStore %x_GLF_color %193
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %194
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %194
+%gl_FragCoord_param = OpFunctionParameter %v4float
%198 = OpLabel
- %199 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %199
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %199 = OpFunctionCall %void %main_1
+ %200 = OpLoad %v4float %x_GLF_color
+ %201 = OpCompositeConstruct %main_out %200
+ OpReturnValue %201
OpFunctionEnd
%main = OpFunction %void None %79
- %201 = OpLabel
- %202 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %202
- %203 = OpFunctionCall %void %main_1
- %205 = OpLoad %v4float %x_GLF_color
- %206 = OpCompositeConstruct %main_out %205
- %204 = OpFunctionCall %void %tint_symbol_3 %206
+ %203 = OpLabel
+ %205 = OpLoad %v4float %gl_FragCoord_param_1
+ %204 = OpFunctionCall %main_out %main_inner %205
+ %206 = OpCompositeExtract %v4float %204 0
+ OpStore %x_GLF_color_1_1 %206
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.spvasm.expected.spvasm
index ab70f51..7900ede 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -30,31 +30,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -96,7 +96,7 @@
%140 = OpConstantComposite %mat3v3float %137 %138 %139
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %191 = OpTypeFunction %void %main_out
+ %191 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -282,20 +282,20 @@
OpStore %x_GLF_color %190
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %191
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %191
+%gl_FragCoord_param = OpFunctionParameter %v4float
%195 = OpLabel
- %196 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %196
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %196 = OpFunctionCall %void %main_1
+ %197 = OpLoad %v4float %x_GLF_color
+ %198 = OpCompositeConstruct %main_out %197
+ OpReturnValue %198
OpFunctionEnd
%main = OpFunction %void None %81
- %198 = OpLabel
- %199 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %199
- %200 = OpFunctionCall %void %main_1
- %202 = OpLoad %v4float %x_GLF_color
- %203 = OpCompositeConstruct %main_out %202
- %201 = OpFunctionCall %void %tint_symbol_3 %203
+ %200 = OpLabel
+ %202 = OpLoad %v4float %gl_FragCoord_param_1
+ %201 = OpFunctionCall %main_out %main_inner %202
+ %203 = OpCompositeExtract %v4float %201 0
+ OpStore %x_GLF_color_1_1 %203
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.wgsl.expected.spvasm
index b1061a2..03f2676 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-colorgrid-modulo-vec3-values-from-matrix/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%56 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_13 "x_13"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %compute_value_f1_f1_ "compute_value_f1_f1_"
OpName %limit "limit"
OpName %thirty_two "thirty_two"
@@ -30,31 +30,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_13 NonWritable
OpDecorate %x_13 DescriptorSet 0
OpDecorate %x_13 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_13 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_float = OpTypePointer Function %float
%15 = OpTypeFunction %float %_ptr_Function_float %_ptr_Function_float
%22 = OpConstantNull %float
@@ -96,7 +96,7 @@
%135 = OpConstantComposite %mat3v3float %132 %133 %134
%int_3 = OpConstant %int 3
%main_out = OpTypeStruct %v4float
- %186 = OpTypeFunction %void %main_out
+ %186 = OpTypeFunction %main_out %v4float
%compute_value_f1_f1_ = OpFunction %float None %15
%limit = OpFunctionParameter %_ptr_Function_float
%thirty_two = OpFunctionParameter %_ptr_Function_float
@@ -277,20 +277,20 @@
OpStore %x_GLF_color %185
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %186
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %186
+%gl_FragCoord_param = OpFunctionParameter %v4float
%190 = OpLabel
- %191 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %191
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %191 = OpFunctionCall %void %main_1
+ %192 = OpLoad %v4float %x_GLF_color
+ %193 = OpCompositeConstruct %main_out %192
+ OpReturnValue %193
OpFunctionEnd
%main = OpFunction %void None %76
- %193 = OpLabel
- %194 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %194
- %195 = OpFunctionCall %void %main_1
- %197 = OpLoad %v4float %x_GLF_color
- %198 = OpCompositeConstruct %main_out %197
- %196 = OpFunctionCall %void %tint_symbol_3 %198
+ %195 = OpLabel
+ %197 = OpLoad %v4float %gl_FragCoord_param_1
+ %196 = OpFunctionCall %main_out %main_inner %197
+ %198 = OpCompositeExtract %v4float %196 0
+ OpStore %x_GLF_color_1_1 %198
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.spvasm.expected.spvasm
index 238e1fc..b288e67 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%170 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %gl_FragCoord "gl_FragCoord"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_34 "x_34"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -50,40 +50,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %443 = OpTypeFunction %void %main_out
+ %443 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -675,20 +675,20 @@
OpStore %x_GLF_color %442
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %443
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %443
+%gl_FragCoord_param = OpFunctionParameter %v4float
%447 = OpLabel
- %448 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %448
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %448 = OpFunctionCall %void %main_1
+ %449 = OpLoad %v4float %x_GLF_color
+ %450 = OpCompositeConstruct %main_out %449
+ OpReturnValue %450
OpFunctionEnd
%main = OpFunction %void None %176
- %450 = OpLabel
- %451 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %451
- %452 = OpFunctionCall %void %main_1
- %454 = OpLoad %v4float %x_GLF_color
- %455 = OpCompositeConstruct %main_out %454
- %453 = OpFunctionCall %void %tint_symbol_3 %455
+ %452 = OpLabel
+ %454 = OpLoad %v4float %gl_FragCoord_param_1
+ %453 = OpFunctionCall %main_out %main_inner %454
+ %455 = OpCompositeExtract %v4float %453 0
+ OpStore %x_GLF_color_1_1 %455
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.wgsl.expected.spvasm
index 023eb51..a8c12dd 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-clamped-conditional-bit-shift/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%174 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %gl_FragCoord "gl_FragCoord"
@@ -15,8 +17,6 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_34 "x_34"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -50,40 +50,40 @@
OpName %grey "grey"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -130,7 +130,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %447 = OpTypeFunction %void %main_out
+ %447 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -685,20 +685,20 @@
OpStore %x_GLF_color %446
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %447
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %447
+%gl_FragCoord_param = OpFunctionParameter %v4float
%451 = OpLabel
- %452 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %452
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %452 = OpFunctionCall %void %main_1
+ %453 = OpLoad %v4float %x_GLF_color
+ %454 = OpCompositeConstruct %main_out %453
+ OpReturnValue %454
OpFunctionEnd
%main = OpFunction %void None %180
- %454 = OpLabel
- %455 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %455
- %456 = OpFunctionCall %void %main_1
- %458 = OpLoad %v4float %x_GLF_color
- %459 = OpCompositeConstruct %main_out %458
- %457 = OpFunctionCall %void %tint_symbol_3 %459
+ %456 = OpLabel
+ %458 = OpLoad %v4float %gl_FragCoord_param_1
+ %457 = OpFunctionCall %main_out %main_inner %458
+ %459 = OpCompositeExtract %v4float %457 0
+ OpStore %x_GLF_color_1_1 %459
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.spvasm.expected.spvasm
index 7c1fb07..6f744f7 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%132 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -69,32 +69,32 @@
OpName %x_257_1 "x_257_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -147,7 +147,7 @@
%int_32 = OpConstant %int 32
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %415 = OpTypeFunction %void %main_out
+ %415 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -718,20 +718,20 @@
OpStore %x_GLF_color %414
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %415
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %415
+%gl_FragCoord_param = OpFunctionParameter %v4float
%419 = OpLabel
- %420 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %420
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %420 = OpFunctionCall %void %main_1
+ %421 = OpLoad %v4float %x_GLF_color
+ %422 = OpCompositeConstruct %main_out %421
+ OpReturnValue %422
OpFunctionEnd
%main = OpFunction %void None %15
- %422 = OpLabel
- %423 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %423
- %424 = OpFunctionCall %void %main_1
- %426 = OpLoad %v4float %x_GLF_color
- %427 = OpCompositeConstruct %main_out %426
- %425 = OpFunctionCall %void %tint_symbol_3 %427
+ %424 = OpLabel
+ %426 = OpLoad %v4float %gl_FragCoord_param_1
+ %425 = OpFunctionCall %main_out %main_inner %426
+ %427 = OpCompositeExtract %v4float %425 0
+ OpStore %x_GLF_color_1_1 %427
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.wgsl.expected.spvasm
index 4752288..0c9763f 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-for-always-false-if-discard/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%132 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %temp "temp"
OpName %data "data"
@@ -69,32 +69,32 @@
OpName %x_257_1 "x_257_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -147,7 +147,7 @@
%int_32 = OpConstant %int 32
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %419 = OpTypeFunction %void %main_out
+ %419 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%temp = OpVariable %_ptr_Function__arr_int_uint_10 Function %25
@@ -728,20 +728,20 @@
OpStore %x_GLF_color %418
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %419
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %419
+%gl_FragCoord_param = OpFunctionParameter %v4float
%423 = OpLabel
- %424 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %424
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %424 = OpFunctionCall %void %main_1
+ %425 = OpLoad %v4float %x_GLF_color
+ %426 = OpCompositeConstruct %main_out %425
+ OpReturnValue %426
OpFunctionEnd
%main = OpFunction %void None %15
- %426 = OpLabel
- %427 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %427
- %428 = OpFunctionCall %void %main_1
- %430 = OpLoad %v4float %x_GLF_color
- %431 = OpCompositeConstruct %main_out %430
- %429 = OpFunctionCall %void %tint_symbol_3 %431
+ %428 = OpLabel
+ %430 = OpLoad %v4float %gl_FragCoord_param_1
+ %429 = OpFunctionCall %main_out %main_inner %430
+ %431 = OpCompositeExtract %v4float %429 0
+ OpStore %x_GLF_color_1_1 %431
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.spvasm.expected.spvasm
index 32f00d9..2021b39 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%173 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -43,40 +43,40 @@
OpName %int_i "int_i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -120,7 +120,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %409 = OpTypeFunction %void %main_out
+ %409 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -632,20 +632,20 @@
OpStore %x_GLF_color %408
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %409
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %409
+%gl_FragCoord_param = OpFunctionParameter %v4float
%413 = OpLabel
- %414 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %414
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %414 = OpFunctionCall %void %main_1
+ %415 = OpLoad %v4float %x_GLF_color
+ %416 = OpCompositeConstruct %main_out %415
+ OpReturnValue %416
OpFunctionEnd
%main = OpFunction %void None %128
- %416 = OpLabel
- %417 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %417
- %418 = OpFunctionCall %void %main_1
- %420 = OpLoad %v4float %x_GLF_color
- %421 = OpCompositeConstruct %main_out %420
- %419 = OpFunctionCall %void %tint_symbol_3 %421
+ %418 = OpLabel
+ %420 = OpLoad %v4float %gl_FragCoord_param_1
+ %419 = OpFunctionCall %main_out %main_inner %420
+ %421 = OpCompositeExtract %v4float %419 0
+ OpStore %x_GLF_color_1_1 %421
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.wgsl.expected.spvasm
index 3bf7abf..942a899 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-mergesort-reversed-for-loop/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%177 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %data "data"
OpName %temp "temp"
OpName %buf0 "buf0"
@@ -15,8 +17,6 @@
OpName %x_28 "x_28"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %merge_i1_i1_i1_ "merge_i1_i1_i1_"
OpName %from "from"
OpName %mid "mid"
@@ -43,40 +43,40 @@
OpName %int_i "int_i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_28 NonWritable
OpDecorate %x_28 DescriptorSet 0
OpDecorate %x_28 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%_ptr_Private__arr_int_uint_10 = OpTypePointer Private %_arr_int_uint_10
- %7 = OpConstantNull %_arr_int_uint_10
- %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %7
- %float = OpTypeFloat 32
+ %14 = OpConstantNull %_arr_int_uint_10
+ %data = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
+ %temp = OpVariable %_ptr_Private__arr_int_uint_10 Private %14
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_28 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int %_ptr_Function_int
@@ -120,7 +120,7 @@
%v3float = OpTypeVector %float 3
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %413 = OpTypeFunction %void %main_out
+ %413 = OpTypeFunction %main_out %v4float
%merge_i1_i1_i1_ = OpFunction %void None %23
%from = OpFunctionParameter %_ptr_Function_int
%mid = OpFunctionParameter %_ptr_Function_int
@@ -642,20 +642,20 @@
OpStore %x_GLF_color %412
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %413
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %413
+%gl_FragCoord_param = OpFunctionParameter %v4float
%417 = OpLabel
- %418 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %418
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %418 = OpFunctionCall %void %main_1
+ %419 = OpLoad %v4float %x_GLF_color
+ %420 = OpCompositeConstruct %main_out %419
+ OpReturnValue %420
OpFunctionEnd
%main = OpFunction %void None %132
- %420 = OpLabel
- %421 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %421
- %422 = OpFunctionCall %void %main_1
- %424 = OpLoad %v4float %x_GLF_color
- %425 = OpCompositeConstruct %main_out %424
- %423 = OpFunctionCall %void %tint_symbol_3 %425
+ %422 = OpLabel
+ %424 = OpLoad %v4float %gl_FragCoord_param_1
+ %423 = OpFunctionCall %main_out %main_inner %424
+ %425 = OpCompositeExtract %v4float %423 0
+ OpStore %x_GLF_color_1_1 %425
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.spvasm.expected.spvasm
index 003a32d..6e69563 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.spvasm.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%156 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_34 "x_34"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -50,9 +50,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -60,31 +62,29 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -128,7 +128,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %389 = OpTypeFunction %void %main_out
+ %389 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -568,20 +568,20 @@
OpStore %x_GLF_color %388
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %389
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %389
+%gl_FragCoord_param = OpFunctionParameter %v4float
%393 = OpLabel
- %394 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %394
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %394 = OpFunctionCall %void %main_1
+ %395 = OpLoad %v4float %x_GLF_color
+ %396 = OpCompositeConstruct %main_out %395
+ OpReturnValue %396
OpFunctionEnd
%main = OpFunction %void None %109
- %396 = OpLabel
- %397 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %397
- %398 = OpFunctionCall %void %main_1
- %400 = OpLoad %v4float %x_GLF_color
- %401 = OpCompositeConstruct %main_out %400
- %399 = OpFunctionCall %void %tint_symbol_3 %401
+ %398 = OpLabel
+ %400 = OpLoad %v4float %gl_FragCoord_param_1
+ %399 = OpFunctionCall %main_out %main_inner %400
+ %401 = OpCompositeExtract %v4float %399 0
+ OpStore %x_GLF_color_1_1 %401
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.wgsl.expected.spvasm
index 003a32d..6e69563 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-conditional-bitwise-or-clamp/1.wgsl.expected.spvasm
@@ -6,8 +6,10 @@
OpCapability Shader
%156 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -16,8 +18,6 @@
OpMemberName %buf0 0 "resolution"
OpName %x_34 "x_34"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -50,9 +50,11 @@
OpName %color "color"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -60,31 +62,29 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %8 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %8
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
+ %15 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %15
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %13 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %13
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %13
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %13
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%23 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -128,7 +128,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float
- %389 = OpTypeFunction %void %main_out
+ %389 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %23
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -568,20 +568,20 @@
OpStore %x_GLF_color %388
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %389
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %389
+%gl_FragCoord_param = OpFunctionParameter %v4float
%393 = OpLabel
- %394 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %394
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %394 = OpFunctionCall %void %main_1
+ %395 = OpLoad %v4float %x_GLF_color
+ %396 = OpCompositeConstruct %main_out %395
+ OpReturnValue %396
OpFunctionEnd
%main = OpFunction %void None %109
- %396 = OpLabel
- %397 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %397
- %398 = OpFunctionCall %void %main_1
- %400 = OpLoad %v4float %x_GLF_color
- %401 = OpCompositeConstruct %main_out %400
- %399 = OpFunctionCall %void %tint_symbol_3 %401
+ %398 = OpLabel
+ %400 = OpLoad %v4float %gl_FragCoord_param_1
+ %399 = OpFunctionCall %main_out %main_inner %400
+ %401 = OpCompositeExtract %v4float %399 0
+ OpStore %x_GLF_color_1_1 %401
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.spvasm.expected.spvasm
index db05970..0841a47 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.spvasm.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%356 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -50,10 +50,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -61,39 +64,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%29 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %375 = OpTypeFunction %void %main_out
+ %375 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %29
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -544,24 +544,24 @@
OpStore %gl_Position %374
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %375
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %375
+%x_GLF_pos_param = OpFunctionParameter %v4float
%379 = OpLabel
- %380 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %380
- %381 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %381
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %380 = OpFunctionCall %void %main_1
+ %381 = OpLoad %v4float %frag_color
+ %382 = OpLoad %v4float %gl_Position
+ %383 = OpCompositeConstruct %main_out %381 %382
+ OpReturnValue %383
OpFunctionEnd
%main = OpFunction %void None %115
- %383 = OpLabel
- OpStore %tint_pointsize %float_1
- %384 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %384
- %385 = OpFunctionCall %void %main_1
- %387 = OpLoad %v4float %frag_color
- %388 = OpLoad %v4float %gl_Position
- %389 = OpCompositeConstruct %main_out %387 %388
- %386 = OpFunctionCall %void %tint_symbol_4 %389
+ %385 = OpLabel
+ %387 = OpLoad %v4float %x_GLF_pos_param_1
+ %386 = OpFunctionCall %main_out %main_inner %387
+ %388 = OpCompositeExtract %v4float %386 0
+ OpStore %frag_color_1_1 %388
+ %389 = OpCompositeExtract %v4float %386 1
+ OpStore %gl_Position_1 %389
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.wgsl.expected.spvasm
index db05970..0841a47 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/0-opt.wgsl.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%356 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -50,10 +50,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -61,39 +64,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%29 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -138,7 +138,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %375 = OpTypeFunction %void %main_out
+ %375 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %29
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -544,24 +544,24 @@
OpStore %gl_Position %374
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %375
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %375
+%x_GLF_pos_param = OpFunctionParameter %v4float
%379 = OpLabel
- %380 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %380
- %381 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %381
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %380 = OpFunctionCall %void %main_1
+ %381 = OpLoad %v4float %frag_color
+ %382 = OpLoad %v4float %gl_Position
+ %383 = OpCompositeConstruct %main_out %381 %382
+ OpReturnValue %383
OpFunctionEnd
%main = OpFunction %void None %115
- %383 = OpLabel
- OpStore %tint_pointsize %float_1
- %384 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %384
- %385 = OpFunctionCall %void %main_1
- %387 = OpLoad %v4float %frag_color
- %388 = OpLoad %v4float %gl_Position
- %389 = OpCompositeConstruct %main_out %387 %388
- %386 = OpFunctionCall %void %tint_symbol_4 %389
+ %385 = OpLabel
+ %387 = OpLoad %v4float %x_GLF_pos_param_1
+ %386 = OpFunctionCall %main_out %main_inner %387
+ %388 = OpCompositeExtract %v4float %386 0
+ OpStore %frag_color_1_1 %388
+ %389 = OpCompositeExtract %v4float %386 1
+ OpStore %gl_Position_1 %389
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.spvasm.expected.spvasm
index 834d21f..4c129a5 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.spvasm.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %frag_color "frag_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %frag_color
OpStore %x_GLF_color %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%frag_color_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %x_GLF_color
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %x_GLF_color
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %frag_color_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %x_GLF_color_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.wgsl.expected.spvasm
index 834d21f..4c129a5 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/1.wgsl.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %frag_color_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %frag_color_param_1 "frag_color_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %frag_color "frag_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %frag_color_param "frag_color_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %frag_color_param_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
- %frag_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%frag_color_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %frag_color
OpStore %x_GLF_color %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%frag_color_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %frag_color %frag_color_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %x_GLF_color
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %frag_color %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %x_GLF_color
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %frag_color_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %x_GLF_color_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.spvasm.expected.spvasm
index e0c2ca0..8156ab9 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.spvasm.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%367 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -21,9 +24,6 @@
OpName %x_36 "x_36"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -53,10 +53,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -69,28 +72,30 @@
OpDecorate %x_36 NonWritable
OpDecorate %x_36 DescriptorSet 0
OpDecorate %x_36 Binding 1
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -98,13 +103,8 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_36 = OpVariable %_ptr_Uniform_buf1 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%32 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -150,7 +150,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %386 = OpTypeFunction %void %main_out
+ %386 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %32
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -566,24 +566,24 @@
OpStore %gl_Position %385
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %386
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %386
+%x_GLF_pos_param = OpFunctionParameter %v4float
%390 = OpLabel
- %391 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %391
- %392 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %392
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %391 = OpFunctionCall %void %main_1
+ %392 = OpLoad %v4float %frag_color
+ %393 = OpLoad %v4float %gl_Position
+ %394 = OpCompositeConstruct %main_out %392 %393
+ OpReturnValue %394
OpFunctionEnd
%main = OpFunction %void None %118
- %394 = OpLabel
- OpStore %tint_pointsize %float_1
- %395 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %395
- %396 = OpFunctionCall %void %main_1
- %398 = OpLoad %v4float %frag_color
- %399 = OpLoad %v4float %gl_Position
- %400 = OpCompositeConstruct %main_out %398 %399
- %397 = OpFunctionCall %void %tint_symbol_4 %400
+ %396 = OpLabel
+ %398 = OpLoad %v4float %x_GLF_pos_param_1
+ %397 = OpFunctionCall %main_out %main_inner %398
+ %399 = OpCompositeExtract %v4float %397 0
+ OpStore %frag_color_1_1 %399
+ %400 = OpCompositeExtract %v4float %397 1
+ OpStore %gl_Position_1 %400
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.wgsl.expected.spvasm
index e0c2ca0..8156ab9 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-for-loop-with-injection/2-opt.wgsl.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%367 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -21,9 +24,6 @@
OpName %x_36 "x_36"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -53,10 +53,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -69,28 +72,30 @@
OpDecorate %x_36 NonWritable
OpDecorate %x_36 DescriptorSet 0
OpDecorate %x_36 Binding 1
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
@@ -98,13 +103,8 @@
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_36 = OpVariable %_ptr_Uniform_buf1 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%32 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -150,7 +150,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %386 = OpTypeFunction %void %main_out
+ %386 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %32
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -566,24 +566,24 @@
OpStore %gl_Position %385
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %386
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %386
+%x_GLF_pos_param = OpFunctionParameter %v4float
%390 = OpLabel
- %391 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %391
- %392 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %392
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %391 = OpFunctionCall %void %main_1
+ %392 = OpLoad %v4float %frag_color
+ %393 = OpLoad %v4float %gl_Position
+ %394 = OpCompositeConstruct %main_out %392 %393
+ OpReturnValue %394
OpFunctionEnd
%main = OpFunction %void None %118
- %394 = OpLabel
- OpStore %tint_pointsize %float_1
- %395 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %395
- %396 = OpFunctionCall %void %main_1
- %398 = OpLoad %v4float %frag_color
- %399 = OpLoad %v4float %gl_Position
- %400 = OpCompositeConstruct %main_out %398 %399
- %397 = OpFunctionCall %void %tint_symbol_4 %400
+ %396 = OpLabel
+ %398 = OpLoad %v4float %x_GLF_pos_param_1
+ %397 = OpFunctionCall %main_out %main_inner %398
+ %399 = OpCompositeExtract %v4float %397 0
+ OpStore %frag_color_1_1 %399
+ %400 = OpCompositeExtract %v4float %397 1
+ OpStore %gl_Position_1 %400
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.spvasm.expected.spvasm
index 6f5c5f8..4dded40 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.spvasm.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%339 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %x_90 "x_90"
OpName %x_91 "x_91"
@@ -45,8 +45,8 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
@@ -70,7 +70,10 @@
OpName %p "p"
OpName %param_4 "param_4"
OpName %param_5 "param_5"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -78,39 +81,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%29 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -153,7 +153,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %358 = OpTypeFunction %void %main_out
+ %358 = OpTypeFunction %main_out %v4float
%373 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
%394 = OpTypeFunction %int %_ptr_Function_int %_ptr_Function_int
%main_1 = OpFunction %void None %29
@@ -559,25 +559,25 @@
OpStore %gl_Position %357
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %358
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %358
+%x_GLF_pos_param = OpFunctionParameter %v4float
%362 = OpLabel
- %363 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %363
- %364 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %364
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %363 = OpFunctionCall %void %main_1
+ %364 = OpLoad %v4float %frag_color
+ %365 = OpLoad %v4float %gl_Position
+ %366 = OpCompositeConstruct %main_out %364 %365
+ OpReturnValue %366
OpFunctionEnd
%main = OpFunction %void None %29
- %366 = OpLabel
- OpStore %tint_pointsize %float_1
- %367 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %367
- %368 = OpFunctionCall %void %main_1
- %370 = OpLoad %v4float %frag_color
- %371 = OpLoad %v4float %gl_Position
- %372 = OpCompositeConstruct %main_out %370 %371
- %369 = OpFunctionCall %void %tint_symbol_4 %372
+ %368 = OpLabel
+ %370 = OpLoad %v4float %x_GLF_pos_param_1
+ %369 = OpFunctionCall %main_out %main_inner %370
+ %371 = OpCompositeExtract %v4float %369 0
+ OpStore %frag_color_1_1 %371
+ %372 = OpCompositeExtract %v4float %369 1
+ OpStore %gl_Position_1 %372
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%swap_i1_i1_ = OpFunction %void None %373
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.wgsl.expected.spvasm
index 6f5c5f8..4dded40 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/0.wgsl.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%339 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %x_90 "x_90"
OpName %x_91 "x_91"
@@ -45,8 +45,8 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
@@ -70,7 +70,10 @@
OpName %p "p"
OpName %param_4 "param_4"
OpName %param_5 "param_5"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -78,39 +81,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%29 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -153,7 +153,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %358 = OpTypeFunction %void %main_out
+ %358 = OpTypeFunction %main_out %v4float
%373 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
%394 = OpTypeFunction %int %_ptr_Function_int %_ptr_Function_int
%main_1 = OpFunction %void None %29
@@ -559,25 +559,25 @@
OpStore %gl_Position %357
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %358
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %358
+%x_GLF_pos_param = OpFunctionParameter %v4float
%362 = OpLabel
- %363 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %363
- %364 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %364
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %363 = OpFunctionCall %void %main_1
+ %364 = OpLoad %v4float %frag_color
+ %365 = OpLoad %v4float %gl_Position
+ %366 = OpCompositeConstruct %main_out %364 %365
+ OpReturnValue %366
OpFunctionEnd
%main = OpFunction %void None %29
- %366 = OpLabel
- OpStore %tint_pointsize %float_1
- %367 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %367
- %368 = OpFunctionCall %void %main_1
- %370 = OpLoad %v4float %frag_color
- %371 = OpLoad %v4float %gl_Position
- %372 = OpCompositeConstruct %main_out %370 %371
- %369 = OpFunctionCall %void %tint_symbol_4 %372
+ %368 = OpLabel
+ %370 = OpLoad %v4float %x_GLF_pos_param_1
+ %369 = OpFunctionCall %main_out %main_inner %370
+ %371 = OpCompositeExtract %v4float %369 0
+ OpStore %frag_color_1_1 %371
+ %372 = OpCompositeExtract %v4float %369 1
+ OpStore %gl_Position_1 %372
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%swap_i1_i1_ = OpFunction %void None %373
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.spvasm.expected.spvasm
index 01d7e03..d044f62 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.spvasm.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%354 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %performPartition_i1_i1_ "performPartition_i1_i1_"
OpName %l "l"
OpName %h "h"
@@ -47,8 +47,8 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
@@ -62,7 +62,10 @@
OpName %p "p"
OpName %param_4 "param_4"
OpName %param_5 "param_5"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -70,39 +73,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_int = OpTypePointer Function %int
%29 = OpTypeFunction %int %_ptr_Function_int %_ptr_Function_int
%36 = OpConstantNull %int
@@ -147,7 +147,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %373 = OpTypeFunction %void %main_out
+ %373 = OpTypeFunction %main_out %v4float
%388 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
%performPartition_i1_i1_ = OpFunction %int None %29
%l = OpFunctionParameter %_ptr_Function_int
@@ -563,25 +563,25 @@
OpStore %gl_Position %372
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %373
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %373
+%x_GLF_pos_param = OpFunctionParameter %v4float
%377 = OpLabel
- %378 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %378
- %379 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %379
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %378 = OpFunctionCall %void %main_1
+ %379 = OpLoad %v4float %frag_color
+ %380 = OpLoad %v4float %gl_Position
+ %381 = OpCompositeConstruct %main_out %379 %380
+ OpReturnValue %381
OpFunctionEnd
%main = OpFunction %void None %116
- %381 = OpLabel
- OpStore %tint_pointsize %float_1
- %382 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %382
- %383 = OpFunctionCall %void %main_1
- %385 = OpLoad %v4float %frag_color
- %386 = OpLoad %v4float %gl_Position
- %387 = OpCompositeConstruct %main_out %385 %386
- %384 = OpFunctionCall %void %tint_symbol_4 %387
+ %383 = OpLabel
+ %385 = OpLoad %v4float %x_GLF_pos_param_1
+ %384 = OpFunctionCall %main_out %main_inner %385
+ %386 = OpCompositeExtract %v4float %384 0
+ OpStore %frag_color_1_1 %386
+ %387 = OpCompositeExtract %v4float %384 1
+ OpStore %gl_Position_1 %387
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%swap_i1_i1_ = OpFunction %void None %388
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.wgsl.expected.spvasm
index 01d7e03..d044f62 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-if-false-else-return/2.wgsl.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%354 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -18,9 +21,6 @@
OpName %x_34 "x_34"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %performPartition_i1_i1_ "performPartition_i1_i1_"
OpName %l "l"
OpName %h "h"
@@ -47,8 +47,8 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
@@ -62,7 +62,10 @@
OpName %p "p"
OpName %param_4 "param_4"
OpName %param_5 "param_5"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf0 Block
@@ -70,39 +73,36 @@
OpDecorate %x_34 NonWritable
OpDecorate %x_34 DescriptorSet 0
OpDecorate %x_34 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_34 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_int = OpTypePointer Function %int
%29 = OpTypeFunction %int %_ptr_Function_int %_ptr_Function_int
%36 = OpConstantNull %int
@@ -147,7 +147,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %373 = OpTypeFunction %void %main_out
+ %373 = OpTypeFunction %main_out %v4float
%388 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
%performPartition_i1_i1_ = OpFunction %int None %29
%l = OpFunctionParameter %_ptr_Function_int
@@ -563,25 +563,25 @@
OpStore %gl_Position %372
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %373
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %373
+%x_GLF_pos_param = OpFunctionParameter %v4float
%377 = OpLabel
- %378 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %378
- %379 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %379
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %378 = OpFunctionCall %void %main_1
+ %379 = OpLoad %v4float %frag_color
+ %380 = OpLoad %v4float %gl_Position
+ %381 = OpCompositeConstruct %main_out %379 %380
+ OpReturnValue %381
OpFunctionEnd
%main = OpFunction %void None %116
- %381 = OpLabel
- OpStore %tint_pointsize %float_1
- %382 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %382
- %383 = OpFunctionCall %void %main_1
- %385 = OpLoad %v4float %frag_color
- %386 = OpLoad %v4float %gl_Position
- %387 = OpCompositeConstruct %main_out %385 %386
- %384 = OpFunctionCall %void %tint_symbol_4 %387
+ %383 = OpLabel
+ %385 = OpLoad %v4float %x_GLF_pos_param_1
+ %384 = OpFunctionCall %main_out %main_inner %385
+ %386 = OpCompositeExtract %v4float %384 0
+ OpStore %frag_color_1_1 %386
+ %387 = OpCompositeExtract %v4float %384 1
+ OpStore %gl_Position_1 %387
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
%swap_i1_i1_ = OpFunction %void None %388
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.spvasm.expected.spvasm
index f53a11b..e255866 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.spvasm.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%280 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -21,9 +24,6 @@
OpName %x_37 "x_37"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -53,10 +53,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf1 Block
@@ -69,28 +72,30 @@
OpDecorate %x_37 NonWritable
OpDecorate %x_37 DescriptorSet 0
OpDecorate %x_37 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -98,13 +103,8 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_37 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%32 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -150,7 +150,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %393 = OpTypeFunction %void %main_out
+ %393 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %32
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -570,24 +570,24 @@
OpStore %gl_Position %392
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %393
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %393
+%x_GLF_pos_param = OpFunctionParameter %v4float
%397 = OpLabel
- %398 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %398
- %399 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %399
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %398 = OpFunctionCall %void %main_1
+ %399 = OpLoad %v4float %frag_color
+ %400 = OpLoad %v4float %gl_Position
+ %401 = OpCompositeConstruct %main_out %399 %400
+ OpReturnValue %401
OpFunctionEnd
%main = OpFunction %void None %118
- %401 = OpLabel
- OpStore %tint_pointsize %float_1
- %402 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %402
- %403 = OpFunctionCall %void %main_1
- %405 = OpLoad %v4float %frag_color
- %406 = OpLoad %v4float %gl_Position
- %407 = OpCompositeConstruct %main_out %405 %406
- %404 = OpFunctionCall %void %tint_symbol_4 %407
+ %403 = OpLabel
+ %405 = OpLoad %v4float %x_GLF_pos_param_1
+ %404 = OpFunctionCall %main_out %main_inner %405
+ %406 = OpCompositeExtract %v4float %404 0
+ OpStore %frag_color_1_1 %406
+ %407 = OpCompositeExtract %v4float %404 1
+ OpStore %gl_Position_1 %407
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.wgsl.expected.spvasm
index f53a11b..e255866 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-quicksort-max-value-as-index/2-opt.wgsl.expected.spvasm
@@ -6,8 +6,11 @@
OpCapability Shader
%280 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_GLF_pos_param_1 %frag_color_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_GLF_pos_param_1 "x_GLF_pos_param_1"
+ OpName %frag_color_1_1 "frag_color_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %QuicksortObject "QuicksortObject"
OpMemberName %QuicksortObject 0 "numbers"
OpName %obj "obj"
@@ -21,9 +24,6 @@
OpName %x_37 "x_37"
OpName %frag_color "frag_color"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %swap_i1_i1_ "swap_i1_i1_"
OpName %i "i"
OpName %j "j"
@@ -53,10 +53,13 @@
OpName %main_out "main_out"
OpMemberName %main_out 0 "frag_color_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_GLF_pos_param "x_GLF_pos_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
+ OpDecorate %x_GLF_pos_param_1 Location 0
+ OpDecorate %frag_color_1_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %QuicksortObject 0 Offset 0
OpDecorate %_arr_int_uint_10 ArrayStride 4
OpDecorate %buf1 Block
@@ -69,28 +72,30 @@
OpDecorate %x_37 NonWritable
OpDecorate %x_37 DescriptorSet 0
OpDecorate %x_37 Binding 0
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn Position
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_GLF_pos_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%frag_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
%int = OpTypeInt 32 1
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_int_uint_10 = OpTypeArray %int %uint_10
%QuicksortObject = OpTypeStruct %_arr_int_uint_10
%_ptr_Private_QuicksortObject = OpTypePointer Private %QuicksortObject
- %12 = OpConstantNull %QuicksortObject
- %obj = OpVariable %_ptr_Private_QuicksortObject Private %12
- %v4float = OpTypeVector %float 4
+ %19 = OpConstantNull %QuicksortObject
+ %obj = OpVariable %_ptr_Private_QuicksortObject Private %19
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %16
- %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %16
+%x_GLF_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+ %x_GLF_pos = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
@@ -98,13 +103,8 @@
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_37 = OpVariable %_ptr_Uniform_buf0 Uniform
- %frag_color = OpVariable %_ptr_Private_v4float Private %16
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %16
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %frag_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_int = OpTypePointer Function %int
%32 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_int
@@ -150,7 +150,7 @@
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%main_out = OpTypeStruct %v4float %v4float
- %393 = OpTypeFunction %void %main_out
+ %393 = OpTypeFunction %main_out %v4float
%swap_i1_i1_ = OpFunction %void None %32
%i = OpFunctionParameter %_ptr_Function_int
%j = OpFunctionParameter %_ptr_Function_int
@@ -570,24 +570,24 @@
OpStore %gl_Position %392
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %393
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %393
+%x_GLF_pos_param = OpFunctionParameter %v4float
%397 = OpLabel
- %398 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %398
- %399 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %399
- OpReturn
+ OpStore %x_GLF_pos %x_GLF_pos_param
+ %398 = OpFunctionCall %void %main_1
+ %399 = OpLoad %v4float %frag_color
+ %400 = OpLoad %v4float %gl_Position
+ %401 = OpCompositeConstruct %main_out %399 %400
+ OpReturnValue %401
OpFunctionEnd
%main = OpFunction %void None %118
- %401 = OpLabel
- OpStore %tint_pointsize %float_1
- %402 = OpLoad %v4float %tint_symbol
- OpStore %x_GLF_pos %402
- %403 = OpFunctionCall %void %main_1
- %405 = OpLoad %v4float %frag_color
- %406 = OpLoad %v4float %gl_Position
- %407 = OpCompositeConstruct %main_out %405 %406
- %404 = OpFunctionCall %void %tint_symbol_4 %407
+ %403 = OpLabel
+ %405 = OpLoad %v4float %x_GLF_pos_param_1
+ %404 = OpFunctionCall %main_out %main_inner %405
+ %406 = OpCompositeExtract %v4float %404 0
+ OpStore %frag_color_1_1 %406
+ %407 = OpCompositeExtract %v4float %404 1
+ OpStore %gl_Position_1 %407
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.spvasm.expected.spvasm
index 5d8773e..7581de0 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%125 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_20 "x_20"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -35,33 +35,33 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -137,7 +137,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %227 = OpTypeFunction %void %main_out
+ %227 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %15
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -193,12 +193,12 @@
%match_vf2_ = OpFunction %v4float None %75
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%78 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %7
%x_144 = OpVariable %_ptr_Function_float Function %81
%x_145 = OpVariable %_ptr_Function_float Function %81
%i = OpVariable %_ptr_Function_int Function %86
%param = OpVariable %_ptr_Function_v2float Function %88
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
@@ -317,20 +317,20 @@
OpStore %x_GLF_color %225
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %227
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %227
+%gl_FragCoord_param = OpFunctionParameter %v4float
%231 = OpLabel
- %232 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %232
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %232 = OpFunctionCall %void %main_1
+ %233 = OpLoad %v4float %x_GLF_color
+ %234 = OpCompositeConstruct %main_out %233
+ OpReturnValue %234
OpFunctionEnd
%main = OpFunction %void None %206
- %234 = OpLabel
- %235 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %235
- %236 = OpFunctionCall %void %main_1
- %238 = OpLoad %v4float %x_GLF_color
- %239 = OpCompositeConstruct %main_out %238
- %237 = OpFunctionCall %void %tint_symbol_3 %239
+ %236 = OpLabel
+ %238 = OpLoad %v4float %gl_FragCoord_param_1
+ %237 = OpFunctionCall %main_out %main_inner %238
+ %239 = OpCompositeExtract %v4float %237 0
+ OpStore %x_GLF_color_1_1 %239
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.wgsl.expected.spvasm
index 5d8773e..7581de0 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-rects-vec4-clamp-conditional-min-mix/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%125 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_20 "x_20"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %collision_vf2_vf4_ "collision_vf2_vf4_"
OpName %pos "pos"
OpName %quad "quad"
@@ -35,33 +35,33 @@
OpName %param_2 "param_2"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_20 NonWritable
OpDecorate %x_20 DescriptorSet 0
OpDecorate %x_20 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_v4float_uint_8 ArrayStride 16
OpDecorate %_arr_v4float_uint_16 ArrayStride 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_20 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%bool = OpTypeBool
%_ptr_Function_v2float = OpTypePointer Function %v2float
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -137,7 +137,7 @@
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
%float_32 = OpConstant %float 32
%main_out = OpTypeStruct %v4float
- %227 = OpTypeFunction %void %main_out
+ %227 = OpTypeFunction %main_out %v4float
%collision_vf2_vf4_ = OpFunction %bool None %15
%pos = OpFunctionParameter %_ptr_Function_v2float
%quad = OpFunctionParameter %_ptr_Function_v4float
@@ -193,12 +193,12 @@
%match_vf2_ = OpFunction %v4float None %75
%pos_1 = OpFunctionParameter %_ptr_Function_v2float
%78 = OpLabel
- %res = OpVariable %_ptr_Function_v4float Function %5
+ %res = OpVariable %_ptr_Function_v4float Function %7
%x_144 = OpVariable %_ptr_Function_float Function %81
%x_145 = OpVariable %_ptr_Function_float Function %81
%i = OpVariable %_ptr_Function_int Function %86
%param = OpVariable %_ptr_Function_v2float Function %88
- %param_1 = OpVariable %_ptr_Function_v4float Function %5
+ %param_1 = OpVariable %_ptr_Function_v4float Function %7
%indexable = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
%indexable_1 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
%indexable_2 = OpVariable %_ptr_Function__arr_v4float_uint_8 Function %94
@@ -317,20 +317,20 @@
OpStore %x_GLF_color %225
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %227
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %227
+%gl_FragCoord_param = OpFunctionParameter %v4float
%231 = OpLabel
- %232 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %232
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %232 = OpFunctionCall %void %main_1
+ %233 = OpLoad %v4float %x_GLF_color
+ %234 = OpCompositeConstruct %main_out %233
+ OpReturnValue %234
OpFunctionEnd
%main = OpFunction %void None %206
- %234 = OpLabel
- %235 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %235
- %236 = OpFunctionCall %void %main_1
- %238 = OpLoad %v4float %x_GLF_color
- %239 = OpCompositeConstruct %main_out %238
- %237 = OpFunctionCall %void %tint_symbol_3 %239
+ %236 = OpLabel
+ %238 = OpLoad %v4float %gl_FragCoord_param_1
+ %237 = OpFunctionCall %main_out %main_inner %238
+ %239 = OpCompositeExtract %v4float %237 0
+ OpStore %x_GLF_color_1_1 %239
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.spvasm.expected.spvasm
index 97a8140..c6328f5 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -46,31 +46,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -107,7 +107,7 @@
%242 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%243 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %244 = OpTypeFunction %void %main_out
+ %244 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -321,20 +321,20 @@
%238 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %244
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %244
+%gl_FragCoord_param = OpFunctionParameter %v4float
%248 = OpLabel
- %249 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %249
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %249 = OpFunctionCall %void %main_1
+ %250 = OpLoad %v4float %x_GLF_color
+ %251 = OpCompositeConstruct %main_out %250
+ OpReturnValue %251
OpFunctionEnd
%main = OpFunction %void None %206
- %251 = OpLabel
- %252 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %252
- %253 = OpFunctionCall %void %main_1
- %255 = OpLoad %v4float %x_GLF_color
- %256 = OpCompositeConstruct %main_out %255
- %254 = OpFunctionCall %void %tint_symbol_3 %256
+ %253 = OpLabel
+ %255 = OpLoad %v4float %gl_FragCoord_param_1
+ %254 = OpFunctionCall %main_out %main_inner %255
+ %256 = OpCompositeExtract %v4float %254 0
+ OpStore %x_GLF_color_1_1 %256
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.wgsl.expected.spvasm
index 59e04f8..3dbc1da 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-array-nested-loop/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -46,31 +46,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -107,7 +107,7 @@
%250 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%251 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %252 = OpTypeFunction %void %main_out
+ %252 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -341,20 +341,20 @@
%246 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %252
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %252
+%gl_FragCoord_param = OpFunctionParameter %v4float
%256 = OpLabel
- %257 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %257
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %257 = OpFunctionCall %void %main_1
+ %258 = OpLoad %v4float %x_GLF_color
+ %259 = OpCompositeConstruct %main_out %258
+ OpReturnValue %259
OpFunctionEnd
%main = OpFunction %void None %214
- %259 = OpLabel
- %260 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %260
- %261 = OpFunctionCall %void %main_1
- %263 = OpLoad %v4float %x_GLF_color
- %264 = OpCompositeConstruct %main_out %263
- %262 = OpFunctionCall %void %tint_symbol_3 %264
+ %261 = OpLabel
+ %263 = OpLoad %v4float %gl_FragCoord_param_1
+ %262 = OpFunctionCall %main_out %main_inner %263
+ %264 = OpCompositeExtract %v4float %262 0
+ OpStore %x_GLF_color_1_1 %264
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.spvasm.expected.spvasm
index cbaf950..a09be33 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -43,31 +43,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -100,7 +100,7 @@
%241 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%242 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %243 = OpTypeFunction %void %main_out
+ %243 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -304,20 +304,20 @@
%237 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %243
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %243
+%gl_FragCoord_param = OpFunctionParameter %v4float
%247 = OpLabel
- %248 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %248
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %248 = OpFunctionCall %void %main_1
+ %249 = OpLoad %v4float %x_GLF_color
+ %250 = OpCompositeConstruct %main_out %249
+ OpReturnValue %250
OpFunctionEnd
%main = OpFunction %void None %204
- %250 = OpLabel
- %251 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %251
- %252 = OpFunctionCall %void %main_1
- %254 = OpLoad %v4float %x_GLF_color
- %255 = OpCompositeConstruct %main_out %254
- %253 = OpFunctionCall %void %tint_symbol_3 %255
+ %252 = OpLabel
+ %254 = OpLoad %v4float %gl_FragCoord_param_1
+ %253 = OpFunctionCall %main_out %main_inner %254
+ %255 = OpCompositeExtract %v4float %253 0
+ OpStore %x_GLF_color_1_1 %255
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.wgsl.expected.spvasm
index dadcc8e..4b9e486 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -43,31 +43,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -100,7 +100,7 @@
%249 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%250 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %251 = OpTypeFunction %void %main_out
+ %251 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -324,20 +324,20 @@
%245 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %251
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %251
+%gl_FragCoord_param = OpFunctionParameter %v4float
%255 = OpLabel
- %256 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %256
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %256 = OpFunctionCall %void %main_1
+ %257 = OpLoad %v4float %x_GLF_color
+ %258 = OpCompositeConstruct %main_out %257
+ OpReturnValue %258
OpFunctionEnd
%main = OpFunction %void None %212
- %258 = OpLabel
- %259 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %259
- %260 = OpFunctionCall %void %main_1
- %262 = OpLoad %v4float %x_GLF_color
- %263 = OpCompositeConstruct %main_out %262
- %261 = OpFunctionCall %void %tint_symbol_3 %263
+ %260 = OpLabel
+ %262 = OpLoad %v4float %gl_FragCoord_param_1
+ %261 = OpFunctionCall %main_out %main_inner %262
+ %263 = OpCompositeExtract %v4float %261 0
+ OpStore %x_GLF_color_1_1 %263
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.spvasm.expected.spvasm
index fd2f1dc..29470fa 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.spvasm.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%97 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_15 "x_15"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -48,31 +48,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -108,7 +108,7 @@
%283 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%284 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %285 = OpTypeFunction %void %main_out
+ %285 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -360,20 +360,20 @@
%280 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %285
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %285
+%gl_FragCoord_param = OpFunctionParameter %v4float
%289 = OpLabel
- %290 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %290
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %290 = OpFunctionCall %void %main_1
+ %291 = OpLoad %v4float %x_GLF_color
+ %292 = OpCompositeConstruct %main_out %291
+ OpReturnValue %292
OpFunctionEnd
%main = OpFunction %void None %247
- %292 = OpLabel
- %293 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %293
- %294 = OpFunctionCall %void %main_1
- %296 = OpLoad %v4float %x_GLF_color
- %297 = OpCompositeConstruct %main_out %296
- %295 = OpFunctionCall %void %tint_symbol_3 %297
+ %294 = OpLabel
+ %296 = OpLoad %v4float %gl_FragCoord_param_1
+ %295 = OpFunctionCall %main_out %main_inner %296
+ %297 = OpCompositeExtract %v4float %295 0
+ OpStore %x_GLF_color_1_1 %297
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.wgsl.expected.spvasm
index 98ab5e5..11326c6 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-clamp-conditional-mix/1.wgsl.expected.spvasm
@@ -6,15 +6,15 @@
OpCapability Shader
%97 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_15 "x_15"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -48,31 +48,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_15 NonWritable
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_15 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -108,7 +108,7 @@
%291 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%292 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %293 = OpTypeFunction %void %main_out
+ %293 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -380,20 +380,20 @@
%288 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %293
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %293
+%gl_FragCoord_param = OpFunctionParameter %v4float
%297 = OpLabel
- %298 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %298
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %298 = OpFunctionCall %void %main_1
+ %299 = OpLoad %v4float %x_GLF_color
+ %300 = OpCompositeConstruct %main_out %299
+ OpReturnValue %300
OpFunctionEnd
%main = OpFunction %void None %255
- %300 = OpLabel
- %301 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %301
- %302 = OpFunctionCall %void %main_1
- %304 = OpLoad %v4float %x_GLF_color
- %305 = OpCompositeConstruct %main_out %304
- %303 = OpFunctionCall %void %tint_symbol_3 %305
+ %302 = OpLabel
+ %304 = OpLoad %v4float %gl_FragCoord_param_1
+ %303 = OpFunctionCall %main_out %main_inner %304
+ %305 = OpCompositeExtract %v4float %303 0
+ OpStore %x_GLF_color_1_1 %305
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.spvasm.expected.spvasm
index c9284d5..98d056f 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -43,31 +43,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -100,7 +100,7 @@
%241 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%242 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %243 = OpTypeFunction %void %main_out
+ %243 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -304,20 +304,20 @@
%237 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %243
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %243
+%gl_FragCoord_param = OpFunctionParameter %v4float
%247 = OpLabel
- %248 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %248
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %248 = OpFunctionCall %void %main_1
+ %249 = OpLoad %v4float %x_GLF_color
+ %250 = OpCompositeConstruct %main_out %249
+ OpReturnValue %250
OpFunctionEnd
%main = OpFunction %void None %204
- %250 = OpLabel
- %251 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %251
- %252 = OpFunctionCall %void %main_1
- %254 = OpLoad %v4float %x_GLF_color
- %255 = OpCompositeConstruct %main_out %254
- %253 = OpFunctionCall %void %tint_symbol_3 %255
+ %252 = OpLabel
+ %254 = OpLoad %v4float %gl_FragCoord_param_1
+ %253 = OpFunctionCall %main_out %main_inner %254
+ %255 = OpCompositeExtract %v4float %253 0
+ OpStore %x_GLF_color_1_1 %255
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.wgsl.expected.spvasm
index 0d3239b..db14570 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-conditional-clamped-float/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_24 "x_24"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %cross2d_vf2_vf2_ "cross2d_vf2_vf2_"
OpName %a "a"
OpName %b "b"
@@ -43,31 +43,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_24 NonWritable
OpDecorate %x_24 DescriptorSet 0
OpDecorate %x_24 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_24 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %float %_ptr_Function_v2float %_ptr_Function_v2float
%uint = OpTypeInt 32 0
@@ -100,7 +100,7 @@
%249 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%250 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %251 = OpTypeFunction %void %main_out
+ %251 = OpTypeFunction %main_out %v4float
%cross2d_vf2_vf2_ = OpFunction %float None %15
%a = OpFunctionParameter %_ptr_Function_v2float
%b = OpFunctionParameter %_ptr_Function_v2float
@@ -324,20 +324,20 @@
%245 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %251
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %251
+%gl_FragCoord_param = OpFunctionParameter %v4float
%255 = OpLabel
- %256 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %256
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %256 = OpFunctionCall %void %main_1
+ %257 = OpLoad %v4float %x_GLF_color
+ %258 = OpCompositeConstruct %main_out %257
+ OpReturnValue %258
OpFunctionEnd
%main = OpFunction %void None %212
- %258 = OpLabel
- %259 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %259
- %260 = OpFunctionCall %void %main_1
- %262 = OpLoad %v4float %x_GLF_color
- %263 = OpCompositeConstruct %main_out %262
- %261 = OpFunctionCall %void %tint_symbol_3 %263
+ %260 = OpLabel
+ %262 = OpLoad %v4float %gl_FragCoord_param_1
+ %261 = OpFunctionCall %main_out %main_inner %262
+ %263 = OpCompositeExtract %v4float %261 0
+ OpStore %x_GLF_color_1_1 %263
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.spvasm.expected.spvasm
index ce35196..b843fea 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_17 "x_17"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %pointInTriangle_vf2_vf2_vf2_vf2_ "pointInTriangle_vf2_vf2_vf2_vf2_"
OpName %p "p"
OpName %a "a"
@@ -39,31 +39,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_17 NonWritable
OpDecorate %x_17 DescriptorSet 0
OpDecorate %x_17 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_17 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %int %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float
@@ -95,7 +95,7 @@
%234 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%235 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %236 = OpTypeFunction %void %main_out
+ %236 = OpTypeFunction %main_out %v4float
%pointInTriangle_vf2_vf2_vf2_vf2_ = OpFunction %int None %15
%p = OpFunctionParameter %_ptr_Function_v2float
%a = OpFunctionParameter %_ptr_Function_v2float
@@ -300,20 +300,20 @@
%230 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %236
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %236
+%gl_FragCoord_param = OpFunctionParameter %v4float
%240 = OpLabel
- %241 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %241
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %241 = OpFunctionCall %void %main_1
+ %242 = OpLoad %v4float %x_GLF_color
+ %243 = OpCompositeConstruct %main_out %242
+ OpReturnValue %243
OpFunctionEnd
%main = OpFunction %void None %199
- %243 = OpLabel
- %244 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %244
- %245 = OpFunctionCall %void %main_1
- %247 = OpLoad %v4float %x_GLF_color
- %248 = OpCompositeConstruct %main_out %247
- %246 = OpFunctionCall %void %tint_symbol_3 %248
+ %245 = OpLabel
+ %247 = OpLoad %v4float %gl_FragCoord_param_1
+ %246 = OpFunctionCall %main_out %main_inner %247
+ %248 = OpCompositeExtract %v4float %246 0
+ OpStore %x_GLF_color_1_1 %248
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.wgsl.expected.spvasm
index 69ebf78..7431763 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/0.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_17 "x_17"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %pointInTriangle_vf2_vf2_vf2_vf2_ "pointInTriangle_vf2_vf2_vf2_vf2_"
OpName %p "p"
OpName %a "a"
@@ -39,31 +39,31 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_17 NonWritable
OpDecorate %x_17 DescriptorSet 0
OpDecorate %x_17 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_17 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%int = OpTypeInt 32 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%15 = OpTypeFunction %int %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float
@@ -95,7 +95,7 @@
%242 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%243 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %244 = OpTypeFunction %void %main_out
+ %244 = OpTypeFunction %main_out %v4float
%pointInTriangle_vf2_vf2_vf2_vf2_ = OpFunction %int None %15
%p = OpFunctionParameter %_ptr_Function_v2float
%a = OpFunctionParameter %_ptr_Function_v2float
@@ -320,20 +320,20 @@
%238 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %244
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %244
+%gl_FragCoord_param = OpFunctionParameter %v4float
%248 = OpLabel
- %249 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %249
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %249 = OpFunctionCall %void %main_1
+ %250 = OpLoad %v4float %x_GLF_color
+ %251 = OpCompositeConstruct %main_out %250
+ OpReturnValue %251
OpFunctionEnd
%main = OpFunction %void None %207
- %251 = OpLabel
- %252 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %252
- %253 = OpFunctionCall %void %main_1
- %255 = OpLoad %v4float %x_GLF_color
- %256 = OpCompositeConstruct %main_out %255
- %254 = OpFunctionCall %void %tint_symbol_3 %256
+ %253 = OpLabel
+ %255 = OpLoad %v4float %gl_FragCoord_param_1
+ %254 = OpFunctionCall %main_out %main_inner %255
+ %256 = OpCompositeExtract %v4float %254 0
+ OpStore %x_GLF_color_1_1 %256
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.spvasm.expected.spvasm
index a995146..cf14852 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_11 "x_11"
@@ -15,8 +17,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %pointInTriangle_vf2_vf2_vf2_vf2_ "pointInTriangle_vf2_vf2_vf2_vf2_"
OpName %p "p"
OpName %a "a"
@@ -46,9 +46,11 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_11 NonWritable
@@ -59,26 +61,24 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_19 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
%int = OpTypeInt 32 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%18 = OpTypeFunction %int %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float
@@ -114,7 +114,7 @@
%277 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%278 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %279 = OpTypeFunction %void %main_out
+ %279 = OpTypeFunction %main_out %v4float
%pointInTriangle_vf2_vf2_vf2_vf2_ = OpFunction %int None %18
%p = OpFunctionParameter %_ptr_Function_v2float
%a = OpFunctionParameter %_ptr_Function_v2float
@@ -384,20 +384,20 @@
%267 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %279
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %279
+%gl_FragCoord_param = OpFunctionParameter %v4float
%283 = OpLabel
- %284 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %284
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %284 = OpFunctionCall %void %main_1
+ %285 = OpLoad %v4float %x_GLF_color
+ %286 = OpCompositeConstruct %main_out %285
+ OpReturnValue %286
OpFunctionEnd
%main = OpFunction %void None %236
- %286 = OpLabel
- %287 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %287
- %288 = OpFunctionCall %void %main_1
- %290 = OpLoad %v4float %x_GLF_color
- %291 = OpCompositeConstruct %main_out %290
- %289 = OpFunctionCall %void %tint_symbol_3 %291
+ %288 = OpLabel
+ %290 = OpLoad %v4float %gl_FragCoord_param_1
+ %289 = OpFunctionCall %main_out %main_inner %290
+ %291 = OpCompositeExtract %v4float %289 0
+ OpStore %x_GLF_color_1_1 %291
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.wgsl.expected.spvasm
index 8e4e6fc..e436c77 100644
--- a/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/stable-triangle-nested-for-loop-and-true-if/1.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
OpName %x_11 "x_11"
@@ -15,8 +17,6 @@
OpName %buf0 "buf0"
OpMemberName %buf0 0 "resolution"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %pointInTriangle_vf2_vf2_vf2_vf2_ "pointInTriangle_vf2_vf2_vf2_vf2_"
OpName %p "p"
OpName %a "a"
@@ -46,9 +46,11 @@
OpName %param_9 "param_9"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_11 NonWritable
@@ -59,26 +61,24 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
%x_11 = OpVariable %_ptr_Uniform_buf1 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_19 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
%int = OpTypeInt 32 1
%_ptr_Function_v2float = OpTypePointer Function %v2float
%18 = OpTypeFunction %int %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float %_ptr_Function_v2float
@@ -114,7 +114,7 @@
%285 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%286 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %287 = OpTypeFunction %void %main_out
+ %287 = OpTypeFunction %main_out %v4float
%pointInTriangle_vf2_vf2_vf2_vf2_ = OpFunction %int None %18
%p = OpFunctionParameter %_ptr_Function_v2float
%a = OpFunctionParameter %_ptr_Function_v2float
@@ -404,20 +404,20 @@
%275 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %287
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %287
+%gl_FragCoord_param = OpFunctionParameter %v4float
%291 = OpLabel
- %292 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %292
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %292 = OpFunctionCall %void %main_1
+ %293 = OpLoad %v4float %x_GLF_color
+ %294 = OpCompositeConstruct %main_out %293
+ OpReturnValue %294
OpFunctionEnd
%main = OpFunction %void None %244
- %294 = OpLabel
- %295 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %295
- %296 = OpFunctionCall %void %main_1
- %298 = OpLoad %v4float %x_GLF_color
- %299 = OpCompositeConstruct %main_out %298
- %297 = OpFunctionCall %void %tint_symbol_3 %299
+ %296 = OpLabel
+ %298 = OpLoad %v4float %gl_FragCoord_param_1
+ %297 = OpFunctionCall %main_out %main_inner %298
+ %299 = OpCompositeExtract %v4float %297 0
+ OpStore %x_GLF_color_1_1 %299
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.spvasm.expected.spvasm
index 902b81d..bbbae28 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -21,10 +21,9 @@
OpName %x_42_1 "x_42_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -32,11 +31,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
@@ -58,7 +57,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_ = OpFunction %void None %8
%tree = OpFunctionParameter %_ptr_Function_BST
%15 = OpLabel
@@ -108,18 +107,17 @@
OpStore %x_GLF_color %60
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %22
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.wgsl.expected.spvasm
index 902b81d..bbbae28 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-and-unreachable-infinite-loop/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -21,10 +21,9 @@
OpName %x_42_1 "x_42_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -32,11 +31,11 @@
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
@@ -58,7 +57,7 @@
%float_0 = OpConstant %float 0
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%makeTreeNode_struct_BST_i1_i1_i11_ = OpFunction %void None %8
%tree = OpFunctionParameter %_ptr_Function_BST
%15 = OpLabel
@@ -108,18 +107,17 @@
OpStore %x_GLF_color %60
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %22
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.spvasm.expected.spvasm
index cc8e8c1..63de97c 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %struct_base "struct_base"
OpMemberName %struct_base 0 "data"
OpMemberName %struct_base 1 "leftIndex"
@@ -16,14 +17,13 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %index "index"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %struct_base 0 Offset 0
OpMemberDecorate %struct_base 1 Offset 4
OpMemberDecorate %struct_base 2 Offset 8
@@ -33,27 +33,26 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%struct_base = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_struct_base_uint_3 = OpTypeArray %struct_base %uint_3
%_ptr_Private__arr_struct_base_uint_3 = OpTypePointer Private %_arr_struct_base_uint_3
- %8 = OpConstantNull %_arr_struct_base_uint_3
-%struct_array = OpVariable %_ptr_Private__arr_struct_base_uint_3 Private %8
- %float = OpTypeFloat 32
+ %13 = OpConstantNull %_arr_struct_base_uint_3
+%struct_array = OpVariable %_ptr_Private__arr_struct_base_uint_3 Private %13
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -72,7 +71,7 @@
%61 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%62 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%index = OpVariable %_ptr_Function_int Function %26
@@ -116,18 +115,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %20
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.wgsl.expected.spvasm
index cc8e8c1..63de97c 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-array-index/0.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 75
+; Bound: 74
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %struct_base "struct_base"
OpMemberName %struct_base 0 "data"
OpMemberName %struct_base 1 "leftIndex"
@@ -16,14 +17,13 @@
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %index "index"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %struct_base 0 Offset 0
OpMemberDecorate %struct_base 1 Offset 4
OpMemberDecorate %struct_base 2 Offset 8
@@ -33,27 +33,26 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%struct_base = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_3 = OpConstant %uint 3
%_arr_struct_base_uint_3 = OpTypeArray %struct_base %uint_3
%_ptr_Private__arr_struct_base_uint_3 = OpTypePointer Private %_arr_struct_base_uint_3
- %8 = OpConstantNull %_arr_struct_base_uint_3
-%struct_array = OpVariable %_ptr_Private__arr_struct_base_uint_3 Private %8
- %float = OpTypeFloat 32
+ %13 = OpConstantNull %_arr_struct_base_uint_3
+%struct_array = OpVariable %_ptr_Private__arr_struct_base_uint_3 Private %13
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%20 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -72,7 +71,7 @@
%61 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%62 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %63 = OpTypeFunction %void %main_out
+ %63 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %20
%23 = OpLabel
%index = OpVariable %_ptr_Function_int Function %26
@@ -116,18 +115,17 @@
%56 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %63
-%tint_symbol = OpFunctionParameter %main_out
- %67 = OpLabel
- %68 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %68
- OpReturn
+ %main_inner = OpFunction %main_out None %63
+ %66 = OpLabel
+ %67 = OpFunctionCall %void %main_1
+ %68 = OpLoad %v4float %x_GLF_color
+ %69 = OpCompositeConstruct %main_out %68
+ OpReturnValue %69
OpFunctionEnd
%main = OpFunction %void None %20
- %70 = OpLabel
- %71 = OpFunctionCall %void %main_1
- %73 = OpLoad %v4float %x_GLF_color
- %74 = OpCompositeConstruct %main_out %73
- %72 = OpFunctionCall %void %tint_symbol_2 %74
+ %71 = OpLabel
+ %72 = OpFunctionCall %main_out %main_inner
+ %73 = OpCompositeExtract %v4float %72 0
+ OpStore %x_GLF_color_1_1 %73
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.spvasm.expected.spvasm
index 1b17c76..d8be20a 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "f0"
@@ -21,30 +21,29 @@
OpName %x_51_1 "x_51_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 16
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -71,7 +70,7 @@
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%ll = OpVariable %_ptr_Function_S Function %22
@@ -120,18 +119,17 @@
OpStore %x_GLF_color %67
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %12
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.wgsl.expected.spvasm
index 1b17c76..d8be20a 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 80
+; Bound: 79
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S "S"
OpMemberName %S 0 "f0"
@@ -21,30 +21,29 @@
OpName %x_51_1 "x_51_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 16
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -71,7 +70,7 @@
%int_1 = OpConstant %int 1
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %68 = OpTypeFunction %void %main_out
+ %68 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%ll = OpVariable %_ptr_Function_S Function %22
@@ -120,18 +119,17 @@
OpStore %x_GLF_color %67
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %68
-%tint_symbol = OpFunctionParameter %main_out
- %72 = OpLabel
- %73 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %73
- OpReturn
+ %main_inner = OpFunction %main_out None %68
+ %71 = OpLabel
+ %72 = OpFunctionCall %void %main_1
+ %73 = OpLoad %v4float %x_GLF_color
+ %74 = OpCompositeConstruct %main_out %73
+ OpReturnValue %74
OpFunctionEnd
%main = OpFunction %void None %12
- %75 = OpLabel
- %76 = OpFunctionCall %void %main_1
- %78 = OpLoad %v4float %x_GLF_color
- %79 = OpCompositeConstruct %main_out %78
- %77 = OpFunctionCall %void %tint_symbol_2 %79
+ %76 = OpLabel
+ %77 = OpFunctionCall %main_out %main_inner
+ %78 = OpCompositeExtract %v4float %77 0
+ OpStore %x_GLF_color_1_1 %78
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.spvasm.expected.spvasm
index 4cdb9e6..758ec98 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_3_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_3_1_1 "x_3_1_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S_1 "S_1"
OpMemberName %S_1 0 "field0"
OpName %x_21_1 "x_21_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_3_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_3_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S_1 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+ %x_3_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_3 = OpVariable %_ptr_Private_v4float Private %5
%S = OpTypeStruct %v4float
%_ptr_Uniform_S = OpTypePointer Uniform %S
%x_5 = OpVariable %_ptr_Uniform_S Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -52,7 +51,7 @@
%26 = OpConstantNull %S_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %31 = OpTypeFunction %void %main_out
+ %31 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_21_1 = OpVariable %_ptr_Function_S_1 Function %26
@@ -66,18 +65,17 @@
OpStore %x_3 %30
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %31
-%tint_symbol = OpFunctionParameter %main_out
- %35 = OpLabel
- %36 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %36
- OpReturn
+ %main_inner = OpFunction %main_out None %31
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %main_1
+ %36 = OpLoad %v4float %x_3
+ %37 = OpCompositeConstruct %main_out %36
+ OpReturnValue %37
OpFunctionEnd
%main = OpFunction %void None %11
- %38 = OpLabel
- %39 = OpFunctionCall %void %main_1
- %41 = OpLoad %v4float %x_3
- %42 = OpCompositeConstruct %main_out %41
- %40 = OpFunctionCall %void %tint_symbol_2 %42
+ %39 = OpLabel
+ %40 = OpFunctionCall %main_out %main_inner
+ %41 = OpCompositeExtract %v4float %40 0
+ OpStore %x_3_1_1 %41
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.wgsl.expected.spvasm
index 4cdb9e6..758ec98 100644
--- a/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/struct-used-as-temporary/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 43
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_3_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_3_1_1 "x_3_1_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %S_1 "S_1"
OpMemberName %S_1 0 "field0"
OpName %x_21_1 "x_21_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_3_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_3_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %S_1 0 Offset 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+ %x_3_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_3 = OpVariable %_ptr_Private_v4float Private %5
%S = OpTypeStruct %v4float
%_ptr_Uniform_S = OpTypePointer Uniform %S
%x_5 = OpVariable %_ptr_Uniform_S Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -52,7 +51,7 @@
%26 = OpConstantNull %S_1
%_ptr_Function_v4float = OpTypePointer Function %v4float
%main_out = OpTypeStruct %v4float
- %31 = OpTypeFunction %void %main_out
+ %31 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_21_1 = OpVariable %_ptr_Function_S_1 Function %26
@@ -66,18 +65,17 @@
OpStore %x_3 %30
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %31
-%tint_symbol = OpFunctionParameter %main_out
- %35 = OpLabel
- %36 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %36
- OpReturn
+ %main_inner = OpFunction %main_out None %31
+ %34 = OpLabel
+ %35 = OpFunctionCall %void %main_1
+ %36 = OpLoad %v4float %x_3
+ %37 = OpCompositeConstruct %main_out %36
+ OpReturnValue %37
OpFunctionEnd
%main = OpFunction %void None %11
- %38 = OpLabel
- %39 = OpFunctionCall %void %main_1
- %41 = OpLoad %v4float %x_3
- %42 = OpCompositeConstruct %main_out %41
- %40 = OpFunctionCall %void %tint_symbol_2 %42
+ %39 = OpLabel
+ %40 = OpFunctionCall %main_out %main_inner
+ %41 = OpCompositeExtract %v4float %40 0
+ OpStore %x_3_1_1 %41
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.spvasm.expected.spvasm
index 33527de..b917ae2 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.spvasm.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%float_0 = OpConstant %float 0
%37 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%20 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_1
@@ -74,18 +73,17 @@
OpStore %x_GLF_color %37
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.wgsl.expected.spvasm
index 33527de..b917ae2 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-if-discard/0-opt.wgsl.expected.spvasm
@@ -1,41 +1,40 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 50
+; Bound: 49
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -48,7 +47,7 @@
%float_0 = OpConstant %float 0
%37 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%20 = OpAccessChain %_ptr_Uniform_float %x_5 %uint_0 %uint_1
@@ -74,18 +73,17 @@
OpStore %x_GLF_color %37
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %38
-%tint_symbol = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %41 = OpLabel
+ %42 = OpFunctionCall %void %main_1
+ %43 = OpLoad %v4float %x_GLF_color
+ %44 = OpCompositeConstruct %main_out %43
+ OpReturnValue %44
OpFunctionEnd
%main = OpFunction %void None %12
- %45 = OpLabel
- %46 = OpFunctionCall %void %main_1
- %48 = OpLoad %v4float %x_GLF_color
- %49 = OpCompositeConstruct %main_out %48
- %47 = OpFunctionCall %void %tint_symbol_2 %49
+ %46 = OpLabel
+ %47 = OpFunctionCall %main_out %main_inner
+ %48 = OpCompositeExtract %v4float %47 0
+ OpStore %x_GLF_color_1_1 %48
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.spvasm.expected.spvasm
index a8617fb..467fed2 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %merge_ "merge_"
OpName %main_1 "main_1"
OpName %res "res"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%11 = OpTypeFunction %int
%uint = OpTypeInt 32 0
@@ -53,7 +52,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%merge_ = OpFunction %int None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
@@ -97,18 +96,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %26
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.wgsl.expected.spvasm
index a8617fb..467fed2 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-inside-while-always-return/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "zero"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %merge_ "merge_"
OpName %main_1 "main_1"
OpName %res "res"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%buf0 = OpTypeStruct %float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%11 = OpTypeFunction %int
%uint = OpTypeInt 32 0
@@ -53,7 +52,7 @@
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%merge_ = OpFunction %int None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Uniform_float %x_6 %uint_0
@@ -97,18 +96,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %26
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.spvasm.expected.spvasm
index c5dc9aa..7259a72 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%71 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%72 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -131,18 +130,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %12
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.wgsl.expected.spvasm
index c5dc9aa..7259a72 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-loop-switch-if/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 85
+; Bound: 84
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%71 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%72 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %73 = OpTypeFunction %void %main_out
+ %73 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -131,18 +130,17 @@
%66 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %73
-%tint_symbol = OpFunctionParameter %main_out
- %77 = OpLabel
- %78 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %78
- OpReturn
+ %main_inner = OpFunction %main_out None %73
+ %76 = OpLabel
+ %77 = OpFunctionCall %void %main_1
+ %78 = OpLoad %v4float %x_GLF_color
+ %79 = OpCompositeConstruct %main_out %78
+ OpReturnValue %79
OpFunctionEnd
%main = OpFunction %void None %12
- %80 = OpLabel
- %81 = OpFunctionCall %void %main_1
- %83 = OpLoad %v4float %x_GLF_color
- %84 = OpCompositeConstruct %main_out %83
- %82 = OpFunctionCall %void %tint_symbol_2 %84
+ %81 = OpLabel
+ %82 = OpFunctionCall %main_out %main_inner
+ %83 = OpCompositeExtract %v4float %82 0
+ OpStore %x_GLF_color_1_1 %83
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.spvasm.expected.spvasm
index f8108c8..03a1bd4 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.spvasm.expected.spvasm
@@ -1,29 +1,28 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -34,7 +33,7 @@
%float_0 = OpConstant %float 0
%23 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %24 = OpTypeFunction %void %main_out
+ %24 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpSelectionMerge %12 None
@@ -52,18 +51,17 @@
OpStore %x_GLF_color %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %main_out
- %28 = OpLabel
- %29 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %29
- OpReturn
+ %main_inner = OpFunction %main_out None %24
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %main_1
+ %29 = OpLoad %v4float %x_GLF_color
+ %30 = OpCompositeConstruct %main_out %29
+ OpReturnValue %30
OpFunctionEnd
%main = OpFunction %void None %8
- %31 = OpLabel
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_GLF_color
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_2 %35
+ %32 = OpLabel
+ %33 = OpFunctionCall %main_out %main_inner
+ %34 = OpCompositeExtract %v4float %33 0
+ OpStore %x_GLF_color_1_1 %34
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.wgsl.expected.spvasm
index f8108c8..03a1bd4 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-with-empty-if-false/0.wgsl.expected.spvasm
@@ -1,29 +1,28 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 36
+; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -34,7 +33,7 @@
%float_0 = OpConstant %float 0
%23 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %24 = OpTypeFunction %void %main_out
+ %24 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpSelectionMerge %12 None
@@ -52,18 +51,17 @@
OpStore %x_GLF_color %23
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %24
-%tint_symbol = OpFunctionParameter %main_out
- %28 = OpLabel
- %29 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %29
- OpReturn
+ %main_inner = OpFunction %main_out None %24
+ %27 = OpLabel
+ %28 = OpFunctionCall %void %main_1
+ %29 = OpLoad %v4float %x_GLF_color
+ %30 = OpCompositeConstruct %main_out %29
+ OpReturnValue %30
OpFunctionEnd
%main = OpFunction %void None %8
- %31 = OpLabel
- %32 = OpFunctionCall %void %main_1
- %34 = OpLoad %v4float %x_GLF_color
- %35 = OpCompositeConstruct %main_out %34
- %33 = OpFunctionCall %void %tint_symbol_2 %35
+ %32 = OpLabel
+ %33 = OpFunctionCall %main_out %main_inner
+ %34 = OpCompositeExtract %v4float %33 0
+ OpStore %x_GLF_color_1_1 %34
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.spvasm.expected.spvasm
index 387a26a..43d00ed 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%55 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %value "value"
@@ -22,27 +22,26 @@
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -61,7 +60,7 @@
%int_1 = OpConstant %int 1
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -132,18 +131,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %12
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.wgsl.expected.spvasm
index 387a26a..43d00ed 100644
--- a/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/switch-with-fall-through-cases/0-opt.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
%55 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %value "value"
@@ -22,27 +22,26 @@
OpName %x_46_phi "x_46_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -61,7 +60,7 @@
%int_1 = OpConstant %int 1
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%i = OpVariable %_ptr_Function_int Function %19
@@ -132,18 +131,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %12
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.spvasm.expected.spvasm
index 7ed4633..11bba6d 100644
--- a/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.spvasm.expected.spvasm
@@ -5,34 +5,34 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_37 "x_37"
OpName %x_38_phi "x_38_phi"
OpName %x_48_phi "x_48_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -59,7 +59,7 @@
%46 = OpConstantComposite %mat3v4float %43 %44 %45
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_37 = OpVariable %_ptr_Function_mat4v3float Function %19
@@ -109,20 +109,20 @@
OpStore %x_GLF_color %64
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %11
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.wgsl.expected.spvasm
index 7ed4633..11bba6d 100644
--- a/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/transpose-rectangular-matrix/0.wgsl.expected.spvasm
@@ -5,34 +5,34 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_37 "x_37"
OpName %x_38_phi "x_38_phi"
OpName %x_48_phi "x_48_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -59,7 +59,7 @@
%46 = OpConstantComposite %mat3v4float %43 %44 %45
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %v4float
- %65 = OpTypeFunction %void %main_out
+ %65 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_37 = OpVariable %_ptr_Function_mat4v3float Function %19
@@ -109,20 +109,20 @@
OpStore %x_GLF_color %64
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %65
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %65
+%gl_FragCoord_param = OpFunctionParameter %v4float
%69 = OpLabel
- %70 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %70
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %70 = OpFunctionCall %void %main_1
+ %71 = OpLoad %v4float %x_GLF_color
+ %72 = OpCompositeConstruct %main_out %71
+ OpReturnValue %72
OpFunctionEnd
%main = OpFunction %void None %11
- %72 = OpLabel
- %73 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %73
- %74 = OpFunctionCall %void %main_1
- %76 = OpLoad %v4float %x_GLF_color
- %77 = OpCompositeConstruct %main_out %76
- %75 = OpFunctionCall %void %tint_symbol_3 %77
+ %74 = OpLabel
+ %76 = OpLoad %v4float %gl_FragCoord_param_1
+ %75 = OpFunctionCall %main_out %main_inner %76
+ %77 = OpCompositeExtract %v4float %75 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.spvasm.expected.spvasm
index 8dcb827..43f37e2 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %odd_index "odd_index"
OpName %even_index "even_index"
@@ -23,31 +23,31 @@
OpName %x_60_phi "x_60_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -72,7 +72,7 @@
%int_3 = OpConstant %int 3
%130 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %133 = OpTypeFunction %void %main_out
+ %133 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%odd_index = OpVariable %_ptr_Function_int Function %22
@@ -235,20 +235,20 @@
%70 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %133
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %133
+%gl_FragCoord_param = OpFunctionParameter %v4float
%137 = OpLabel
- %138 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %138
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %138 = OpFunctionCall %void %main_1
+ %139 = OpLoad %v4float %x_GLF_color
+ %140 = OpCompositeConstruct %main_out %139
+ OpReturnValue %140
OpFunctionEnd
%main = OpFunction %void None %15
- %140 = OpLabel
- %141 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %141
- %142 = OpFunctionCall %void %main_1
- %144 = OpLoad %v4float %x_GLF_color
- %145 = OpCompositeConstruct %main_out %144
- %143 = OpFunctionCall %void %tint_symbol_3 %145
+ %142 = OpLabel
+ %144 = OpLoad %v4float %gl_FragCoord_param_1
+ %143 = OpFunctionCall %main_out %main_inner %144
+ %145 = OpCompositeExtract %v4float %143 0
+ OpStore %x_GLF_color_1_1 %145
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.wgsl.expected.spvasm
index 8dcb827..43f37e2 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-2-iteration-loops/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %odd_index "odd_index"
OpName %even_index "even_index"
@@ -23,31 +23,31 @@
OpName %x_60_phi "x_60_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -72,7 +72,7 @@
%int_3 = OpConstant %int 3
%130 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %133 = OpTypeFunction %void %main_out
+ %133 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%odd_index = OpVariable %_ptr_Function_int Function %22
@@ -235,20 +235,20 @@
%70 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %133
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %133
+%gl_FragCoord_param = OpFunctionParameter %v4float
%137 = OpLabel
- %138 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %138
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %138 = OpFunctionCall %void %main_1
+ %139 = OpLoad %v4float %x_GLF_color
+ %140 = OpCompositeConstruct %main_out %139
+ OpReturnValue %140
OpFunctionEnd
%main = OpFunction %void None %15
- %140 = OpLabel
- %141 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %141
- %142 = OpFunctionCall %void %main_1
- %144 = OpLoad %v4float %x_GLF_color
- %145 = OpCompositeConstruct %main_out %144
- %143 = OpFunctionCall %void %tint_symbol_3 %145
+ %142 = OpLabel
+ %144 = OpLoad %v4float %gl_FragCoord_param_1
+ %143 = OpFunctionCall %main_out %main_inner %144
+ %145 = OpCompositeExtract %v4float %143 0
+ OpStore %x_GLF_color_1_1 %145
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.spvasm.expected.spvasm
index 3f924a6..7c2ac86 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.spvasm.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "matrix_a_uni"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %matrix_u "matrix_u"
@@ -21,9 +21,9 @@
OpName %x_42 "x_42"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpMemberDecorate %buf0 0 ColMajor
@@ -31,19 +31,18 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%mat4v4float = OpTypeMatrix %v4float 4
%buf0 = OpTypeStruct %mat4v4float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -64,14 +63,14 @@
%float_0 = OpConstant %float 0
%76 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x = OpVariable %_ptr_Function_int Function %19
- %matrix_u = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_u = OpVariable %_ptr_Function_v4float Function %5
%b = OpVariable %_ptr_Function_int Function %19
- %matrix_b = OpVariable %_ptr_Function_v4float Function %9
- %x_42 = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_b = OpVariable %_ptr_Function_v4float Function %5
+ %x_42 = OpVariable %_ptr_Function_v4float Function %5
OpStore %x %int_4
OpBranch %26
%26 = OpLabel
@@ -143,18 +142,17 @@
OpStore %x_GLF_color %76
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %12
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.wgsl.expected.spvasm
index 3f924a6..7c2ac86 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-matrix/0.wgsl.expected.spvasm
@@ -1,18 +1,18 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 89
+; Bound: 88
; Schema: 0
OpCapability Shader
%67 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "matrix_a_uni"
OpName %x_8 "x_8"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x "x"
OpName %matrix_u "matrix_u"
@@ -21,9 +21,9 @@
OpName %x_42 "x_42"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpMemberDecorate %buf0 0 ColMajor
@@ -31,19 +31,18 @@
OpDecorate %x_8 NonWritable
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%mat4v4float = OpTypeMatrix %v4float 4
%buf0 = OpTypeStruct %mat4v4float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_8 = OpVariable %_ptr_Uniform_buf0 Uniform
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -64,14 +63,14 @@
%float_0 = OpConstant %float 0
%76 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %77 = OpTypeFunction %void %main_out
+ %77 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x = OpVariable %_ptr_Function_int Function %19
- %matrix_u = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_u = OpVariable %_ptr_Function_v4float Function %5
%b = OpVariable %_ptr_Function_int Function %19
- %matrix_b = OpVariable %_ptr_Function_v4float Function %9
- %x_42 = OpVariable %_ptr_Function_v4float Function %9
+ %matrix_b = OpVariable %_ptr_Function_v4float Function %5
+ %x_42 = OpVariable %_ptr_Function_v4float Function %5
OpStore %x %int_4
OpBranch %26
%26 = OpLabel
@@ -143,18 +142,17 @@
OpStore %x_GLF_color %76
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %77
-%tint_symbol = OpFunctionParameter %main_out
- %81 = OpLabel
- %82 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %82
- OpReturn
+ %main_inner = OpFunction %main_out None %77
+ %80 = OpLabel
+ %81 = OpFunctionCall %void %main_1
+ %82 = OpLoad %v4float %x_GLF_color
+ %83 = OpCompositeConstruct %main_out %82
+ OpReturnValue %83
OpFunctionEnd
%main = OpFunction %void None %12
- %84 = OpLabel
- %85 = OpFunctionCall %void %main_1
- %87 = OpLoad %v4float %x_GLF_color
- %88 = OpCompositeConstruct %main_out %87
- %86 = OpFunctionCall %void %tint_symbol_2 %88
+ %85 = OpLabel
+ %86 = OpFunctionCall %main_out %main_inner
+ %87 = OpCompositeExtract %v4float %86 0
+ OpStore %x_GLF_color_1_1 %87
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.spvasm.expected.spvasm
index c14f116..82afbcc 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 104
+; Bound: 103
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %StructType "StructType"
OpMemberName %StructType 0 "col"
@@ -29,29 +29,28 @@
OpName %x_8 "x_8"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %StructType 0 Offset 0
OpMemberDecorate %StructType 1 Offset 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -78,7 +77,7 @@
%62 = OpConstantComposite %v3float %float_1 %float_0 %float_0
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_33 = OpVariable %_ptr_Function_StructType Function %22
@@ -172,18 +171,17 @@
OpStore %x_GLF_color %91
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %92
-%tint_symbol = OpFunctionParameter %main_out
- %96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %97
- OpReturn
+ %main_inner = OpFunction %main_out None %92
+ %95 = OpLabel
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %12
- %99 = OpLabel
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_2 %103
+ %100 = OpLabel
+ %101 = OpFunctionCall %main_out %main_inner
+ %102 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %102
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.wgsl.expected.spvasm
index c14f116..82afbcc 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-set-struct/0.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 104
+; Bound: 103
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %StructType "StructType"
OpMemberName %StructType 0 "col"
@@ -29,29 +29,28 @@
OpName %x_8 "x_8"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %StructType 0 Offset 0
OpMemberDecorate %StructType 1 Offset 16
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -78,7 +77,7 @@
%62 = OpConstantComposite %v3float %float_1 %float_0 %float_0
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_33 = OpVariable %_ptr_Function_StructType Function %22
@@ -172,18 +171,17 @@
OpStore %x_GLF_color %91
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %92
-%tint_symbol = OpFunctionParameter %main_out
- %96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %97
- OpReturn
+ %main_inner = OpFunction %main_out None %92
+ %95 = OpLabel
+ %96 = OpFunctionCall %void %main_1
+ %97 = OpLoad %v4float %x_GLF_color
+ %98 = OpCompositeConstruct %main_out %97
+ OpReturnValue %98
OpFunctionEnd
%main = OpFunction %void None %12
- %99 = OpLabel
- %100 = OpFunctionCall %void %main_1
- %102 = OpLoad %v4float %x_GLF_color
- %103 = OpCompositeConstruct %main_out %102
- %101 = OpFunctionCall %void %tint_symbol_2 %103
+ %100 = OpLabel
+ %101 = OpFunctionCall %main_out %main_inner
+ %102 = OpCompositeExtract %v4float %101 0
+ OpStore %x_GLF_color_1_1 %102
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.spvasm.expected.spvasm
index 9128fc2..5901065 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live15c "GLF_live15c"
OpName %GLF_live15i "GLF_live15i"
@@ -16,18 +16,17 @@
OpName %GLF_live15i_1 "GLF_live15i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -47,7 +46,7 @@
%int_1 = OpConstant %int 1
%75 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%GLF_live15c = OpVariable %_ptr_Function_v4float Function %5
@@ -139,18 +138,17 @@
OpStore %x_GLF_color %75
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %8
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.wgsl.expected.spvasm
index 9128fc2..5901065 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-loops-with-break/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 88
+; Bound: 87
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_live15c "GLF_live15c"
OpName %GLF_live15i "GLF_live15i"
@@ -16,18 +16,17 @@
OpName %GLF_live15i_1 "GLF_live15i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
@@ -47,7 +46,7 @@
%int_1 = OpConstant %int 1
%75 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %76 = OpTypeFunction %void %main_out
+ %76 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%GLF_live15c = OpVariable %_ptr_Function_v4float Function %5
@@ -139,18 +138,17 @@
OpStore %x_GLF_color %75
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %76
-%tint_symbol = OpFunctionParameter %main_out
- %80 = OpLabel
- %81 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %81
- OpReturn
+ %main_inner = OpFunction %main_out None %76
+ %79 = OpLabel
+ %80 = OpFunctionCall %void %main_1
+ %81 = OpLoad %v4float %x_GLF_color
+ %82 = OpCompositeConstruct %main_out %81
+ OpReturnValue %82
OpFunctionEnd
%main = OpFunction %void None %8
- %83 = OpLabel
- %84 = OpFunctionCall %void %main_1
- %86 = OpLoad %v4float %x_GLF_color
- %87 = OpCompositeConstruct %main_out %86
- %85 = OpFunctionCall %void %tint_symbol_2 %87
+ %84 = OpLabel
+ %85 = OpFunctionCall %main_out %main_inner
+ %86 = OpCompositeExtract %v4float %85 0
+ OpStore %x_GLF_color_1_1 %86
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.spvasm.expected.spvasm
index 41506cd..0be0727 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %i_1 "i_1"
@@ -21,31 +21,31 @@
OpName %x_42 "x_42"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -68,7 +68,7 @@
%int_1 = OpConstant %int 1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %22
@@ -176,20 +176,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %92
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %92
+%gl_FragCoord_param = OpFunctionParameter %v4float
%96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %97
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %97 = OpFunctionCall %void %main_1
+ %98 = OpLoad %v4float %x_GLF_color
+ %99 = OpCompositeConstruct %main_out %98
+ OpReturnValue %99
OpFunctionEnd
%main = OpFunction %void None %15
- %99 = OpLabel
- %100 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %100
- %101 = OpFunctionCall %void %main_1
- %103 = OpLoad %v4float %x_GLF_color
- %104 = OpCompositeConstruct %main_out %103
- %102 = OpFunctionCall %void %tint_symbol_3 %104
+ %101 = OpLabel
+ %103 = OpLoad %v4float %gl_FragCoord_param_1
+ %102 = OpFunctionCall %main_out %main_inner %103
+ %104 = OpCompositeExtract %v4float %102 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.wgsl.expected.spvasm
index 41506cd..0be0727 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-nested-do-whiles/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %i "i"
OpName %i_1 "i_1"
@@ -21,31 +21,31 @@
OpName %x_42 "x_42"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%15 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -68,7 +68,7 @@
%int_1 = OpConstant %int 1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %92 = OpTypeFunction %void %main_out
+ %92 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %15
%18 = OpLabel
%i = OpVariable %_ptr_Function_int Function %22
@@ -176,20 +176,20 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %92
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %92
+%gl_FragCoord_param = OpFunctionParameter %v4float
%96 = OpLabel
- %97 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %97
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %97 = OpFunctionCall %void %main_1
+ %98 = OpLoad %v4float %x_GLF_color
+ %99 = OpCompositeConstruct %main_out %98
+ OpReturnValue %99
OpFunctionEnd
%main = OpFunction %void None %15
- %99 = OpLabel
- %100 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %100
- %101 = OpFunctionCall %void %main_1
- %103 = OpLoad %v4float %x_GLF_color
- %104 = OpCompositeConstruct %main_out %103
- %102 = OpFunctionCall %void %tint_symbol_3 %104
+ %101 = OpLabel
+ %103 = OpLoad %v4float %gl_FragCoord_param_1
+ %102 = OpFunctionCall %main_out %main_inner %103
+ %104 = OpCompositeExtract %v4float %102 0
+ OpStore %x_GLF_color_1_1 %104
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.spvasm.expected.spvasm
index 8d1e068..2ce771a 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %k "k"
OpName %main_1 "main_1"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%12 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -58,7 +57,7 @@
%float_0 = OpConstant %float 0
%57 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %12
%15 = OpLabel
%k = OpVariable %_ptr_Function_int Function %19
@@ -115,18 +114,17 @@
OpStore %x_GLF_color %57
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %32
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.wgsl.expected.spvasm
index 8d1e068..2ce771a 100644
--- a/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/two-nested-infinite-loops-discard/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 70
+; Bound: 69
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %k "k"
OpName %main_1 "main_1"
OpName %j "j"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%12 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -58,7 +57,7 @@
%float_0 = OpConstant %float 0
%57 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %58 = OpTypeFunction %void %main_out
+ %58 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %12
%15 = OpLabel
%k = OpVariable %_ptr_Function_int Function %19
@@ -115,18 +114,17 @@
OpStore %x_GLF_color %57
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %58
-%tint_symbol = OpFunctionParameter %main_out
- %62 = OpLabel
- %63 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %63
- OpReturn
+ %main_inner = OpFunction %main_out None %58
+ %61 = OpLabel
+ %62 = OpFunctionCall %void %main_1
+ %63 = OpLoad %v4float %x_GLF_color
+ %64 = OpCompositeConstruct %main_out %63
+ OpReturnValue %64
OpFunctionEnd
%main = OpFunction %void None %32
- %65 = OpLabel
- %66 = OpFunctionCall %void %main_1
- %68 = OpLoad %v4float %x_GLF_color
- %69 = OpCompositeConstruct %main_out %68
- %67 = OpFunctionCall %void %tint_symbol_2 %69
+ %66 = OpLabel
+ %67 = OpFunctionCall %main_out %main_inner
+ %68 = OpCompositeExtract %v4float %67 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.spvasm.expected.spvasm
index 4f5ea06..1db59f9 100644
--- a/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.spvasm.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_dead6index "GLF_dead6index"
OpName %GLF_dead6currentNode "GLF_dead6currentNode"
OpName %donor_replacementGLF_dead6tree "donor_replacementGLF_dead6tree"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%bool = OpTypeBool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%GLF_dead6index = OpVariable %_ptr_Function_int Function %19
@@ -99,18 +98,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %51
-%tint_symbol = OpFunctionParameter %main_out
- %55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %56
- OpReturn
+ %main_inner = OpFunction %main_out None %51
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %v4float %x_GLF_color
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %12
- %58 = OpLabel
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %v4float %x_GLF_color
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_2 %62
+ %59 = OpLabel
+ %60 = OpFunctionCall %main_out %main_inner
+ %61 = OpCompositeExtract %v4float %60 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.wgsl.expected.spvasm
index 4f5ea06..1db59f9 100644
--- a/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/undefined-assign-in-infinite-loop/0.wgsl.expected.spvasm
@@ -1,45 +1,44 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 62
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %GLF_dead6index "GLF_dead6index"
OpName %GLF_dead6currentNode "GLF_dead6currentNode"
OpName %donor_replacementGLF_dead6tree "donor_replacementGLF_dead6tree"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_int_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -59,7 +58,7 @@
%bool = OpTypeBool
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %51 = OpTypeFunction %void %main_out
+ %51 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%GLF_dead6index = OpVariable %_ptr_Function_int Function %19
@@ -99,18 +98,17 @@
%37 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %51
-%tint_symbol = OpFunctionParameter %main_out
- %55 = OpLabel
- %56 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %56
- OpReturn
+ %main_inner = OpFunction %main_out None %51
+ %54 = OpLabel
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %v4float %x_GLF_color
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %12
- %58 = OpLabel
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %v4float %x_GLF_color
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_2 %62
+ %59 = OpLabel
+ %60 = OpFunctionCall %main_out %main_inner
+ %61 = OpCompositeExtract %v4float %60 0
+ OpStore %x_GLF_color_1_1 %61
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.spvasm.expected.spvasm
index e3fd9f3..5cee8f7 100644
--- a/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %performPartition_ "performPartition_"
OpName %GLF_live0i "GLF_live0i"
OpName %i "i"
@@ -22,27 +22,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%void = OpTypeVoid
%67 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%performPartition_ = OpFunction %int None %12
%15 = OpLabel
%GLF_live0i = OpVariable %_ptr_Function_int Function %18
@@ -143,18 +142,17 @@
%71 = OpFunctionCall %int %performPartition_
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %67
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.wgsl.expected.spvasm
index e3fd9f3..5cee8f7 100644
--- a/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/undefined-integer-in-function/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 84
+; Bound: 83
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %performPartition_ "performPartition_"
OpName %GLF_live0i "GLF_live0i"
OpName %i "i"
@@ -22,27 +22,26 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%12 = OpTypeFunction %int
%_ptr_Function_int = OpTypePointer Function %int
@@ -63,7 +62,7 @@
%void = OpTypeVoid
%67 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %72 = OpTypeFunction %void %main_out
+ %72 = OpTypeFunction %main_out
%performPartition_ = OpFunction %int None %12
%15 = OpLabel
%GLF_live0i = OpVariable %_ptr_Function_int Function %18
@@ -143,18 +142,17 @@
%71 = OpFunctionCall %int %performPartition_
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %72
-%tint_symbol = OpFunctionParameter %main_out
- %76 = OpLabel
- %77 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %77
- OpReturn
+ %main_inner = OpFunction %main_out None %72
+ %75 = OpLabel
+ %76 = OpFunctionCall %void %main_1
+ %77 = OpLoad %v4float %x_GLF_color
+ %78 = OpCompositeConstruct %main_out %77
+ OpReturnValue %78
OpFunctionEnd
%main = OpFunction %void None %67
- %79 = OpLabel
- %80 = OpFunctionCall %void %main_1
- %82 = OpLoad %v4float %x_GLF_color
- %83 = OpCompositeConstruct %main_out %82
- %81 = OpFunctionCall %void %tint_symbol_2 %83
+ %80 = OpLabel
+ %81 = OpFunctionCall %main_out %main_inner
+ %82 = OpCompositeExtract %v4float %81 0
+ OpStore %x_GLF_color_1_1 %82
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.spvasm.expected.spvasm
index 2cc6d3b..f829f24 100644
--- a/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.spvasm.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_32_phi "x_32_phi"
OpName %x_33_phi "x_33_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -52,7 +51,7 @@
%float_1 = OpConstant %float 1
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_30 = OpVariable %_ptr_Function_float Function %18
@@ -87,18 +86,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %43
-%tint_symbol = OpFunctionParameter %main_out
- %47 = OpLabel
- %48 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %48
- OpReturn
+ %main_inner = OpFunction %main_out None %43
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %main_1
+ %48 = OpLoad %v4float %x_GLF_color
+ %49 = OpCompositeConstruct %main_out %48
+ OpReturnValue %49
OpFunctionEnd
%main = OpFunction %void None %12
- %50 = OpLabel
- %51 = OpFunctionCall %void %main_1
- %53 = OpLoad %v4float %x_GLF_color
- %54 = OpCompositeConstruct %main_out %53
- %52 = OpFunctionCall %void %tint_symbol_2 %54
+ %51 = OpLabel
+ %52 = OpFunctionCall %main_out %main_inner
+ %53 = OpCompositeExtract %v4float %52 0
+ OpStore %x_GLF_color_1_1 %53
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.wgsl.expected.spvasm
index 2cc6d3b..f829f24 100644
--- a/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uninit-element-cast-in-loop/0-opt.wgsl.expected.spvasm
@@ -1,44 +1,43 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 55
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_5 "x_5"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %x_32_phi "x_32_phi"
OpName %x_33_phi "x_33_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -52,7 +51,7 @@
%float_1 = OpConstant %float 1
%42 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%x_30 = OpVariable %_ptr_Function_float Function %18
@@ -87,18 +86,17 @@
%22 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %43
-%tint_symbol = OpFunctionParameter %main_out
- %47 = OpLabel
- %48 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %48
- OpReturn
+ %main_inner = OpFunction %main_out None %43
+ %46 = OpLabel
+ %47 = OpFunctionCall %void %main_1
+ %48 = OpLoad %v4float %x_GLF_color
+ %49 = OpCompositeConstruct %main_out %48
+ OpReturnValue %49
OpFunctionEnd
%main = OpFunction %void None %12
- %50 = OpLabel
- %51 = OpFunctionCall %void %main_1
- %53 = OpLoad %v4float %x_GLF_color
- %54 = OpCompositeConstruct %main_out %53
- %52 = OpFunctionCall %void %tint_symbol_2 %54
+ %51 = OpLabel
+ %52 = OpFunctionCall %main_out %main_inner
+ %53 = OpCompositeExtract %v4float %52 0
+ OpStore %x_GLF_color_1_1 %53
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.spvasm.expected.spvasm
index 10ff9fa..1428dab 100644
--- a/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.spvasm.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %foo "foo"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -50,7 +50,7 @@
%int_1 = OpConstant %int 1
%uint_178493 = OpConstant %uint 178493
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_30 = OpVariable %_ptr_Function_float Function %17
@@ -81,20 +81,20 @@
OpStore %46 %45
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %47
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %47
+%gl_FragCoord_param = OpFunctionParameter %v4float
%51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %52
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %11
- %54 = OpLabel
- %55 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %55
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_3 %59
+ %56 = OpLabel
+ %58 = OpLoad %v4float %gl_FragCoord_param_1
+ %57 = OpFunctionCall %main_out %main_inner %58
+ %59 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.wgsl.expected.spvasm
index 10ff9fa..1428dab 100644
--- a/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uninitialized-var-decrement-and-add/0-opt.wgsl.expected.spvasm
@@ -5,33 +5,33 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_30 "x_30"
OpName %foo "foo"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -50,7 +50,7 @@
%int_1 = OpConstant %int 1
%uint_178493 = OpConstant %uint 178493
%main_out = OpTypeStruct %v4float
- %47 = OpTypeFunction %void %main_out
+ %47 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%x_30 = OpVariable %_ptr_Function_float Function %17
@@ -81,20 +81,20 @@
OpStore %46 %45
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %47
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %47
+%gl_FragCoord_param = OpFunctionParameter %v4float
%51 = OpLabel
- %52 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %52
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %52 = OpFunctionCall %void %main_1
+ %53 = OpLoad %v4float %x_GLF_color
+ %54 = OpCompositeConstruct %main_out %53
+ OpReturnValue %54
OpFunctionEnd
%main = OpFunction %void None %11
- %54 = OpLabel
- %55 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %55
- %56 = OpFunctionCall %void %main_1
- %58 = OpLoad %v4float %x_GLF_color
- %59 = OpCompositeConstruct %main_out %58
- %57 = OpFunctionCall %void %tint_symbol_3 %59
+ %56 = OpLabel
+ %58 = OpLoad %v4float %gl_FragCoord_param_1
+ %57 = OpFunctionCall %main_out %main_inner %58
+ %59 = OpCompositeExtract %v4float %57 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.spvasm.expected.spvasm
index ee7bed9..051ac1c 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 184
+; Bound: 189
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
@@ -17,7 +18,6 @@
OpName %doesNotMatter "doesNotMatter"
OpMemberName %doesNotMatter 0 "x_compute_data"
OpName %x_15 "x_15"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -25,7 +25,10 @@
OpName %m "m"
OpName %l "l"
OpName %n "n"
+ OpName %main_inner "main_inner"
+ OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -41,13 +44,14 @@
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
OpDecorate %_arr_float_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %7
%float = OpTypeFloat 32
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
@@ -61,8 +65,6 @@
%doesNotMatter = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_doesNotMatter = OpTypePointer StorageBuffer %doesNotMatter
%x_15 = OpVariable %_ptr_StorageBuffer_doesNotMatter StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%21 = OpTypeFunction %void
%uint_1 = OpConstant %uint 1
@@ -94,6 +96,7 @@
%int_2 = OpConstant %int 2
%uint_3 = OpConstant %uint 3
%int_3 = OpConstant %int 3
+ %180 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %21
%24 = OpLabel
%A = OpVariable %_ptr_Function__arr_float_uint_1 Function %29
@@ -301,10 +304,16 @@
OpStore %178 %179
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %180
+%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
+ %183 = OpLabel
+ OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
+ %184 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %21
- %181 = OpLabel
- %182 = OpLoad %v3uint %tint_symbol
- OpStore %gl_GlobalInvocationID %182
- %183 = OpFunctionCall %void %main_1
+ %186 = OpLabel
+ %188 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
+ %187 = OpFunctionCall %void %main_inner %188
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.wgsl.expected.spvasm
index ee7bed9..051ac1c 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 184
+; Bound: 189
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
OpName %buf1 "buf1"
OpMemberName %buf1 0 "injectionSwitch"
@@ -17,7 +18,6 @@
OpName %doesNotMatter "doesNotMatter"
OpMemberName %doesNotMatter 0 "x_compute_data"
OpName %x_15 "x_15"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %A "A"
OpName %i "i"
@@ -25,7 +25,10 @@
OpName %m "m"
OpName %l "l"
OpName %n "n"
+ OpName %main_inner "main_inner"
+ OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
OpName %main "main"
+ OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
OpDecorate %buf1 Block
OpMemberDecorate %buf1 0 Offset 0
OpDecorate %x_10 NonWritable
@@ -41,13 +44,14 @@
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_15 DescriptorSet 0
OpDecorate %x_15 Binding 0
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
OpDecorate %_arr_float_uint_1 ArrayStride 4
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %7
%float = OpTypeFloat 32
%v2float = OpTypeVector %float 2
%buf1 = OpTypeStruct %v2float
@@ -61,8 +65,6 @@
%doesNotMatter = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_doesNotMatter = OpTypePointer StorageBuffer %doesNotMatter
%x_15 = OpVariable %_ptr_StorageBuffer_doesNotMatter StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%21 = OpTypeFunction %void
%uint_1 = OpConstant %uint 1
@@ -94,6 +96,7 @@
%int_2 = OpConstant %int 2
%uint_3 = OpConstant %uint 3
%int_3 = OpConstant %int 3
+ %180 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %21
%24 = OpLabel
%A = OpVariable %_ptr_Function__arr_float_uint_1 Function %29
@@ -301,10 +304,16 @@
OpStore %178 %179
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %180
+%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
+ %183 = OpLabel
+ OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
+ %184 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %21
- %181 = OpLabel
- %182 = OpLoad %v3uint %tint_symbol
- OpStore %gl_GlobalInvocationID %182
- %183 = OpFunctionCall %void %main_1
+ %186 = OpLabel
+ %188 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
+ %187 = OpFunctionCall %void %main_inner %188
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.spvasm.expected.spvasm
index d114d3c..6ec6c51 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %computeColor_ "computeColor_"
OpName %x_injected_loop_counter "x_injected_loop_counter"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%v3float = OpTypeVector %float 3
%12 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%void = OpTypeVoid
%45 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%computeColor_ = OpFunction %v3float None %12
%15 = OpLabel
%x_injected_loop_counter = OpVariable %_ptr_Function_int Function %19
@@ -96,18 +95,17 @@
%49 = OpFunctionCall %v3float %computeColor_
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %45
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.wgsl.expected.spvasm
index d114d3c..6ec6c51 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-continue-statement/0.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %computeColor_ "computeColor_"
OpName %x_injected_loop_counter "x_injected_loop_counter"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%v3float = OpTypeVector %float 3
%12 = OpTypeFunction %v3float
%int = OpTypeInt 32 1
@@ -56,7 +55,7 @@
%void = OpTypeVoid
%45 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%computeColor_ = OpFunction %v3float None %12
%15 = OpLabel
%x_injected_loop_counter = OpVariable %_ptr_Function_int Function %19
@@ -96,18 +95,17 @@
%49 = OpFunctionCall %v3float %computeColor_
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %45
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.spvasm.expected.spvasm
index c4ffa4c..700fc29 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.spvasm.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %computePoint_ "computePoint_"
OpName %main_1 "main_1"
OpName %x_34 "x_34"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%15 = OpTypeFunction %v3float
%uint = OpTypeInt 32 0
@@ -63,7 +63,7 @@
%float_1 = OpConstant %float 1
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out %v4float
%computePoint_ = OpFunction %v3float None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %uint_0
@@ -106,20 +106,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %56
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %56
+%gl_FragCoord_param = OpFunctionParameter %v4float
%60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %61
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %33
- %63 = OpLabel
- %64 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %64
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_3 %68
+ %65 = OpLabel
+ %67 = OpLoad %v4float %gl_FragCoord_param_1
+ %66 = OpFunctionCall %main_out %main_inner %67
+ %68 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.wgsl.expected.spvasm
index c4ffa4c..700fc29 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement-in-if/0-opt.wgsl.expected.spvasm
@@ -5,45 +5,45 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_7 "x_7"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %computePoint_ "computePoint_"
OpName %main_1 "main_1"
OpName %x_34 "x_34"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_7 NonWritable
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_7 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %9
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %9
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%v3float = OpTypeVector %float 3
%15 = OpTypeFunction %v3float
%uint = OpTypeInt 32 0
@@ -63,7 +63,7 @@
%float_1 = OpConstant %float 1
%55 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %56 = OpTypeFunction %void %main_out
+ %56 = OpTypeFunction %main_out %v4float
%computePoint_ = OpFunction %v3float None %15
%18 = OpLabel
%22 = OpAccessChain %_ptr_Uniform_float %x_7 %uint_0 %uint_0
@@ -106,20 +106,20 @@
%42 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %56
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %56
+%gl_FragCoord_param = OpFunctionParameter %v4float
%60 = OpLabel
- %61 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %61
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %61 = OpFunctionCall %void %main_1
+ %62 = OpLoad %v4float %x_GLF_color
+ %63 = OpCompositeConstruct %main_out %62
+ OpReturnValue %63
OpFunctionEnd
%main = OpFunction %void None %33
- %63 = OpLabel
- %64 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %64
- %65 = OpFunctionCall %void %main_1
- %67 = OpLoad %v4float %x_GLF_color
- %68 = OpCompositeConstruct %main_out %67
- %66 = OpFunctionCall %void %tint_symbol_3 %68
+ %65 = OpLabel
+ %67 = OpLoad %v4float %gl_FragCoord_param_1
+ %66 = OpFunctionCall %main_out %main_inner %67
+ %68 = OpCompositeExtract %v4float %66 0
+ OpStore %x_GLF_color_1_1 %68
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.spvasm.expected.spvasm
index 422a368..513a87d 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %x_40 "x_40"
OpName %x_41 "x_41"
@@ -17,18 +17,17 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%int_4 = OpConstant %int 4
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %8
%11 = OpLabel
%x_40 = OpVariable %_ptr_Function_bool Function %16
@@ -127,18 +126,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %46
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.wgsl.expected.spvasm
index 422a368..513a87d 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-discard-statement/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 79
+; Bound: 78
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %mand_ "mand_"
OpName %x_40 "x_40"
OpName %x_41 "x_41"
@@ -17,18 +17,17 @@
OpName %i "i"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v3float = OpTypeVector %float 3
%8 = OpTypeFunction %v3float
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%int_4 = OpConstant %int 4
%int_1 = OpConstant %int 1
%main_out = OpTypeStruct %v4float
- %67 = OpTypeFunction %void %main_out
+ %67 = OpTypeFunction %main_out
%mand_ = OpFunction %v3float None %8
%11 = OpLabel
%x_40 = OpVariable %_ptr_Function_bool Function %16
@@ -127,18 +126,17 @@
%54 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %67
-%tint_symbol = OpFunctionParameter %main_out
- %71 = OpLabel
- %72 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %72
- OpReturn
+ %main_inner = OpFunction %main_out None %67
+ %70 = OpLabel
+ %71 = OpFunctionCall %void %main_1
+ %72 = OpLoad %v4float %x_GLF_color
+ %73 = OpCompositeConstruct %main_out %72
+ OpReturnValue %73
OpFunctionEnd
%main = OpFunction %void None %46
- %74 = OpLabel
- %75 = OpFunctionCall %void %main_1
- %77 = OpLoad %v4float %x_GLF_color
- %78 = OpCompositeConstruct %main_out %77
- %76 = OpFunctionCall %void %tint_symbol_2 %78
+ %75 = OpLabel
+ %76 = OpFunctionCall %main_out %main_inner
+ %77 = OpCompositeExtract %v4float %76 0
+ OpStore %x_GLF_color_1_1 %77
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.spvasm.expected.spvasm
index 74f2106..2bd5729 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.spvasm.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %data "data"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +47,7 @@
%true = OpConstantTrue %bool
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -138,18 +137,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %8
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.wgsl.expected.spvasm
index 74f2106..2bd5729 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-loops-in-switch/0.wgsl.expected.spvasm
@@ -1,32 +1,31 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 86
+; Bound: 85
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %i "i"
OpName %data "data"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -48,7 +47,7 @@
%true = OpConstantTrue %bool
%float_2 = OpConstant %float 2
%main_out = OpTypeStruct %v4float
- %74 = OpTypeFunction %void %main_out
+ %74 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%i = OpVariable %_ptr_Function_int Function %15
@@ -138,18 +137,17 @@
%27 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %74
-%tint_symbol = OpFunctionParameter %main_out
- %78 = OpLabel
- %79 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %79
- OpReturn
+ %main_inner = OpFunction %main_out None %74
+ %77 = OpLabel
+ %78 = OpFunctionCall %void %main_1
+ %79 = OpLoad %v4float %x_GLF_color
+ %80 = OpCompositeConstruct %main_out %79
+ OpReturnValue %80
OpFunctionEnd
%main = OpFunction %void None %8
- %81 = OpLabel
- %82 = OpFunctionCall %void %main_1
- %84 = OpLoad %v4float %x_GLF_color
- %85 = OpCompositeConstruct %main_out %84
- %83 = OpFunctionCall %void %tint_symbol_2 %85
+ %82 = OpLabel
+ %83 = OpFunctionCall %main_out %main_inner
+ %84 = OpCompositeExtract %v4float %83 0
+ OpStore %x_GLF_color_1_1 %84
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.spvasm.expected.spvasm
index 3946043..33bdd6f 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.spvasm.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injected"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -54,7 +53,7 @@
%int_1 = OpConstant %int 1
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%m = OpVariable %_ptr_Function_int Function %19
@@ -98,18 +97,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %12
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.wgsl.expected.spvasm
index 3946043..33bdd6f 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-loops/0-opt.wgsl.expected.spvasm
@@ -1,42 +1,41 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 61
+; Bound: 60
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injected"
OpName %x_5 "x_5"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m "m"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_5 NonWritable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_5 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -54,7 +53,7 @@
%int_1 = OpConstant %int 1
%true = OpConstantTrue %bool
%main_out = OpTypeStruct %v4float
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%m = OpVariable %_ptr_Function_int Function %19
@@ -98,18 +97,17 @@
%33 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %49
-%tint_symbol = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %52 = OpLabel
+ %53 = OpFunctionCall %void %main_1
+ %54 = OpLoad %v4float %x_GLF_color
+ %55 = OpCompositeConstruct %main_out %54
+ OpReturnValue %55
OpFunctionEnd
%main = OpFunction %void None %12
- %56 = OpLabel
- %57 = OpFunctionCall %void %main_1
- %59 = OpLoad %v4float %x_GLF_color
- %60 = OpCompositeConstruct %main_out %59
- %58 = OpFunctionCall %void %tint_symbol_2 %60
+ %57 = OpLabel
+ %58 = OpFunctionCall %main_out %main_inner
+ %59 = OpCompositeExtract %v4float %58 0
+ OpStore %x_GLF_color_1_1 %59
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.spvasm.expected.spvasm
index 335fc7b..7c51e65 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_21_phi "x_21_phi"
OpName %x_25 "x_25"
@@ -16,18 +16,17 @@
OpName %x_30_phi "x_30_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -42,7 +41,7 @@
%float_0 = OpConstant %float 0
%44 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_21_phi = OpVariable %_ptr_Function_bool Function %15
@@ -94,18 +93,17 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %8
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.wgsl.expected.spvasm
index 335fc7b..7c51e65 100644
--- a/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/unreachable-return-in-loop/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 57
+; Bound: 56
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %x_21_phi "x_21_phi"
OpName %x_25 "x_25"
@@ -16,18 +16,17 @@
OpName %x_30_phi "x_30_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -42,7 +41,7 @@
%float_0 = OpConstant %float 0
%44 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%x_21_phi = OpVariable %_ptr_Function_bool Function %15
@@ -94,18 +93,17 @@
%18 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %45
-%tint_symbol = OpFunctionParameter %main_out
- %49 = OpLabel
- %50 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %50
- OpReturn
+ %main_inner = OpFunction %main_out None %45
+ %48 = OpLabel
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %v4float %x_GLF_color
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %8
- %52 = OpLabel
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %v4float %x_GLF_color
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_2 %56
+ %53 = OpLabel
+ %54 = OpFunctionCall %main_out %main_inner
+ %55 = OpCompositeExtract %v4float %54 0
+ OpStore %x_GLF_color_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.spvasm.expected.spvasm
index d8fd878..469fad4 100644
--- a/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %c1 "c1"
OpName %uv "uv"
@@ -18,18 +18,17 @@
OpName %x_9_phi "x_9_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%c1 = OpVariable %_ptr_Function_bool Function %15
@@ -102,18 +101,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.wgsl.expected.spvasm
index d8fd878..469fad4 100644
--- a/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/uv-value-comparison-as-boolean/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 67
+; Bound: 66
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %c1 "c1"
OpName %uv "uv"
@@ -18,18 +18,17 @@
OpName %x_9_phi "x_9_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%bool = OpTypeBool
@@ -52,7 +51,7 @@
%48 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%false = OpConstantFalse %bool
%main_out = OpTypeStruct %v4float
- %55 = OpTypeFunction %void %main_out
+ %55 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%c1 = OpVariable %_ptr_Function_bool Function %15
@@ -102,18 +101,17 @@
%53 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %55
-%tint_symbol = OpFunctionParameter %main_out
- %59 = OpLabel
- %60 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %60
- OpReturn
+ %main_inner = OpFunction %main_out None %55
+ %58 = OpLabel
+ %59 = OpFunctionCall %void %main_1
+ %60 = OpLoad %v4float %x_GLF_color
+ %61 = OpCompositeConstruct %main_out %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %8
- %62 = OpLabel
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %v4float %x_GLF_color
- %66 = OpCompositeConstruct %main_out %65
- %64 = OpFunctionCall %void %tint_symbol_2 %66
+ %63 = OpLabel
+ %64 = OpFunctionCall %main_out %main_inner
+ %65 = OpCompositeExtract %v4float %64 0
+ OpStore %x_GLF_color_1_1 %65
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.spvasm.expected.spvasm
index b6beec4..84224dc 100644
--- a/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.spvasm.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %alwaysFalse "alwaysFalse"
OpName %value "value"
@@ -26,31 +26,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
@@ -81,11 +81,11 @@
%155 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%156 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %157 = OpTypeFunction %void %main_out
+ %157 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %15
%17 = OpLabel
%alwaysFalse = OpVariable %_ptr_Function_bool Function %21
- %value = OpVariable %_ptr_Function_v4float Function %5
+ %value = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_v2float Function %26
%i = OpVariable %_ptr_Function_int Function %30
%x_121 = OpVariable %_ptr_Function_bool Function %21
@@ -250,20 +250,20 @@
%152 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %157
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %157
+%gl_FragCoord_param = OpFunctionParameter %v4float
%161 = OpLabel
- %162 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %162
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %162 = OpFunctionCall %void %main_1
+ %163 = OpLoad %v4float %x_GLF_color
+ %164 = OpCompositeConstruct %main_out %163
+ OpReturnValue %164
OpFunctionEnd
%main = OpFunction %void None %124
- %164 = OpLabel
- %165 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %165
- %166 = OpFunctionCall %void %main_1
- %168 = OpLoad %v4float %x_GLF_color
- %169 = OpCompositeConstruct %main_out %168
- %167 = OpFunctionCall %void %tint_symbol_3 %169
+ %166 = OpLabel
+ %168 = OpLoad %v4float %gl_FragCoord_param_1
+ %167 = OpFunctionCall %main_out %main_inner %168
+ %169 = OpCompositeExtract %v4float %167 0
+ OpStore %x_GLF_color_1_1 %169
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.wgsl.expected.spvasm
index b6beec4..84224dc 100644
--- a/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/vector-values-multiplied-by-fragcoord/0-opt.wgsl.expected.spvasm
@@ -5,15 +5,15 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_10 "x_10"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %func_ "func_"
OpName %alwaysFalse "alwaysFalse"
OpName %value "value"
@@ -26,31 +26,31 @@
OpName %i_1 "i_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_10 NonWritable
OpDecorate %x_10 DescriptorSet 0
OpDecorate %x_10 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_10 = OpVariable %_ptr_Uniform_buf0 Uniform
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%15 = OpTypeFunction %float
%bool = OpTypeBool
%_ptr_Function_bool = OpTypePointer Function %bool
@@ -81,11 +81,11 @@
%155 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%156 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %157 = OpTypeFunction %void %main_out
+ %157 = OpTypeFunction %main_out %v4float
%func_ = OpFunction %float None %15
%17 = OpLabel
%alwaysFalse = OpVariable %_ptr_Function_bool Function %21
- %value = OpVariable %_ptr_Function_v4float Function %5
+ %value = OpVariable %_ptr_Function_v4float Function %7
%a = OpVariable %_ptr_Function_v2float Function %26
%i = OpVariable %_ptr_Function_int Function %30
%x_121 = OpVariable %_ptr_Function_bool Function %21
@@ -250,20 +250,20 @@
%152 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %157
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %157
+%gl_FragCoord_param = OpFunctionParameter %v4float
%161 = OpLabel
- %162 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %162
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %162 = OpFunctionCall %void %main_1
+ %163 = OpLoad %v4float %x_GLF_color
+ %164 = OpCompositeConstruct %main_out %163
+ OpReturnValue %164
OpFunctionEnd
%main = OpFunction %void None %124
- %164 = OpLabel
- %165 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %165
- %166 = OpFunctionCall %void %main_1
- %168 = OpLoad %v4float %x_GLF_color
- %169 = OpCompositeConstruct %main_out %168
- %167 = OpFunctionCall %void %tint_symbol_3 %169
+ %166 = OpLabel
+ %168 = OpLoad %v4float %gl_FragCoord_param_1
+ %167 = OpFunctionCall %main_out %main_inner %168
+ %169 = OpCompositeExtract %v4float %167 0
+ OpStore %x_GLF_color_1_1 %169
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.spvasm.expected.spvasm
index 658ed91..9199225 100644
--- a/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %coord "coord"
OpName %tmp3 "tmp3"
@@ -18,19 +18,18 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%8 = OpTypeFunction %int
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%60 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%func_ = OpFunction %int None %8
%11 = OpLabel
%coord = OpVariable %_ptr_Function_v2float Function %15
@@ -104,18 +103,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %49
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.wgsl.expected.spvasm
index 658ed91..9199225 100644
--- a/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/vectors-and-discard-in-function/0.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 73
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %func_ "func_"
OpName %coord "coord"
OpName %tmp3 "tmp3"
@@ -18,19 +18,18 @@
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_1 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%int = OpTypeInt 32 1
%8 = OpTypeFunction %int
%v2float = OpTypeVector %float 2
@@ -56,7 +55,7 @@
%59 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%60 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %61 = OpTypeFunction %void %main_out
+ %61 = OpTypeFunction %main_out
%func_ = OpFunction %int None %8
%11 = OpLabel
%coord = OpVariable %_ptr_Function_v2float Function %15
@@ -104,18 +103,17 @@
%55 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %61
-%tint_symbol = OpFunctionParameter %main_out
- %65 = OpLabel
- %66 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %66
- OpReturn
+ %main_inner = OpFunction %main_out None %61
+ %64 = OpLabel
+ %65 = OpFunctionCall %void %main_1
+ %66 = OpLoad %v4float %x_GLF_color
+ %67 = OpCompositeConstruct %main_out %66
+ OpReturnValue %67
OpFunctionEnd
%main = OpFunction %void None %49
- %68 = OpLabel
- %69 = OpFunctionCall %void %main_1
- %71 = OpLoad %v4float %x_GLF_color
- %72 = OpCompositeConstruct %main_out %71
- %70 = OpFunctionCall %void %tint_symbol_2 %72
+ %69 = OpLabel
+ %70 = OpFunctionCall %main_out %main_inner
+ %71 = OpCompositeExtract %v4float %70 0
+ OpStore %x_GLF_color_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.spvasm.expected.spvasm
index 6aedc1e..a927775 100644
--- a/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %j "j"
OpName %x_41 "x_41"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -55,7 +54,7 @@
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%j = OpVariable %_ptr_Function_int Function %19
@@ -101,18 +100,17 @@
%52 = OpConvertFToS %int %53
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %12
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.wgsl.expected.spvasm
index 6aedc1e..a927775 100644
--- a/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/while-function-always-false/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 66
+; Bound: 65
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %j "j"
OpName %x_41 "x_41"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
@@ -55,7 +54,7 @@
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %54 = OpTypeFunction %void %main_out
+ %54 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%j = OpVariable %_ptr_Function_int Function %19
@@ -101,18 +100,17 @@
%52 = OpConvertFToS %int %53
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %54
-%tint_symbol = OpFunctionParameter %main_out
- %58 = OpLabel
- %59 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %59
- OpReturn
+ %main_inner = OpFunction %main_out None %54
+ %57 = OpLabel
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %v4float %x_GLF_color
+ %60 = OpCompositeConstruct %main_out %59
+ OpReturnValue %60
OpFunctionEnd
%main = OpFunction %void None %12
- %61 = OpLabel
- %62 = OpFunctionCall %void %main_1
- %64 = OpLoad %v4float %x_GLF_color
- %65 = OpCompositeConstruct %main_out %64
- %63 = OpFunctionCall %void %tint_symbol_2 %65
+ %62 = OpLabel
+ %63 = OpFunctionCall %main_out %main_inner
+ %64 = OpCompositeExtract %v4float %63 0
+ OpStore %x_GLF_color_1_1 %64
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.spvasm.expected.spvasm
index ecf8eb6..0e06b9b 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.spvasm.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 146
+; Bound: 145
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injected"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %m43 "m43"
@@ -27,28 +27,27 @@
OpName %GLF_live6sums "GLF_live6sums"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -82,7 +81,7 @@
%int_9 = OpConstant %int 9
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %134 = OpTypeFunction %void %main_out
+ %134 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %18
@@ -223,18 +222,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %134
-%tint_symbol = OpFunctionParameter %main_out
- %138 = OpLabel
- %139 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %139
- OpReturn
+ %main_inner = OpFunction %main_out None %134
+ %137 = OpLabel
+ %138 = OpFunctionCall %void %main_1
+ %139 = OpLoad %v4float %x_GLF_color
+ %140 = OpCompositeConstruct %main_out %139
+ OpReturnValue %140
OpFunctionEnd
%main = OpFunction %void None %12
- %141 = OpLabel
- %142 = OpFunctionCall %void %main_1
- %144 = OpLoad %v4float %x_GLF_color
- %145 = OpCompositeConstruct %main_out %144
- %143 = OpFunctionCall %void %tint_symbol_2 %145
+ %142 = OpLabel
+ %143 = OpFunctionCall %main_out %main_inner
+ %144 = OpCompositeExtract %v4float %143 0
+ OpStore %x_GLF_color_1_1 %144
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.wgsl.expected.spvasm
index 63de0fc..5b39202 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-before-break/0-opt.wgsl.expected.spvasm
@@ -1,17 +1,17 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 152
+; Bound: 151
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injected"
OpName %x_9 "x_9"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %idx "idx"
OpName %m43 "m43"
@@ -27,28 +27,27 @@
OpName %GLF_live6sums "GLF_live6sums"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_9 NonWritable
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%int = OpTypeInt 32 1
%buf0 = OpTypeStruct %int
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_9 = OpVariable %_ptr_Uniform_buf0 Uniform
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -82,7 +81,7 @@
%int_9 = OpConstant %int 9
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %140 = OpTypeFunction %void %main_out
+ %140 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%idx = OpVariable %_ptr_Function_int Function %18
@@ -238,18 +237,17 @@
%49 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %140
-%tint_symbol = OpFunctionParameter %main_out
- %144 = OpLabel
- %145 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %145
- OpReturn
+ %main_inner = OpFunction %main_out None %140
+ %143 = OpLabel
+ %144 = OpFunctionCall %void %main_1
+ %145 = OpLoad %v4float %x_GLF_color
+ %146 = OpCompositeConstruct %main_out %145
+ OpReturnValue %146
OpFunctionEnd
%main = OpFunction %void None %12
- %147 = OpLabel
- %148 = OpFunctionCall %void %main_1
- %150 = OpLoad %v4float %x_GLF_color
- %151 = OpCompositeConstruct %main_out %150
- %149 = OpFunctionCall %void %tint_symbol_2 %151
+ %148 = OpLabel
+ %149 = OpFunctionCall %main_out %main_inner
+ %150 = OpCompositeExtract %v4float %149 0
+ OpStore %x_GLF_color_1_1 %150
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.spvasm.expected.spvasm
index 57b75fe..fa51685 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.spvasm.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -17,8 +19,6 @@
OpName %x_27 "x_27"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -91,9 +91,11 @@
OpName %param_31 "param_31"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -103,35 +105,33 @@
OpDecorate %x_27 NonWritable
OpDecorate %x_27 DescriptorSet 0
OpDecorate %x_27 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_50 ArrayStride 4
OpMemberDecorate %Obj 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %Obj 1 Offset 40
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
+ %15 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %15
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_27 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -201,7 +201,7 @@
%int_20 = OpConstant %int 20
%505 = OpConstantComposite %v3float %float_1 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %514 = OpTypeFunction %void %main_out
+ %514 = OpTypeFunction %main_out %v4float
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %23
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -769,20 +769,20 @@
OpStore %x_GLF_color %513
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %514
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %514
+%gl_FragCoord_param = OpFunctionParameter %v4float
%518 = OpLabel
- %519 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %519
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %519 = OpFunctionCall %void %main_1
+ %520 = OpLoad %v4float %x_GLF_color
+ %521 = OpCompositeConstruct %main_out %520
+ OpReturnValue %521
OpFunctionEnd
%main = OpFunction %void None %271
- %521 = OpLabel
- %522 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %522
- %523 = OpFunctionCall %void %main_1
- %525 = OpLoad %v4float %x_GLF_color
- %526 = OpCompositeConstruct %main_out %525
- %524 = OpFunctionCall %void %tint_symbol_3 %526
+ %523 = OpLabel
+ %525 = OpLoad %v4float %gl_FragCoord_param_1
+ %524 = OpFunctionCall %main_out %main_inner %525
+ %526 = OpCompositeExtract %v4float %524 0
+ OpStore %x_GLF_color_1_1 %526
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.wgsl.expected.spvasm
index 9e387b9..38c7047 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-red-after-search/0-opt.wgsl.expected.spvasm
@@ -5,8 +5,10 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
@@ -17,8 +19,6 @@
OpName %x_27 "x_27"
OpName %gl_FragCoord "gl_FragCoord"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %makeTreeNode_struct_BST_i1_i1_i11_i1_ "makeTreeNode_struct_BST_i1_i1_i11_i1_"
OpName %tree "tree"
OpName %data "data"
@@ -91,9 +91,11 @@
OpName %param_31 "param_31"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %x_GLF_color_1_1 Location 0
OpMemberDecorate %BST 0 Offset 0
OpMemberDecorate %BST 1 Offset 4
OpMemberDecorate %BST 2 Offset 8
@@ -103,35 +105,33 @@
OpDecorate %x_27 NonWritable
OpDecorate %x_27 DescriptorSet 0
OpDecorate %x_27 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpDecorate %_arr_float_uint_50 ArrayStride 4
OpMemberDecorate %Obj 0 Offset 0
OpDecorate %_arr_float_uint_10 ArrayStride 4
OpMemberDecorate %Obj 1 Offset 40
OpMemberDecorate %main_out 0 Offset 0
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %7 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %7
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%_ptr_Private__arr_BST_uint_10 = OpTypePointer Private %_arr_BST_uint_10
- %8 = OpConstantNull %_arr_BST_uint_10
- %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %8
- %float = OpTypeFloat 32
+ %15 = OpConstantNull %_arr_BST_uint_10
+ %tree_1 = OpVariable %_ptr_Private__arr_BST_uint_10 Private %15
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_27 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %17
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %17
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
@@ -201,7 +201,7 @@
%int_20 = OpConstant %int 20
%511 = OpConstantComposite %v3float %float_1 %float_0 %float_0
%main_out = OpTypeStruct %v4float
- %520 = OpTypeFunction %void %main_out
+ %520 = OpTypeFunction %main_out %v4float
%makeTreeNode_struct_BST_i1_i1_i11_i1_ = OpFunction %void None %23
%tree = OpFunctionParameter %_ptr_Function_BST
%data = OpFunctionParameter %_ptr_Function_int
@@ -784,20 +784,20 @@
OpStore %x_GLF_color %519
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %520
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %520
+%gl_FragCoord_param = OpFunctionParameter %v4float
%524 = OpLabel
- %525 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %525
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %525 = OpFunctionCall %void %main_1
+ %526 = OpLoad %v4float %x_GLF_color
+ %527 = OpCompositeConstruct %main_out %526
+ OpReturnValue %527
OpFunctionEnd
%main = OpFunction %void None %273
- %527 = OpLabel
- %528 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %528
- %529 = OpFunctionCall %void %main_1
- %531 = OpLoad %v4float %x_GLF_color
- %532 = OpCompositeConstruct %main_out %531
- %530 = OpFunctionCall %void %tint_symbol_3 %532
+ %529 = OpLabel
+ %531 = OpLoad %v4float %gl_FragCoord_param_1
+ %530 = OpFunctionCall %main_out %main_inner %531
+ %532 = OpCompositeExtract %v4float %530 0
+ OpStore %x_GLF_color_1_1 %532
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.spvasm.expected.spvasm
index 98c20bd..311fb0b 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.spvasm.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 141
+; Bound: 140
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m43 "m43"
OpName %ll1 "ll1"
@@ -24,19 +24,18 @@
OpName %idx "idx"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -72,7 +71,7 @@
%int_9 = OpConstant %int 9
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %129 = OpTypeFunction %void %main_out
+ %129 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m43 = OpVariable %_ptr_Function_mat4v3float Function %16
@@ -212,18 +211,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %129
-%tint_symbol = OpFunctionParameter %main_out
- %133 = OpLabel
- %134 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %134
- OpReturn
+ %main_inner = OpFunction %main_out None %129
+ %132 = OpLabel
+ %133 = OpFunctionCall %void %main_1
+ %134 = OpLoad %v4float %x_GLF_color
+ %135 = OpCompositeConstruct %main_out %134
+ OpReturnValue %135
OpFunctionEnd
%main = OpFunction %void None %8
- %136 = OpLabel
- %137 = OpFunctionCall %void %main_1
- %139 = OpLoad %v4float %x_GLF_color
- %140 = OpCompositeConstruct %main_out %139
- %138 = OpFunctionCall %void %tint_symbol_2 %140
+ %137 = OpLabel
+ %138 = OpFunctionCall %main_out %main_inner
+ %139 = OpCompositeExtract %v4float %138 0
+ OpStore %x_GLF_color_1_1 %139
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.wgsl.expected.spvasm
index 397a1d8..3b569c8 100644
--- a/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/write-red-in-loop-nest/0-opt.wgsl.expected.spvasm
@@ -1,14 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 147
+; Bound: 146
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %m43 "m43"
OpName %ll1 "ll1"
@@ -24,19 +24,18 @@
OpName %idx "idx"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %_arr_float_uint_9 ArrayStride 4
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
@@ -72,7 +71,7 @@
%int_9 = OpConstant %int 9
%uint_1 = OpConstant %uint 1
%main_out = OpTypeStruct %v4float
- %135 = OpTypeFunction %void %main_out
+ %135 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
%m43 = OpVariable %_ptr_Function_mat4v3float Function %16
@@ -227,18 +226,17 @@
%46 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %135
-%tint_symbol = OpFunctionParameter %main_out
- %139 = OpLabel
- %140 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %140
- OpReturn
+ %main_inner = OpFunction %main_out None %135
+ %138 = OpLabel
+ %139 = OpFunctionCall %void %main_1
+ %140 = OpLoad %v4float %x_GLF_color
+ %141 = OpCompositeConstruct %main_out %140
+ OpReturnValue %141
OpFunctionEnd
%main = OpFunction %void None %8
- %142 = OpLabel
- %143 = OpFunctionCall %void %main_1
- %145 = OpLoad %v4float %x_GLF_color
- %146 = OpCompositeConstruct %main_out %145
- %144 = OpFunctionCall %void %tint_symbol_2 %146
+ %143 = OpLabel
+ %144 = OpFunctionCall %main_out %main_inner
+ %145 = OpCompositeExtract %v4float %144 0
+ OpStore %x_GLF_color_1_1 %145
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.spvasm.expected.spvasm
index 864cc6d..adc3c12 100644
--- a/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.spvasm.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %height "height"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -65,7 +64,7 @@
%float_1 = OpConstant %float 1
%49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%height = OpVariable %_ptr_Function_float Function %18
@@ -85,18 +84,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.wgsl.expected.spvasm
index 864cc6d..adc3c12 100644
--- a/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/graphicsfuzz/wrong-color-in-always-false-if/0-opt.wgsl.expected.spvasm
@@ -1,43 +1,42 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 61
; Schema: 0
OpCapability Shader
%33 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
OpName %buf0 "buf0"
OpMemberName %buf0 0 "injectionSwitch"
OpName %x_6 "x_6"
OpName %x_GLF_color "x_GLF_color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %height "height"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_GLF_color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
+ OpDecorate %x_GLF_color_1_1 Location 0
OpDecorate %buf0 Block
OpMemberDecorate %buf0 0 Offset 0
OpDecorate %x_6 NonWritable
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 0
- OpDecorate %tint_symbol_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %5 = OpConstantNull %v4float
+%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%v2float = OpTypeVector %float 2
%buf0 = OpTypeStruct %v2float
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
%x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
- %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
- %9 = OpConstantNull %v4float
-%x_GLF_color = OpVariable %_ptr_Private_v4float Private %9
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %9
+%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%12 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
@@ -65,7 +64,7 @@
%float_1 = OpConstant %float 1
%49 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%main_out = OpTypeStruct %v4float
- %50 = OpTypeFunction %void %main_out
+ %50 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %12
%15 = OpLabel
%height = OpVariable %_ptr_Function_float Function %18
@@ -85,18 +84,17 @@
OpStore %x_GLF_color %49
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %50
-%tint_symbol = OpFunctionParameter %main_out
- %54 = OpLabel
- %55 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %55
- OpReturn
+ %main_inner = OpFunction %main_out None %50
+ %53 = OpLabel
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %v4float %x_GLF_color
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %12
- %57 = OpLabel
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %v4float %x_GLF_color
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_2 %61
+ %58 = OpLabel
+ %59 = OpFunctionCall %main_out %main_inner
+ %60 = OpCompositeExtract %v4float %59 0
+ OpStore %x_GLF_color_1_1 %60
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.spvasm.expected.spvasm
index 85465cc..2656ff8 100644
--- a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 127
+; Bound: 132
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_WorkGroupID_param_1
OpExecutionMode %main LocalSize 4 1 1
+ OpName %gl_WorkGroupID_param_1 "gl_WorkGroupID_param_1"
OpName %gl_WorkGroupID "gl_WorkGroupID"
OpName %In2 "In2"
OpMemberName %In2 0 "data_in2"
@@ -20,7 +21,6 @@
OpName %In0 "In0"
OpMemberName %In0 0 "data_in0"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %base_index_in "base_index_in"
OpName %base_index_out "base_index_out"
@@ -32,7 +32,10 @@
OpName %i "i"
OpName %temp0 "temp0"
OpName %temp1 "temp1"
+ OpName %main_inner "main_inner"
+ OpName %gl_WorkGroupID_param "gl_WorkGroupID_param"
OpName %main "main"
+ OpDecorate %gl_WorkGroupID_param_1 BuiltIn WorkgroupId
OpDecorate %In2 Block
OpMemberDecorate %In2 0 Offset 0
OpDecorate %_arr_int_uint_8 ArrayStride 4
@@ -55,12 +58,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 0
- OpDecorate %tint_symbol BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_WorkGroupID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%uint_8 = OpConstant %uint 8
%_arr_int_uint_8 = OpTypeArray %int %uint_8
@@ -80,8 +84,6 @@
%In0 = OpTypeStruct %_arr_int_uint_512
%_ptr_StorageBuffer_In0 = OpTypePointer StorageBuffer %In0
%x_19 = OpVariable %_ptr_StorageBuffer_In0 StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -100,6 +102,7 @@
%bool = OpTypeBool
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_1 = OpConstant %int 1
+ %123 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %27
%30 = OpLabel
%base_index_in = OpVariable %_ptr_Function_uint Function %33
@@ -215,10 +218,16 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %123
+%gl_WorkGroupID_param = OpFunctionParameter %v3uint
+ %126 = OpLabel
+ OpStore %gl_WorkGroupID %gl_WorkGroupID_param
+ %127 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %27
- %124 = OpLabel
- %125 = OpLoad %v3uint %tint_symbol
- OpStore %gl_WorkGroupID %125
- %126 = OpFunctionCall %void %main_1
+ %129 = OpLabel
+ %131 = OpLoad %v3uint %gl_WorkGroupID_param_1
+ %130 = OpFunctionCall %void %main_inner %131
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.wgsl.expected.spvasm
index 85465cc..2656ff8 100644
--- a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_overflow/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 127
+; Bound: 132
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_WorkGroupID_param_1
OpExecutionMode %main LocalSize 4 1 1
+ OpName %gl_WorkGroupID_param_1 "gl_WorkGroupID_param_1"
OpName %gl_WorkGroupID "gl_WorkGroupID"
OpName %In2 "In2"
OpMemberName %In2 0 "data_in2"
@@ -20,7 +21,6 @@
OpName %In0 "In0"
OpMemberName %In0 0 "data_in0"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %base_index_in "base_index_in"
OpName %base_index_out "base_index_out"
@@ -32,7 +32,10 @@
OpName %i "i"
OpName %temp0 "temp0"
OpName %temp1 "temp1"
+ OpName %main_inner "main_inner"
+ OpName %gl_WorkGroupID_param "gl_WorkGroupID_param"
OpName %main "main"
+ OpDecorate %gl_WorkGroupID_param_1 BuiltIn WorkgroupId
OpDecorate %In2 Block
OpMemberDecorate %In2 0 Offset 0
OpDecorate %_arr_int_uint_8 ArrayStride 4
@@ -55,12 +58,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 0
- OpDecorate %tint_symbol BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_WorkGroupID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%uint_8 = OpConstant %uint 8
%_arr_int_uint_8 = OpTypeArray %int %uint_8
@@ -80,8 +84,6 @@
%In0 = OpTypeStruct %_arr_int_uint_512
%_ptr_StorageBuffer_In0 = OpTypePointer StorageBuffer %In0
%x_19 = OpVariable %_ptr_StorageBuffer_In0 StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -100,6 +102,7 @@
%bool = OpTypeBool
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_1 = OpConstant %int 1
+ %123 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %27
%30 = OpLabel
%base_index_in = OpVariable %_ptr_Function_uint Function %33
@@ -215,10 +218,16 @@
%60 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %123
+%gl_WorkGroupID_param = OpFunctionParameter %v3uint
+ %126 = OpLabel
+ OpStore %gl_WorkGroupID %gl_WorkGroupID_param
+ %127 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %27
- %124 = OpLabel
- %125 = OpLoad %v3uint %tint_symbol
- OpStore %gl_WorkGroupID %125
- %126 = OpFunctionCall %void %main_1
+ %129 = OpLabel
+ %131 = OpLoad %v3uint %gl_WorkGroupID_param_1
+ %130 = OpFunctionCall %void %main_inner %131
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.spvasm.expected.spvasm
index fd4ea43..e9b2b5d 100644
--- a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.spvasm.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 130
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_WorkGroupID_param_1
OpExecutionMode %main LocalSize 4 1 1
+ OpName %gl_WorkGroupID_param_1 "gl_WorkGroupID_param_1"
OpName %gl_WorkGroupID "gl_WorkGroupID"
OpName %In2 "In2"
OpMemberName %In2 0 "data_in2"
@@ -20,7 +21,6 @@
OpName %In1 "In1"
OpMemberName %In1 0 "data_in1"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %base_index_in "base_index_in"
OpName %base_index_out "base_index_out"
@@ -32,7 +32,10 @@
OpName %i "i"
OpName %temp0 "temp0"
OpName %temp1 "temp1"
+ OpName %main_inner "main_inner"
+ OpName %gl_WorkGroupID_param "gl_WorkGroupID_param"
OpName %main "main"
+ OpDecorate %gl_WorkGroupID_param_1 BuiltIn WorkgroupId
OpDecorate %In2 Block
OpMemberDecorate %In2 0 Offset 0
OpDecorate %_arr_int_uint_8 ArrayStride 4
@@ -55,12 +58,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_WorkGroupID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%uint_8 = OpConstant %uint 8
%_arr_int_uint_8 = OpTypeArray %int %uint_8
@@ -80,8 +84,6 @@
%In1 = OpTypeStruct %_arr_int_uint_512
%_ptr_StorageBuffer_In1 = OpTypePointer StorageBuffer %In1
%x_19 = OpVariable %_ptr_StorageBuffer_In1 StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -98,6 +100,7 @@
%bool = OpTypeBool
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_1 = OpConstant %int 1
+ %121 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %27
%30 = OpLabel
%base_index_in = OpVariable %_ptr_Function_uint Function %33
@@ -213,10 +216,16 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %121
+%gl_WorkGroupID_param = OpFunctionParameter %v3uint
+ %124 = OpLabel
+ OpStore %gl_WorkGroupID %gl_WorkGroupID_param
+ %125 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %27
- %122 = OpLabel
- %123 = OpLoad %v3uint %tint_symbol
- OpStore %gl_WorkGroupID %123
- %124 = OpFunctionCall %void %main_1
+ %127 = OpLabel
+ %129 = OpLoad %v3uint %gl_WorkGroupID_param_1
+ %128 = OpFunctionCall %void %main_inner %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.wgsl.expected.spvasm
index fd4ea43..e9b2b5d 100644
--- a/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/non_robust_buffer_access/unexecuted_oob_underflow/0-opt.wgsl.expected.spvasm
@@ -1,12 +1,13 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 125
+; Bound: 130
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %gl_WorkGroupID_param_1
OpExecutionMode %main LocalSize 4 1 1
+ OpName %gl_WorkGroupID_param_1 "gl_WorkGroupID_param_1"
OpName %gl_WorkGroupID "gl_WorkGroupID"
OpName %In2 "In2"
OpMemberName %In2 0 "data_in2"
@@ -20,7 +21,6 @@
OpName %In1 "In1"
OpMemberName %In1 0 "data_in1"
OpName %x_19 "x_19"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
OpName %base_index_in "base_index_in"
OpName %base_index_out "base_index_out"
@@ -32,7 +32,10 @@
OpName %i "i"
OpName %temp0 "temp0"
OpName %temp1 "temp1"
+ OpName %main_inner "main_inner"
+ OpName %gl_WorkGroupID_param "gl_WorkGroupID_param"
OpName %main "main"
+ OpDecorate %gl_WorkGroupID_param_1 BuiltIn WorkgroupId
OpDecorate %In2 Block
OpMemberDecorate %In2 0 Offset 0
OpDecorate %_arr_int_uint_8 ArrayStride 4
@@ -55,12 +58,13 @@
OpDecorate %x_19 NonWritable
OpDecorate %x_19 DescriptorSet 0
OpDecorate %x_19 Binding 1
- OpDecorate %tint_symbol BuiltIn WorkgroupId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%gl_WorkGroupID_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
-%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+%gl_WorkGroupID = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%uint_8 = OpConstant %uint 8
%_arr_int_uint_8 = OpTypeArray %int %uint_8
@@ -80,8 +84,6 @@
%In1 = OpTypeStruct %_arr_int_uint_512
%_ptr_StorageBuffer_In1 = OpTypePointer StorageBuffer %In1
%x_19 = OpVariable %_ptr_StorageBuffer_In1 StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%27 = OpTypeFunction %void
%_ptr_Function_uint = OpTypePointer Function %uint
@@ -98,6 +100,7 @@
%bool = OpTypeBool
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_1 = OpConstant %int 1
+ %121 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %27
%30 = OpLabel
%base_index_in = OpVariable %_ptr_Function_uint Function %33
@@ -213,10 +216,16 @@
%58 = OpLabel
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %121
+%gl_WorkGroupID_param = OpFunctionParameter %v3uint
+ %124 = OpLabel
+ OpStore %gl_WorkGroupID %gl_WorkGroupID_param
+ %125 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %27
- %122 = OpLabel
- %123 = OpLoad %v3uint %tint_symbol
- OpStore %gl_WorkGroupID %123
- %124 = OpFunctionCall %void %main_1
+ %127 = OpLabel
+ %129 = OpLoad %v3uint %gl_WorkGroupID_param_1
+ %128 = OpFunctionCall %void %main_inner %129
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.spvasm.expected.spvasm b/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.spvasm.expected.spvasm
index 7964ca8..3331626 100644
--- a/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.spvasm.expected.spvasm
@@ -1,52 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_1_1 "color_1_1"
OpName %color "color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+ %color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%13 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %14 = OpTypeFunction %void %main_out
+ %14 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpStore %color %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %14
-%tint_symbol = OpFunctionParameter %main_out
- %18 = OpLabel
- %19 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %19
- OpReturn
+ %main_inner = OpFunction %main_out None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %main_1
+ %19 = OpLoad %v4float %color
+ %20 = OpCompositeConstruct %main_out %19
+ OpReturnValue %20
OpFunctionEnd
%main = OpFunction %void None %8
- %21 = OpLabel
- %22 = OpFunctionCall %void %main_1
- %24 = OpLoad %v4float %color
- %25 = OpCompositeConstruct %main_out %24
- %23 = OpFunctionCall %void %tint_symbol_2 %25
+ %22 = OpLabel
+ %23 = OpFunctionCall %main_out %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %color_1_1 %24
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.wgsl.expected.spvasm b/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.wgsl.expected.spvasm
index 7964ca8..3331626 100644
--- a/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/rasterization/line_continuity/line-strip/0.wgsl.expected.spvasm
@@ -1,52 +1,50 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 26
+; Bound: 25
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1
+ OpEntryPoint Fragment %main "main" %color_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_1_1 "color_1_1"
OpName %color "color"
- OpName %tint_symbol_1 "tint_symbol_1"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_1"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
+ OpDecorate %color_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
+ %5 = OpConstantNull %v4float
+ %color_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color = OpVariable %_ptr_Private_v4float Private %5
%void = OpTypeVoid
%8 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%13 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
%main_out = OpTypeStruct %v4float
- %14 = OpTypeFunction %void %main_out
+ %14 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %8
%11 = OpLabel
OpStore %color %13
OpReturn
OpFunctionEnd
-%tint_symbol_2 = OpFunction %void None %14
-%tint_symbol = OpFunctionParameter %main_out
- %18 = OpLabel
- %19 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %19
- OpReturn
+ %main_inner = OpFunction %main_out None %14
+ %17 = OpLabel
+ %18 = OpFunctionCall %void %main_1
+ %19 = OpLoad %v4float %color
+ %20 = OpCompositeConstruct %main_out %19
+ OpReturnValue %20
OpFunctionEnd
%main = OpFunction %void None %8
- %21 = OpLabel
- %22 = OpFunctionCall %void %main_1
- %24 = OpLoad %v4float %color
- %25 = OpCompositeConstruct %main_out %24
- %23 = OpFunctionCall %void %tint_symbol_2 %25
+ %22 = OpLabel
+ %23 = OpFunctionCall %main_out %main_inner
+ %24 = OpCompositeExtract %v4float %23 0
+ OpStore %color_1_1 %24
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.spvasm.expected.spvasm b/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.spvasm.expected.spvasm
index bbb25d8..673f459 100644
--- a/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.spvasm.expected.spvasm
@@ -6,49 +6,49 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %color_out "color_out"
OpName %texture "texture"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %color_out_1_1 Location 0
OpDecorate %texture NonWritable
OpDecorate %texture DescriptorSet 0
OpDecorate %texture Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color_out = OpVariable %_ptr_Private_v4float Private %5
- %8 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
- %texture = OpVariable %_ptr_UniformConstant_8 UniformConstant
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
+ %12 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
+ %texture = OpVariable %_ptr_UniformConstant_12 UniformConstant
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%v2float = OpTypeVector %float 2
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %gl_FragCoord
- %20 = OpLoad %8 %texture
+ %20 = OpLoad %12 %texture
%25 = OpCompositeExtract %float %18 0
%26 = OpCompositeExtract %float %18 1
%27 = OpCompositeConstruct %v2float %25 %26
@@ -57,20 +57,20 @@
OpStore %color_out %19
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%gl_FragCoord_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %color_out
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %color_out
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %gl_FragCoord_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %color_out_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.wgsl.expected.spvasm b/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.wgsl.expected.spvasm
index 3f55c6b..7a720f7 100644
--- a/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/rasterization/line_continuity/line-strip/1.wgsl.expected.spvasm
@@ -9,49 +9,49 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %color_out "color_out"
OpName %texture "texture"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %color_out_1_1 Location 0
OpDecorate %texture NonWritable
OpDecorate %texture DescriptorSet 0
OpDecorate %texture Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color_out = OpVariable %_ptr_Private_v4float Private %5
- %8 = OpTypeImage %float 2D 0 0 0 2 Rgba8
-%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
- %texture = OpVariable %_ptr_UniformConstant_8 UniformConstant
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
+ %12 = OpTypeImage %float 2D 0 0 0 2 Rgba8
+%_ptr_UniformConstant_12 = OpTypePointer UniformConstant %12
+ %texture = OpVariable %_ptr_UniformConstant_12 UniformConstant
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%v2float = OpTypeVector %float 2
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %gl_FragCoord
- %20 = OpLoad %8 %texture
+ %20 = OpLoad %12 %texture
%25 = OpCompositeExtract %float %18 0
%26 = OpCompositeExtract %float %18 1
%27 = OpCompositeConstruct %v2float %25 %26
@@ -60,20 +60,20 @@
OpStore %color_out %19
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%gl_FragCoord_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %color_out
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %color_out
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %gl_FragCoord_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %color_out_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.spvasm.expected.spvasm
index 21ad2a6..99b735b 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.wgsl.expected.spvasm
index 21ad2a6..99b735b 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.spvasm.expected.spvasm
index b55f16e..50ed035 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.wgsl.expected.spvasm
index b55f16e..50ed035 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.spvasm.expected.spvasm
index 19b5307..c6e2686 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.wgsl.expected.spvasm
index 19b5307..c6e2686 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.spvasm.expected.spvasm
index 830ac7d..6590d65 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.wgsl.expected.spvasm
index 830ac7d..6590d65 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 39
+; Bound: 44
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,20 +28,19 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -47,6 +49,7 @@
%int = OpTypeInt 32 1
%bool = OpTypeBool
%uint_1 = OpConstant %uint 1
+ %35 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -63,10 +66,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %35
+ %x_2_param = OpFunctionParameter %v3uint
+ %38 = OpLabel
+ OpStore %x_2 %x_2_param
+ %39 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %36 = OpLabel
- %37 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %37
- %38 = OpFunctionCall %void %main_1
+ %41 = OpLabel
+ %43 = OpLoad %v3uint %x_2_param_1
+ %42 = OpFunctionCall %void %main_inner %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.spvasm.expected.spvasm
index 2f44746..ecaadcb 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 47
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
@@ -15,9 +16,11 @@
OpName %x_7 "x_7"
OpName %x_8 "x_8"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
@@ -29,12 +32,13 @@
OpDecorate %x_8 Binding 2
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
@@ -43,13 +47,12 @@
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_9 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%16 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
+ %38 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %16
%19 = OpLabel
%22 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -69,10 +72,16 @@
OpStore %31 %32
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %38
+ %x_3_param = OpFunctionParameter %v3uint
+ %41 = OpLabel
+ OpStore %x_3 %x_3_param
+ %42 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %16
- %39 = OpLabel
- %40 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %40
- %41 = OpFunctionCall %void %main_1
+ %44 = OpLabel
+ %46 = OpLoad %v3uint %x_3_param_1
+ %45 = OpFunctionCall %void %main_inner %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.wgsl.expected.spvasm
index 2f44746..ecaadcb 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 47
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
@@ -15,9 +16,11 @@
OpName %x_7 "x_7"
OpName %x_8 "x_8"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
@@ -29,12 +32,13 @@
OpDecorate %x_8 Binding 2
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%int = OpTypeInt 32 1
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
@@ -43,13 +47,12 @@
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_9 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%16 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
+ %38 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %16
%19 = OpLabel
%22 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -69,10 +72,16 @@
OpStore %31 %32
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %38
+ %x_3_param = OpFunctionParameter %v3uint
+ %41 = OpLabel
+ OpStore %x_3 %x_3_param
+ %42 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %16
- %39 = OpLabel
- %40 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %40
- %41 = OpFunctionCall %void %main_1
+ %44 = OpLabel
+ %46 = OpLoad %v3uint %x_3_param_1
+ %45 = OpFunctionCall %void %main_inner %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.spvasm.expected.spvasm
index 866a110..53216ba 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 39
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -23,25 +26,25 @@
OpDecorate %x_6 Binding 0
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %30 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %13
%16 = OpLabel
%19 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -55,10 +58,16 @@
OpStore %24 %25
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %30
+ %x_3_param = OpFunctionParameter %v3uint
+ %33 = OpLabel
+ OpStore %x_3 %x_3_param
+ %34 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %13
- %31 = OpLabel
- %32 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %32
- %33 = OpFunctionCall %void %main_1
+ %36 = OpLabel
+ %38 = OpLoad %v3uint %x_3_param_1
+ %37 = OpFunctionCall %void %main_inner %38
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.wgsl.expected.spvasm
index 866a110..53216ba 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 39
; Schema: 0
OpCapability Shader
%28 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -23,25 +26,25 @@
OpDecorate %x_6 Binding 0
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 1
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %30 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %13
%16 = OpLabel
%19 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -55,10 +58,16 @@
OpStore %24 %25
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %30
+ %x_3_param = OpFunctionParameter %v3uint
+ %33 = OpLabel
+ OpStore %x_3 %x_3_param
+ %34 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %13
- %31 = OpLabel
- %32 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %32
- %33 = OpFunctionCall %void %main_1
+ %36 = OpLabel
+ %38 = OpLoad %v3uint %x_3_param_1
+ %37 = OpFunctionCall %void %main_inner %38
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.spvasm.expected.spvasm
index 35000ef..1453ca0 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.spvasm.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 47
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
@@ -15,9 +16,11 @@
OpName %x_7 "x_7"
OpName %x_8 "x_8"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -29,12 +32,13 @@
OpDecorate %x_8 Binding 2
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
@@ -42,14 +46,13 @@
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_9 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %38 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %15
%18 = OpLabel
%21 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -69,10 +72,16 @@
OpStore %30 %31
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %38
+ %x_3_param = OpFunctionParameter %v3uint
+ %41 = OpLabel
+ OpStore %x_3 %x_3_param
+ %42 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %15
- %39 = OpLabel
- %40 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %40
- %41 = OpFunctionCall %void %main_1
+ %44 = OpLabel
+ %46 = OpLoad %v3uint %x_3_param_1
+ %45 = OpFunctionCall %void %main_inner %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.wgsl.expected.spvasm
index 35000ef..1453ca0 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.wgsl.expected.spvasm
@@ -1,13 +1,14 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 42
+; Bound: 47
; Schema: 0
OpCapability Shader
%34 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
@@ -15,9 +16,11 @@
OpName %x_7 "x_7"
OpName %x_8 "x_8"
OpName %x_9 "x_9"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -29,12 +32,13 @@
OpDecorate %x_8 Binding 2
OpDecorate %x_9 DescriptorSet 0
OpDecorate %x_9 Binding 3
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
@@ -42,14 +46,13 @@
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_9 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%15 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %38 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %15
%18 = OpLabel
%21 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -69,10 +72,16 @@
OpStore %30 %31
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %38
+ %x_3_param = OpFunctionParameter %v3uint
+ %41 = OpLabel
+ OpStore %x_3 %x_3_param
+ %42 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %15
- %39 = OpLabel
- %40 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %40
- %41 = OpFunctionCall %void %main_1
+ %44 = OpLabel
+ %46 = OpLoad %v3uint %x_3_param_1
+ %45 = OpFunctionCall %void %main_inner %46
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.spvasm.expected.spvasm
index 9f6c616..a2d9363 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.spvasm.expected.spvasm
@@ -1,22 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 43
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -26,26 +29,26 @@
OpDecorate %x_7 Binding 1
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %34 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -62,10 +65,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %34
+ %x_3_param = OpFunctionParameter %v3uint
+ %37 = OpLabel
+ OpStore %x_3 %x_3_param
+ %38 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %36
- %37 = OpFunctionCall %void %main_1
+ %40 = OpLabel
+ %42 = OpLoad %v3uint %x_3_param_1
+ %41 = OpFunctionCall %void %main_inner %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.wgsl.expected.spvasm
index 9f6c616..a2d9363 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.wgsl.expected.spvasm
@@ -1,22 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 43
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -26,26 +29,26 @@
OpDecorate %x_7 Binding 1
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %34 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -62,10 +65,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %34
+ %x_3_param = OpFunctionParameter %v3uint
+ %37 = OpLabel
+ OpStore %x_3 %x_3_param
+ %38 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %36
- %37 = OpFunctionCall %void %main_1
+ %40 = OpLabel
+ %42 = OpLoad %v3uint %x_3_param_1
+ %41 = OpFunctionCall %void %main_inner %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.spvasm.expected.spvasm
index 46045f1..35ca746 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.spvasm.expected.spvasm
@@ -1,22 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 43
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -26,26 +29,26 @@
OpDecorate %x_7 Binding 1
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %34 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -62,10 +65,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %34
+ %x_3_param = OpFunctionParameter %v3uint
+ %37 = OpLabel
+ OpStore %x_3 %x_3_param
+ %38 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %36
- %37 = OpFunctionCall %void %main_1
+ %40 = OpLabel
+ %42 = OpLoad %v3uint %x_3_param_1
+ %41 = OpFunctionCall %void %main_inner %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.wgsl.expected.spvasm
index 46045f1..35ca746 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.wgsl.expected.spvasm
@@ -1,22 +1,25 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 38
+; Bound: 43
; Schema: 0
OpCapability Shader
%31 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_3_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_3_param_1 "x_3_param_1"
OpName %x_3 "x_3"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
OpName %x_8 "x_8"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_3_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -26,26 +29,26 @@
OpDecorate %x_7 Binding 1
OpDecorate %x_8 DescriptorSet 0
OpDecorate %x_8 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_3_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_3 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_3 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_8 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %34 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_3 %uint_0
@@ -62,10 +65,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %34
+ %x_3_param = OpFunctionParameter %v3uint
+ %37 = OpLabel
+ OpStore %x_3 %x_3_param
+ %38 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- %36 = OpLoad %v3uint %tint_symbol
- OpStore %x_3 %36
- %37 = OpFunctionCall %void %main_1
+ %40 = OpLabel
+ %42 = OpLoad %v3uint %x_3_param_1
+ %41 = OpFunctionCall %void %main_inner %42
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.spvasm.expected.spvasm
index 5b924e4..34651de 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.spvasm.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,26 +28,26 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %33 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -61,10 +64,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %33
+ %x_2_param = OpFunctionParameter %v3uint
+ %36 = OpLabel
+ OpStore %x_2 %x_2_param
+ %37 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %34 = OpLabel
- %35 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %35
- %36 = OpFunctionCall %void %main_1
+ %39 = OpLabel
+ %41 = OpLoad %v3uint %x_2_param_1
+ %40 = OpFunctionCall %void %main_inner %41
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.wgsl.expected.spvasm
index 5b924e4..34651de 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.wgsl.expected.spvasm
@@ -1,21 +1,24 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 37
+; Bound: 42
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
OpName %x_7 "x_7"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -25,26 +28,26 @@
OpDecorate %x_6 Binding 1
OpDecorate %x_7 DescriptorSet 0
OpDecorate %x_7 Binding 2
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_7 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%14 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %33 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %14
%17 = OpLabel
%20 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -61,10 +64,16 @@
OpStore %27 %28
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %33
+ %x_2_param = OpFunctionParameter %v3uint
+ %36 = OpLabel
+ OpStore %x_2 %x_2_param
+ %37 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %14
- %34 = OpLabel
- %35 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %35
- %36 = OpFunctionCall %void %main_1
+ %39 = OpLabel
+ %41 = OpLoad %v3uint %x_2_param_1
+ %40 = OpFunctionCall %void %main_inner %41
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.spvasm.expected.spvasm
index 4ce732f..5bef5a6 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.spvasm.expected.spvasm
@@ -1,20 +1,23 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -22,25 +25,25 @@
OpDecorate %x_5 Binding 0
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %29 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %13
%16 = OpLabel
%19 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -54,10 +57,16 @@
OpStore %24 %25
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %29
+ %x_2_param = OpFunctionParameter %v3uint
+ %32 = OpLabel
+ OpStore %x_2 %x_2_param
+ %33 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %13
- %30 = OpLabel
- %31 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %31
- %32 = OpFunctionCall %void %main_1
+ %35 = OpLabel
+ %37 = OpLoad %v3uint %x_2_param_1
+ %36 = OpFunctionCall %void %main_inner %37
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.wgsl.expected.spvasm
index 4ce732f..5bef5a6 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.wgsl.expected.spvasm
@@ -1,20 +1,23 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 33
+; Bound: 38
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint GLCompute %main "main" %tint_symbol
+ OpEntryPoint GLCompute %main "main" %x_2_param_1
OpExecutionMode %main LocalSize 1 1 1
+ OpName %x_2_param_1 "x_2_param_1"
OpName %x_2 "x_2"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
OpName %x_6 "x_6"
- OpName %tint_symbol "tint_symbol"
OpName %main_1 "main_1"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn GlobalInvocationId
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_uint ArrayStride 4
@@ -22,25 +25,25 @@
OpDecorate %x_5 Binding 0
OpDecorate %x_6 DescriptorSet 0
OpDecorate %x_6 Binding 1
- OpDecorate %tint_symbol BuiltIn GlobalInvocationId
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
+%_ptr_Input_v3uint = OpTypePointer Input %v3uint
+%x_2_param_1 = OpVariable %_ptr_Input_v3uint Input
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
- %5 = OpConstantNull %v3uint
- %x_2 = OpVariable %_ptr_Private_v3uint Private %5
+ %7 = OpConstantNull %v3uint
+ %x_2 = OpVariable %_ptr_Private_v3uint Private %7
%_runtimearr_uint = OpTypeRuntimeArray %uint
%S = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
%x_6 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v3uint = OpTypePointer Input %v3uint
-%tint_symbol = OpVariable %_ptr_Input_v3uint Input
%void = OpTypeVoid
%13 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%_ptr_Private_uint = OpTypePointer Private %uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%int = OpTypeInt 32 1
+ %29 = OpTypeFunction %void %v3uint
%main_1 = OpFunction %void None %13
%16 = OpLabel
%19 = OpAccessChain %_ptr_Private_uint %x_2 %uint_0
@@ -54,10 +57,16 @@
OpStore %24 %25
OpReturn
OpFunctionEnd
+ %main_inner = OpFunction %void None %29
+ %x_2_param = OpFunctionParameter %v3uint
+ %32 = OpLabel
+ OpStore %x_2 %x_2_param
+ %33 = OpFunctionCall %void %main_1
+ OpReturn
+ OpFunctionEnd
%main = OpFunction %void None %13
- %30 = OpLabel
- %31 = OpLoad %v3uint %tint_symbol
- OpStore %x_2 %31
- %32 = OpFunctionCall %void %main_1
+ %35 = OpLabel
+ %37 = OpLoad %v3uint %x_2_param_1
+ %36 = OpFunctionCall %void %main_inner %37
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.spvasm.expected.spvasm
index b95f794..e91609f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.spvasm.expected.spvasm
@@ -5,50 +5,50 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_3_param_1 %x_4_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 BuiltIn Position
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_4_1_1 Location 0
+ OpDecorate %x_4_1_1 Flat
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
- %8 = OpConstantNull %v2float
- %x_3 = OpVariable %_ptr_Private_v2float Private %8
- %uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %12 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %12
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
+%x_3_param_1 = OpVariable %_ptr_Input_v2float Input
+ %uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_2 = OpVariable %_ptr_Output_uint Output %12
+ %8 = OpConstantNull %uint
+ %x_4_1_1 = OpVariable %_ptr_Output_uint Output %8
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %12 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %12
+%_ptr_Output_float = OpTypePointer Output %float
+ %15 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %15
+%_ptr_Private_v2float = OpTypePointer Private %v2float
+ %18 = OpConstantNull %v2float
+ %x_3 = OpVariable %_ptr_Private_v2float Private %18
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %12
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -60,7 +60,7 @@
%uint_36 = OpConstant %uint 36
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %uint %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out %v2float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%29 = OpAccessChain %_ptr_Private_float %x_3 %uint_0
@@ -85,24 +85,24 @@
OpStore %gl_Position %52
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %53
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %53
+ %x_3_param = OpFunctionParameter %v2float
%57 = OpLabel
- %58 = OpCompositeExtract %uint %tint_symbol_1 0
- OpStore %tint_symbol_2 %58
- %59 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %59
- OpReturn
+ OpStore %x_3 %x_3_param
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %uint %x_4
+ %60 = OpLoad %v4float %gl_Position
+ %61 = OpCompositeConstruct %main_out %59 %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %23
- %61 = OpLabel
- OpStore %tint_pointsize %float_1
- %62 = OpLoad %v2float %tint_symbol
- OpStore %x_3 %62
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %uint %x_4
- %66 = OpLoad %v4float %gl_Position
- %67 = OpCompositeConstruct %main_out %65 %66
- %64 = OpFunctionCall %void %tint_symbol_4 %67
+ %63 = OpLabel
+ %65 = OpLoad %v2float %x_3_param_1
+ %64 = OpFunctionCall %main_out %main_inner %65
+ %66 = OpCompositeExtract %uint %64 0
+ OpStore %x_4_1_1 %66
+ %67 = OpCompositeExtract %v4float %64 1
+ OpStore %gl_Position_1 %67
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.wgsl.expected.spvasm
index b95f794..e91609f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/float32/comparison/frexpstruct_1_frag/0.wgsl.expected.spvasm
@@ -5,50 +5,50 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_3_param_1 %x_4_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_2 Flat
- OpDecorate %tint_symbol_3 BuiltIn Position
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_4_1_1 Location 0
+ OpDecorate %x_4_1_1 Flat
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v2float = OpTypeVector %float 2
-%_ptr_Private_v2float = OpTypePointer Private %v2float
- %8 = OpConstantNull %v2float
- %x_3 = OpVariable %_ptr_Private_v2float Private %8
- %uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %12 = OpConstantNull %uint
- %x_4 = OpVariable %_ptr_Private_uint Private %12
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %16 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %16
%_ptr_Input_v2float = OpTypePointer Input %v2float
-%tint_symbol = OpVariable %_ptr_Input_v2float Input
+%x_3_param_1 = OpVariable %_ptr_Input_v2float Input
+ %uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_2 = OpVariable %_ptr_Output_uint Output %12
+ %8 = OpConstantNull %uint
+ %x_4_1_1 = OpVariable %_ptr_Output_uint Output %8
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_3 = OpVariable %_ptr_Output_v4float Output %16
+ %12 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %12
+%_ptr_Output_float = OpTypePointer Output %float
+ %15 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %15
+%_ptr_Private_v2float = OpTypePointer Private %v2float
+ %18 = OpConstantNull %v2float
+ %x_3 = OpVariable %_ptr_Private_v2float Private %18
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %x_4 = OpVariable %_ptr_Private_uint Private %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %12
%void = OpTypeVoid
%23 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
@@ -60,7 +60,7 @@
%uint_36 = OpConstant %uint 36
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %uint %v4float
- %53 = OpTypeFunction %void %main_out
+ %53 = OpTypeFunction %main_out %v2float
%main_1 = OpFunction %void None %23
%26 = OpLabel
%29 = OpAccessChain %_ptr_Private_float %x_3 %uint_0
@@ -85,24 +85,24 @@
OpStore %gl_Position %52
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %53
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %53
+ %x_3_param = OpFunctionParameter %v2float
%57 = OpLabel
- %58 = OpCompositeExtract %uint %tint_symbol_1 0
- OpStore %tint_symbol_2 %58
- %59 = OpCompositeExtract %v4float %tint_symbol_1 1
- OpStore %tint_symbol_3 %59
- OpReturn
+ OpStore %x_3 %x_3_param
+ %58 = OpFunctionCall %void %main_1
+ %59 = OpLoad %uint %x_4
+ %60 = OpLoad %v4float %gl_Position
+ %61 = OpCompositeConstruct %main_out %59 %60
+ OpReturnValue %61
OpFunctionEnd
%main = OpFunction %void None %23
- %61 = OpLabel
- OpStore %tint_pointsize %float_1
- %62 = OpLoad %v2float %tint_symbol
- OpStore %x_3 %62
- %63 = OpFunctionCall %void %main_1
- %65 = OpLoad %uint %x_4
- %66 = OpLoad %v4float %gl_Position
- %67 = OpCompositeConstruct %main_out %65 %66
- %64 = OpFunctionCall %void %tint_symbol_4 %67
+ %63 = OpLabel
+ %65 = OpLoad %v2float %x_3_param_1
+ %64 = OpFunctionCall %main_out %main_inner %65
+ %66 = OpCompositeExtract %uint %64 0
+ OpStore %x_4_1_1 %66
+ %67 = OpCompositeExtract %v4float %64 1
+ OpStore %gl_Position_1 %67
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.spvasm.expected.spvasm
index bb27f18..36e21e1 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_5 = OpConstant %float 0.5
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.wgsl.expected.spvasm
index bb27f18..36e21e1 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_5 = OpConstant %float 0.5
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.spvasm.expected.spvasm
index 2656eac..a9e4b3b 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_300000012 = OpConstant %float 0.300000012
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_300000012
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.wgsl.expected.spvasm
index 2656eac..a9e4b3b 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_equal/1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_300000012 = OpConstant %float 0.300000012
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_300000012
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.spvasm.expected.spvasm
index 67f68ab..ce0cee5 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_600000024 = OpConstant %float 0.600000024
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.wgsl.expected.spvasm
index 67f68ab..ce0cee5 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_600000024 = OpConstant %float 0.600000024
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.spvasm.expected.spvasm
index 2c1b030..2d93057 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_400000006 = OpConstant %float 0.400000006
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_400000006
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.wgsl.expected.spvasm
index 2c1b030..2d93057 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_greater/1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_400000006 = OpConstant %float 0.400000006
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_400000006
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.spvasm.expected.spvasm
index 57cab41..b003b8e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_400000006 = OpConstant %float 0.400000006
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.wgsl.expected.spvasm
index 57cab41..b003b8e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_400000006 = OpConstant %float 0.400000006
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.spvasm.expected.spvasm
index 2f52f93..158850c 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_699999988
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.wgsl.expected.spvasm
index 2f52f93..158850c 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_less_or_equal/1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_699999988
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.spvasm.expected.spvasm
index 18e2bca..cada7d9 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_300000012 = OpConstant %float 0.300000012
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.wgsl.expected.spvasm
index 18e2bca..cada7d9 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_300000012 = OpConstant %float 0.300000012
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.spvasm.expected.spvasm
index a305e7a..af0bf2a 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.spvasm.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_5 = OpConstant %float 0.5
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_5
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.wgsl.expected.spvasm
index a305e7a..af0bf2a 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/early_fragment/depth_not_equal/1.wgsl.expected.spvasm
@@ -1,40 +1,39 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 35
+; Bound: 34
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_out_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %color_out_1_1 "color_out_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %color_out "color_out"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %color_out_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%color_out = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_1 = OpConstant %float 1
@@ -42,28 +41,27 @@
%19 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%float_0_5 = OpConstant %float 0.5
%main_out = OpTypeStruct %v4float %float
- %21 = OpTypeFunction %void %main_out
+ %21 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %color_out %19
OpStore %gl_FragDepth %float_0_5
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %21
-%tint_symbol = OpFunctionParameter %main_out
- %25 = OpLabel
- %26 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %26
- %27 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %27
- OpReturn
+ %main_inner = OpFunction %main_out None %21
+ %24 = OpLabel
+ %25 = OpFunctionCall %void %main_1
+ %26 = OpLoad %v4float %color_out
+ %27 = OpLoad %float %gl_FragDepth
+ %28 = OpCompositeConstruct %main_out %26 %27
+ OpReturnValue %28
OpFunctionEnd
%main = OpFunction %void None %13
- %29 = OpLabel
- %30 = OpFunctionCall %void %main_1
- %32 = OpLoad %v4float %color_out
- %33 = OpLoad %float %gl_FragDepth
- %34 = OpCompositeConstruct %main_out %32 %33
- %31 = OpFunctionCall %void %tint_symbol_3 %34
+ %30 = OpLabel
+ %31 = OpFunctionCall %main_out %main_inner
+ %32 = OpCompositeExtract %v4float %31 0
+ OpStore %color_out_1_1 %32
+ %33 = OpCompositeExtract %float %31 1
+ OpStore %gl_FragDepth_1_1 %33
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.spvasm.expected.spvasm
index cf0602b..fab5f54 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_699999988 = OpConstant %float 0.699999988
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.wgsl.expected.spvasm
index cf0602b..fab5f54 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_1/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_699999988 = OpConstant %float 0.699999988
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.spvasm.expected.spvasm
index 240e679..4bd131f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_200000003 = OpConstant %float 0.200000003
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.wgsl.expected.spvasm
index 240e679..4bd131f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/0-opt.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Output_float = OpTypePointer Output %float
+ %10 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%14 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%float_0_200000003 = OpConstant %float 0.200000003
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %28 = OpTypeFunction %void %main_out
+ %28 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%18 = OpLoad %v4float %position
@@ -53,21 +53,21 @@
OpStore %gl_Position %27
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %28
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %28
+%position_param = OpFunctionParameter %v4float
%32 = OpLabel
- %33 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %33
- OpReturn
+ OpStore %position %position_param
+ %33 = OpFunctionCall %void %main_1
+ %34 = OpLoad %v4float %gl_Position
+ %35 = OpCompositeConstruct %main_out %34
+ OpReturnValue %35
OpFunctionEnd
%main = OpFunction %void None %14
- %35 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpCompositeConstruct %main_out %39
- %38 = OpFunctionCall %void %tint_symbol_3 %40
+ %37 = OpLabel
+ %39 = OpLoad %v4float %position_param_1
+ %38 = OpFunctionCall %main_out %main_inner %39
+ %40 = OpCompositeExtract %v4float %38 0
+ OpStore %gl_Position_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.spvasm.expected.spvasm
index bb4715a..40ec065 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.spvasm.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_300000012 = OpConstant %float 0.300000012
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_300000012
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.wgsl.expected.spvasm
index bb4715a..40ec065 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthgreater_2/1.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_300000012 = OpConstant %float 0.300000012
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_300000012
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.spvasm.expected.spvasm
index d7a733d..a43363c 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.spvasm.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_100000001 = OpConstant %float 0.100000001
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_100000001
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.wgsl.expected.spvasm
index d7a733d..a43363c 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_0/1.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_100000001 = OpConstant %float 0.100000001
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_100000001
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.spvasm.expected.spvasm
index 927ca49..a04b224 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.spvasm.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_600000024 = OpConstant %float 0.600000024
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_600000024
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.wgsl.expected.spvasm
index 927ca49..a04b224 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthless_2/1.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_600000024 = OpConstant %float 0.600000024
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_600000024
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.spvasm.expected.spvasm
index ce10d20..4eb6e6e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.spvasm.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn FragDepth
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %outColor = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
-%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %8
+ %10 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %outColor = OpVariable %_ptr_Private_v4float Private %7
+%_ptr_Private_float = OpTypePointer Private %float
+%gl_FragDepth = OpVariable %_ptr_Private_float Private %10
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%16 = OpTypeFunction %void
%float_0 = OpConstant %float 0
@@ -48,7 +48,7 @@
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float %float
- %26 = OpTypeFunction %void %main_out
+ %26 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %16
%19 = OpLabel
OpStore %outColor %21
@@ -57,23 +57,23 @@
OpStore %gl_FragDepth %25
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %26
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %26
+%gl_FragCoord_param = OpFunctionParameter %v4float
%30 = OpLabel
- %31 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %31
- %32 = OpCompositeExtract %float %tint_symbol_1 1
- OpStore %tint_symbol_3 %32
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %outColor
+ %33 = OpLoad %float %gl_FragDepth
+ %34 = OpCompositeConstruct %main_out %32 %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %16
- %34 = OpLabel
- %35 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %35
- %36 = OpFunctionCall %void %main_1
- %38 = OpLoad %v4float %outColor
- %39 = OpLoad %float %gl_FragDepth
- %40 = OpCompositeConstruct %main_out %38 %39
- %37 = OpFunctionCall %void %tint_symbol_4 %40
+ %36 = OpLabel
+ %38 = OpLoad %v4float %gl_FragCoord_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %outColor_1_1 %39
+ %40 = OpCompositeExtract %float %37 1
+ OpStore %gl_FragDepth_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.wgsl.expected.spvasm
index ce10d20..4eb6e6e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_0/1.wgsl.expected.spvasm
@@ -5,42 +5,42 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
- OpDecorate %tint_symbol_3 BuiltIn FragDepth
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %outColor = OpVariable %_ptr_Private_v4float Private %5
-%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
-%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %7
%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_3 = OpVariable %_ptr_Output_float Output %8
+ %10 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %outColor = OpVariable %_ptr_Private_v4float Private %7
+%_ptr_Private_float = OpTypePointer Private %float
+%gl_FragDepth = OpVariable %_ptr_Private_float Private %10
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%16 = OpTypeFunction %void
%float_0 = OpConstant %float 0
@@ -48,7 +48,7 @@
%uint = OpTypeInt 32 0
%uint_2 = OpConstant %uint 2
%main_out = OpTypeStruct %v4float %float
- %26 = OpTypeFunction %void %main_out
+ %26 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %16
%19 = OpLabel
OpStore %outColor %21
@@ -57,23 +57,23 @@
OpStore %gl_FragDepth %25
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %26
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %26
+%gl_FragCoord_param = OpFunctionParameter %v4float
%30 = OpLabel
- %31 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %31
- %32 = OpCompositeExtract %float %tint_symbol_1 1
- OpStore %tint_symbol_3 %32
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %outColor
+ %33 = OpLoad %float %gl_FragDepth
+ %34 = OpCompositeConstruct %main_out %32 %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %16
- %34 = OpLabel
- %35 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %35
- %36 = OpFunctionCall %void %main_1
- %38 = OpLoad %v4float %outColor
- %39 = OpLoad %float %gl_FragDepth
- %40 = OpCompositeConstruct %main_out %38 %39
- %37 = OpFunctionCall %void %tint_symbol_4 %40
+ %36 = OpLabel
+ %38 = OpLoad %v4float %gl_FragCoord_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %outColor_1_1 %39
+ %40 = OpCompositeExtract %float %37 1
+ OpStore %gl_FragDepth_1_1 %40
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.spvasm.expected.spvasm
index 9df6dab..c901282 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.spvasm.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_699999988
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.wgsl.expected.spvasm
index 9df6dab..c901282 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_2/1.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_699999988 = OpConstant %float 0.699999988
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_699999988
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.spvasm.expected.spvasm
index abc3df8..778afc2 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.spvasm.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_400000006 = OpConstant %float 0.400000006
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_400000006
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.wgsl.expected.spvasm
index abc3df8..778afc2 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/graphics/execution_mode/depthunchanged_3/1.wgsl.expected.spvasm
@@ -1,68 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 34
+; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol_1 %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %outColor_1_1 %gl_FragDepth_1_1
OpExecutionMode %main OriginUpperLeft
OpExecutionMode %main DepthReplacing
+ OpName %outColor_1_1 "outColor_1_1"
+ OpName %gl_FragDepth_1_1 "gl_FragDepth_1_1"
OpName %outColor "outColor"
OpName %gl_FragDepth "gl_FragDepth"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "outColor_1"
OpMemberName %main_out 1 "gl_FragDepth_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol "tint_symbol"
+ OpName %main_inner "main_inner"
OpName %main "main"
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_2 BuiltIn FragDepth
+ OpDecorate %outColor_1_1 Location 0
+ OpDecorate %gl_FragDepth_1_1 BuiltIn FragDepth
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
+%_ptr_Output_v4float = OpTypePointer Output %v4float
%5 = OpConstantNull %v4float
+%outColor_1_1 = OpVariable %_ptr_Output_v4float Output %5
+%_ptr_Output_float = OpTypePointer Output %float
+ %8 = OpConstantNull %float
+%gl_FragDepth_1_1 = OpVariable %_ptr_Output_float Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
%outColor = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Private_float = OpTypePointer Private %float
- %8 = OpConstantNull %float
%gl_FragDepth = OpVariable %_ptr_Private_float Private %8
-%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %5
-%_ptr_Output_float = OpTypePointer Output %float
-%tint_symbol_2 = OpVariable %_ptr_Output_float Output %8
%void = OpTypeVoid
%13 = OpTypeFunction %void
%float_0 = OpConstant %float 0
%18 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
%float_0_400000006 = OpConstant %float 0.400000006
%main_out = OpTypeStruct %v4float %float
- %20 = OpTypeFunction %void %main_out
+ %20 = OpTypeFunction %main_out
%main_1 = OpFunction %void None %13
%16 = OpLabel
OpStore %outColor %18
OpStore %gl_FragDepth %float_0_400000006
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %20
-%tint_symbol = OpFunctionParameter %main_out
- %24 = OpLabel
- %25 = OpCompositeExtract %v4float %tint_symbol 0
- OpStore %tint_symbol_1 %25
- %26 = OpCompositeExtract %float %tint_symbol 1
- OpStore %tint_symbol_2 %26
- OpReturn
+ %main_inner = OpFunction %main_out None %20
+ %23 = OpLabel
+ %24 = OpFunctionCall %void %main_1
+ %25 = OpLoad %v4float %outColor
+ %26 = OpLoad %float %gl_FragDepth
+ %27 = OpCompositeConstruct %main_out %25 %26
+ OpReturnValue %27
OpFunctionEnd
%main = OpFunction %void None %13
- %28 = OpLabel
- %29 = OpFunctionCall %void %main_1
- %31 = OpLoad %v4float %outColor
- %32 = OpLoad %float %gl_FragDepth
- %33 = OpCompositeConstruct %main_out %31 %32
- %30 = OpFunctionCall %void %tint_symbol_3 %33
+ %29 = OpLabel
+ %30 = OpFunctionCall %main_out %main_inner
+ %31 = OpCompositeExtract %v4float %30 0
+ OpStore %outColor_1_1 %31
+ %32 = OpCompositeExtract %float %30 1
+ OpStore %gl_FragDepth_1_1 %32
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.spvasm.expected.spvasm
index b7ee735..8378860 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.spvasm.expected.spvasm
@@ -5,52 +5,52 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %pos_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %pos_1_1 "pos_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %pos "pos"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "pos_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 0
- OpDecorate %tint_symbol_3 Flat
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %pos_1_1 Location 0
+ OpDecorate %pos_1_1 Flat
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %12 = OpConstantNull %uint
- %pos = OpVariable %_ptr_Private_uint Private %12
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+ %uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_3 = OpVariable %_ptr_Output_uint Output %12
+ %11 = OpConstantNull %uint
+ %pos_1_1 = OpVariable %_ptr_Output_uint Output %11
+%_ptr_Output_float = OpTypePointer Output %float
+ %14 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %pos = OpVariable %_ptr_Private_uint Private %11
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %v4float %uint
- %26 = OpTypeFunction %void %main_out
+ %26 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %20
%23 = OpLabel
@@ -59,24 +59,24 @@
OpStore %pos %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %26
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %26
+%position_param = OpFunctionParameter %v4float
%30 = OpLabel
- %31 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %31
- %32 = OpCompositeExtract %uint %tint_symbol_1 1
- OpStore %tint_symbol_3 %32
- OpReturn
+ OpStore %position %position_param
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %gl_Position
+ %33 = OpLoad %uint %pos
+ %34 = OpCompositeConstruct %main_out %32 %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %20
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpLoad %uint %pos
- %41 = OpCompositeConstruct %main_out %39 %40
- %38 = OpFunctionCall %void %tint_symbol_4 %41
+ %36 = OpLabel
+ %38 = OpLoad %v4float %position_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %gl_Position_1 %39
+ %40 = OpCompositeExtract %uint %37 1
+ OpStore %pos_1_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.wgsl.expected.spvasm
index b7ee735..8378860 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/spirv1p4/hlsl_functionality1/decorate_string/0.wgsl.expected.spvasm
@@ -5,52 +5,52 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2 %tint_symbol_3
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %pos_1_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %pos_1_1 "pos_1_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %pos "pos"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
OpMemberName %main_out 1 "pos_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
- OpDecorate %tint_symbol_3 Location 0
- OpDecorate %tint_symbol_3 Flat
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %pos_1_1 Location 0
+ OpDecorate %pos_1_1 Flat
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %8 = OpConstantNull %v4float
- %position = OpVariable %_ptr_Private_v4float Private %8
- %uint = OpTypeInt 32 0
-%_ptr_Private_uint = OpTypePointer Private %uint
- %12 = OpConstantNull %uint
- %pos = OpVariable %_ptr_Private_uint Private %12
-%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%position_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %8
+ %7 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %7
+ %uint = OpTypeInt 32 0
%_ptr_Output_uint = OpTypePointer Output %uint
-%tint_symbol_3 = OpVariable %_ptr_Output_uint Output %12
+ %11 = OpConstantNull %uint
+ %pos_1_1 = OpVariable %_ptr_Output_uint Output %11
+%_ptr_Output_float = OpTypePointer Output %float
+ %14 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %position = OpVariable %_ptr_Private_v4float Private %7
+%_ptr_Private_uint = OpTypePointer Private %uint
+ %pos = OpVariable %_ptr_Private_uint Private %11
+%gl_Position = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%20 = OpTypeFunction %void
%uint_0 = OpConstant %uint 0
%main_out = OpTypeStruct %v4float %uint
- %26 = OpTypeFunction %void %main_out
+ %26 = OpTypeFunction %main_out %v4float
%float_1 = OpConstant %float 1
%main_1 = OpFunction %void None %20
%23 = OpLabel
@@ -59,24 +59,24 @@
OpStore %pos %uint_0
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %26
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %26
+%position_param = OpFunctionParameter %v4float
%30 = OpLabel
- %31 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %31
- %32 = OpCompositeExtract %uint %tint_symbol_1 1
- OpStore %tint_symbol_3 %32
- OpReturn
+ OpStore %position %position_param
+ %31 = OpFunctionCall %void %main_1
+ %32 = OpLoad %v4float %gl_Position
+ %33 = OpLoad %uint %pos
+ %34 = OpCompositeConstruct %main_out %32 %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %20
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %36 = OpLoad %v4float %tint_symbol
- OpStore %position %36
- %37 = OpFunctionCall %void %main_1
- %39 = OpLoad %v4float %gl_Position
- %40 = OpLoad %uint %pos
- %41 = OpCompositeConstruct %main_out %39 %40
- %38 = OpFunctionCall %void %tint_symbol_4 %41
+ %36 = OpLabel
+ %38 = OpLoad %v4float %position_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %gl_Position_1 %39
+ %40 = OpCompositeExtract %uint %37 1
+ OpStore %pos_1_1 %40
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.spvasm.expected.spvasm
index 2bfe24c..845718e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.spvasm.expected.spvasm
@@ -1,65 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_3 Location 0
- OpDecorate %tint_symbol_3 Flat
- OpDecorate %tint_symbol_4 BuiltIn Position
+ OpDecorate %x_2_param_1 Location 0
+ OpDecorate %x_3_param_1 Location 1
+ OpDecorate %x_4_1_1 Location 0
+ OpDecorate %x_4_1_1 Flat
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %x_2 = OpVariable %_ptr_Private_v3float Private %8
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %12 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %12
- %x_4 = OpVariable %_ptr_Private_int Private %12
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %17
%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol = OpVariable %_ptr_Input_v3float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v3float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %12
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %17
+ %14 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %14
+%_ptr_Output_float = OpTypePointer Output %float
+ %17 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %17
+%_ptr_Private_v3float = OpTypePointer Private %v3float
+ %20 = OpConstantNull %v3float
+ %x_2 = OpVariable %_ptr_Private_v3float Private %20
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %14
%void = OpTypeVoid
%26 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %int %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out %v3float %int
%main_1 = OpFunction %void None %26
%29 = OpLabel
%30 = OpLoad %v3float %x_2
@@ -72,26 +73,27 @@
OpStore %x_4 %36
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %37
-%tint_symbol_2 = OpFunctionParameter %main_out
- %41 = OpLabel
- %42 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %42
- %43 = OpCompositeExtract %v4float %tint_symbol_2 1
- OpStore %tint_symbol_4 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %37
+ %x_2_param = OpFunctionParameter %v3float
+ %x_3_param = OpFunctionParameter %int
+ %42 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %int %x_4
+ %45 = OpLoad %v4float %gl_Position
+ %46 = OpCompositeConstruct %main_out %44 %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %26
- %45 = OpLabel
- OpStore %tint_pointsize %float_1
- %46 = OpLoad %v3float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpLoad %v4float %gl_Position
- %52 = OpCompositeConstruct %main_out %50 %51
- %49 = OpFunctionCall %void %tint_symbol_5 %52
+ %48 = OpLabel
+ %50 = OpLoad %v3float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
+ %53 = OpCompositeExtract %v4float %49 1
+ OpStore %gl_Position_1 %53
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.wgsl.expected.spvasm
index 2bfe24c..845718e 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_atomic/0-opt.wgsl.expected.spvasm
@@ -1,65 +1,66 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 53
+; Bound: 54
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_3 %tint_symbol_4
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1 %gl_Position_1 %vertex_point_size
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_4 "tint_symbol_4"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
OpMemberName %main_out 1 "gl_Position"
- OpName %tint_symbol_5 "tint_symbol_5"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_1 Location 1
- OpDecorate %tint_symbol_3 Location 0
- OpDecorate %tint_symbol_3 Flat
- OpDecorate %tint_symbol_4 BuiltIn Position
+ OpDecorate %x_2_param_1 Location 0
+ OpDecorate %x_3_param_1 Location 1
+ OpDecorate %x_4_1_1 Location 0
+ OpDecorate %x_4_1_1 Flat
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
OpMemberDecorate %main_out 1 Offset 16
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %x_2 = OpVariable %_ptr_Private_v3float Private %8
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %12 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %12
- %x_4 = OpVariable %_ptr_Private_int Private %12
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %17 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %17
%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol = OpVariable %_ptr_Input_v3float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v3float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %12
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %17
+ %14 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %14
+%_ptr_Output_float = OpTypePointer Output %float
+ %17 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %17
+%_ptr_Private_v3float = OpTypePointer Private %v3float
+ %20 = OpConstantNull %v3float
+ %x_2 = OpVariable %_ptr_Private_v3float Private %20
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %14
%void = OpTypeVoid
%26 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %int %v4float
- %37 = OpTypeFunction %void %main_out
+ %37 = OpTypeFunction %main_out %v3float %int
%main_1 = OpFunction %void None %26
%29 = OpLabel
%30 = OpLoad %v3float %x_2
@@ -72,26 +73,27 @@
OpStore %x_4 %36
OpReturn
OpFunctionEnd
-%tint_symbol_5 = OpFunction %void None %37
-%tint_symbol_2 = OpFunctionParameter %main_out
- %41 = OpLabel
- %42 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %42
- %43 = OpCompositeExtract %v4float %tint_symbol_2 1
- OpStore %tint_symbol_4 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %37
+ %x_2_param = OpFunctionParameter %v3float
+ %x_3_param = OpFunctionParameter %int
+ %42 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %43 = OpFunctionCall %void %main_1
+ %44 = OpLoad %int %x_4
+ %45 = OpLoad %v4float %gl_Position
+ %46 = OpCompositeConstruct %main_out %44 %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %26
- %45 = OpLabel
- OpStore %tint_pointsize %float_1
- %46 = OpLoad %v3float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpLoad %v4float %gl_Position
- %52 = OpCompositeConstruct %main_out %50 %51
- %49 = OpFunctionCall %void %tint_symbol_5 %52
+ %48 = OpLabel
+ %50 = OpLoad %v3float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
+ %53 = OpCompositeExtract %v4float %49 1
+ OpStore %gl_Position_1 %53
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.spvasm.expected.spvasm
index 3a722c8..27651db 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.spvasm.expected.spvasm
@@ -1,52 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 63
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %x_5 NonReadable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
- %13 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_13 = OpTypePointer UniformConstant %13
- %x_5 = OpVariable %_ptr_UniformConstant_13 UniformConstant
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
+ %19 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_19 = OpTypePointer UniformConstant %19
+ %x_5 = OpVariable %_ptr_UniformConstant_19 UniformConstant
%void = OpTypeVoid
%20 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -55,7 +56,7 @@
%v4int = OpTypeVector %int 4
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %int
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %20
%23 = OpLabel
OpStore %x_4 %int_1
@@ -77,28 +78,29 @@
%40 = OpLabel
OpBranch %39
%39 = OpLabel
- %42 = OpLoad %13 %x_5
+ %42 = OpLoad %19 %x_5
%44 = OpCompositeConstruct %v2int %26 %28
%47 = OpCompositeConstruct %v4int %26 %int_0 %int_0 %int_0
OpImageWrite %42 %44 %47
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %48
-%tint_symbol_2 = OpFunctionParameter %main_out
- %52 = OpLabel
- %53 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %53
- OpReturn
+ %main_inner = OpFunction %main_out None %48
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %53 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %int %x_4
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %20
- %55 = OpLabel
- %56 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %56
- %57 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %57
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %int %x_4
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_4 %61
+ %58 = OpLabel
+ %60 = OpLoad %v4float %x_2_param_1
+ %61 = OpLoad %int %x_3_param_1
+ %59 = OpFunctionCall %main_out %main_inner %60 %61
+ %62 = OpCompositeExtract %int %59 0
+ OpStore %x_4_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.wgsl.expected.spvasm
index 3a722c8..27651db 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_image_store/1.wgsl.expected.spvasm
@@ -1,52 +1,53 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 62
+; Bound: 63
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %x_5 NonReadable
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
- %13 = OpTypeImage %int 2D 0 0 0 2 R32i
-%_ptr_UniformConstant_13 = OpTypePointer UniformConstant %13
- %x_5 = OpVariable %_ptr_UniformConstant_13 UniformConstant
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
+ %19 = OpTypeImage %int 2D 0 0 0 2 R32i
+%_ptr_UniformConstant_19 = OpTypePointer UniformConstant %19
+ %x_5 = OpVariable %_ptr_UniformConstant_19 UniformConstant
%void = OpTypeVoid
%20 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -55,7 +56,7 @@
%v4int = OpTypeVector %int 4
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %int
- %48 = OpTypeFunction %void %main_out
+ %48 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %20
%23 = OpLabel
OpStore %x_4 %int_1
@@ -77,28 +78,29 @@
%40 = OpLabel
OpBranch %39
%39 = OpLabel
- %42 = OpLoad %13 %x_5
+ %42 = OpLoad %19 %x_5
%44 = OpCompositeConstruct %v2int %26 %28
%47 = OpCompositeConstruct %v4int %26 %int_0 %int_0 %int_0
OpImageWrite %42 %44 %47
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %48
-%tint_symbol_2 = OpFunctionParameter %main_out
- %52 = OpLabel
- %53 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %53
- OpReturn
+ %main_inner = OpFunction %main_out None %48
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %53 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %54 = OpFunctionCall %void %main_1
+ %55 = OpLoad %int %x_4
+ %56 = OpCompositeConstruct %main_out %55
+ OpReturnValue %56
OpFunctionEnd
%main = OpFunction %void None %20
- %55 = OpLabel
- %56 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %56
- %57 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %57
- %58 = OpFunctionCall %void %main_1
- %60 = OpLoad %int %x_4
- %61 = OpCompositeConstruct %main_out %60
- %59 = OpFunctionCall %void %tint_symbol_4 %61
+ %58 = OpLabel
+ %60 = OpLoad %v4float %x_2_param_1
+ %61 = OpLoad %int %x_3_param_1
+ %59 = OpFunctionCall %main_out %main_inner %60 %61
+ %62 = OpCompositeExtract %int %59 0
+ OpStore %x_4_1_1 %62
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.spvasm.expected.spvasm
index 99bfcd9..6946b61 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.spvasm.expected.spvasm
@@ -1,51 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v4float %x_2
@@ -69,22 +70,23 @@
OpStore %x_4 %int_1
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %38
-%tint_symbol_2 = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %43 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %int %x_4
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %17
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_4 %51
+ %48 = OpLabel
+ %50 = OpLoad %v4float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.wgsl.expected.spvasm
index 99bfcd9..6946b61 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/1.wgsl.expected.spvasm
@@ -1,51 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v4float %x_2
@@ -69,22 +70,23 @@
OpStore %x_4 %int_1
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %38
-%tint_symbol_2 = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %43 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %int %x_4
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %17
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_4 %51
+ %48 = OpLabel
+ %50 = OpLoad %v4float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.spvasm.expected.spvasm
index f4f2052..54f0b56 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.spvasm.expected.spvasm
@@ -5,36 +5,36 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %out_data_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %out_data_1_1 "out_data_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %out_data "out_data"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_is_odd "x_is_odd"
OpName %y_is_odd "y_is_odd"
OpName %main_out "main_out"
OpMemberName %main_out 0 "out_data_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %out_data_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %out_data = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_2 = OpVariable %_ptr_Output_int Output %9
+ %8 = OpConstantNull %int
+%out_data_1_1 = OpVariable %_ptr_Output_int Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %11 = OpConstantNull %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %11
+%_ptr_Private_int = OpTypePointer Private %int
+ %out_data = OpVariable %_ptr_Private_int Private %8
%void = OpTypeVoid
%14 = OpTypeFunction %void
%bool = OpTypeBool
@@ -47,7 +47,7 @@
%uint_1 = OpConstant %uint 1
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %int
- %43 = OpTypeFunction %void %main_out
+ %43 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%x_is_odd = OpVariable %_ptr_Function_bool Function %21
@@ -71,20 +71,20 @@
OpStore %out_data %40
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %43
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %43
+%gl_FragCoord_param = OpFunctionParameter %v4float
%47 = OpLabel
- %48 = OpCompositeExtract %int %tint_symbol_1 0
- OpStore %tint_symbol_2 %48
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %48 = OpFunctionCall %void %main_1
+ %49 = OpLoad %int %out_data
+ %50 = OpCompositeConstruct %main_out %49
+ OpReturnValue %50
OpFunctionEnd
%main = OpFunction %void None %14
- %50 = OpLabel
- %51 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %51
- %52 = OpFunctionCall %void %main_1
- %54 = OpLoad %int %out_data
- %55 = OpCompositeConstruct %main_out %54
- %53 = OpFunctionCall %void %tint_symbol_3 %55
+ %52 = OpLabel
+ %54 = OpLoad %v4float %gl_FragCoord_param_1
+ %53 = OpFunctionCall %main_out %main_inner %54
+ %55 = OpCompositeExtract %int %53 0
+ OpStore %out_data_1_1 %55
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.wgsl.expected.spvasm
index 3488753..3a924c0 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write/2-opt.wgsl.expected.spvasm
@@ -5,36 +5,36 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %out_data_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %out_data_1_1 "out_data_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %out_data "out_data"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %x_is_odd "x_is_odd"
OpName %y_is_odd "y_is_odd"
OpName %main_out "main_out"
OpMemberName %main_out 0 "out_data_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %out_data_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %out_data = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_2 = OpVariable %_ptr_Output_int Output %9
+ %8 = OpConstantNull %int
+%out_data_1_1 = OpVariable %_ptr_Output_int Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %11 = OpConstantNull %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %11
+%_ptr_Private_int = OpTypePointer Private %int
+ %out_data = OpVariable %_ptr_Private_int Private %8
%void = OpTypeVoid
%14 = OpTypeFunction %void
%bool = OpTypeBool
@@ -47,7 +47,7 @@
%uint_1 = OpConstant %uint 1
%int_0 = OpConstant %int 0
%main_out = OpTypeStruct %int
- %45 = OpTypeFunction %void %main_out
+ %45 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%x_is_odd = OpVariable %_ptr_Function_bool Function %21
@@ -76,20 +76,20 @@
OpStore %out_data %40
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %45
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %45
+%gl_FragCoord_param = OpFunctionParameter %v4float
%49 = OpLabel
- %50 = OpCompositeExtract %int %tint_symbol_1 0
- OpStore %tint_symbol_2 %50
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %50 = OpFunctionCall %void %main_1
+ %51 = OpLoad %int %out_data
+ %52 = OpCompositeConstruct %main_out %51
+ OpReturnValue %52
OpFunctionEnd
%main = OpFunction %void None %14
- %52 = OpLabel
- %53 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %53
- %54 = OpFunctionCall %void %main_1
- %56 = OpLoad %int %out_data
- %57 = OpCompositeConstruct %main_out %56
- %55 = OpFunctionCall %void %tint_symbol_3 %57
+ %54 = OpLabel
+ %56 = OpLoad %v4float %gl_FragCoord_param_1
+ %55 = OpFunctionCall %main_out %main_inner %56
+ %57 = OpCompositeExtract %int %55 0
+ OpStore %out_data_1_1 %57
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.spvasm.expected.spvasm
index 6d9599f..f08c812 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.spvasm.expected.spvasm
@@ -1,51 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v4float %x_2
@@ -69,22 +70,23 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %38
-%tint_symbol_2 = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %43 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %int %x_4
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %17
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_4 %51
+ %48 = OpLabel
+ %50 = OpLoad %v4float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.wgsl.expected.spvasm
index 6d9599f..f08c812 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_output_write_before_terminate/1.wgsl.expected.spvasm
@@ -1,51 +1,52 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 52
+; Bound: 53
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%int_1 = OpConstant %int 1
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %38 = OpTypeFunction %void %main_out
+ %38 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v4float %x_2
@@ -69,22 +70,23 @@
%36 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %38
-%tint_symbol_2 = OpFunctionParameter %main_out
- %42 = OpLabel
- %43 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %43
- OpReturn
+ %main_inner = OpFunction %main_out None %38
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %43 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %44 = OpFunctionCall %void %main_1
+ %45 = OpLoad %int %x_4
+ %46 = OpCompositeConstruct %main_out %45
+ OpReturnValue %46
OpFunctionEnd
%main = OpFunction %void None %17
- %45 = OpLabel
- %46 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %46
- %47 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %47
- %48 = OpFunctionCall %void %main_1
- %50 = OpLoad %int %x_4
- %51 = OpCompositeConstruct %main_out %50
- %49 = OpFunctionCall %void %tint_symbol_4 %51
+ %48 = OpLabel
+ %50 = OpLoad %v4float %x_2_param_1
+ %51 = OpLoad %int %x_3_param_1
+ %49 = OpFunctionCall %main_out %main_inner %50 %51
+ %52 = OpCompositeExtract %int %49 0
+ OpStore %x_4_1_1 %52
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.spvasm.expected.spvasm
index fef8d54..09c1dd6 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.spvasm.expected.spvasm
@@ -1,57 +1,58 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
%int = OpTypeInt 32 1
+%_ptr_Input_int = OpTypePointer Input %int
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
+%_ptr_Output_int = OpTypePointer Output %int
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
-%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
%void = OpTypeVoid
%21 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -61,7 +62,7 @@
%int_8 = OpConstant %int 8
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%main_out = OpTypeStruct %int
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %21
%24 = OpLabel
OpStore %x_4 %int_1
@@ -89,22 +90,23 @@
OpStore %48 %27
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %49
-%tint_symbol_2 = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %54 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %int %x_4
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %21
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %57
- %58 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %58
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %int %x_4
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_4 %62
+ %59 = OpLabel
+ %61 = OpLoad %v4float %x_2_param_1
+ %62 = OpLoad %int %x_3_param_1
+ %60 = OpFunctionCall %main_out %main_inner %61 %62
+ %63 = OpCompositeExtract %int %60 0
+ OpStore %x_4_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.wgsl.expected.spvasm
index fef8d54..09c1dd6 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.wgsl.expected.spvasm
@@ -1,57 +1,58 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
%int = OpTypeInt 32 1
+%_ptr_Input_int = OpTypePointer Input %int
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
+%_ptr_Output_int = OpTypePointer Output %int
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
-%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
%void = OpTypeVoid
%21 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -61,7 +62,7 @@
%int_8 = OpConstant %int 8
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%main_out = OpTypeStruct %int
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %21
%24 = OpLabel
OpStore %x_4 %int_1
@@ -89,22 +90,23 @@
OpStore %48 %27
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %49
-%tint_symbol_2 = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %54 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %int %x_4
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %21
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %57
- %58 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %58
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %int %x_4
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_4 %62
+ %59 = OpLabel
+ %61 = OpLoad %v4float %x_2_param_1
+ %62 = OpLoad %int %x_3_param_1
+ %60 = OpFunctionCall %main_out %main_inner %61 %62
+ %63 = OpCompositeExtract %int %60 0
+ OpStore %x_4_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.spvasm.expected.spvasm
index ef97582..2a1715f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.spvasm.expected.spvasm
@@ -1,57 +1,58 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
%int = OpTypeInt 32 1
+%_ptr_Input_int = OpTypePointer Input %int
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
+%_ptr_Output_int = OpTypePointer Output %int
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
-%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
%void = OpTypeVoid
%21 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -61,7 +62,7 @@
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %21
%24 = OpLabel
OpStore %x_4 %int_1
@@ -89,22 +90,23 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %49
-%tint_symbol_2 = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %54 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %int %x_4
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %21
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %57
- %58 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %58
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %int %x_4
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_4 %62
+ %59 = OpLabel
+ %61 = OpLoad %v4float %x_2_param_1
+ %62 = OpLoad %int %x_3_param_1
+ %60 = OpFunctionCall %main_out %main_inner %61 %62
+ %63 = OpCompositeExtract %int %60 0
+ OpStore %x_4_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.wgsl.expected.spvasm
index ef97582..2a1715f 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.wgsl.expected.spvasm
@@ -1,57 +1,58 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 63
+; Bound: 64
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
OpName %S "S"
OpMemberName %S 0 "field0"
OpName %x_5 "x_5"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpDecorate %S Block
OpMemberDecorate %S 0 Offset 0
OpDecorate %_runtimearr_int ArrayStride 4
OpDecorate %x_5 DescriptorSet 0
OpDecorate %x_5 Binding 0
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
%int = OpTypeInt 32 1
+%_ptr_Input_int = OpTypePointer Input %int
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
+%_ptr_Output_int = OpTypePointer Output %int
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%_runtimearr_int = OpTypeRuntimeArray %int
%S = OpTypeStruct %_runtimearr_int
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%x_5 = OpVariable %_ptr_StorageBuffer_S StorageBuffer
-%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
-%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
-%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
%void = OpTypeVoid
%21 = OpTypeFunction %void
%int_1 = OpConstant %int 1
@@ -61,7 +62,7 @@
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%bool = OpTypeBool
%main_out = OpTypeStruct %int
- %49 = OpTypeFunction %void %main_out
+ %49 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %21
%24 = OpLabel
OpStore %x_4 %int_1
@@ -89,22 +90,23 @@
%47 = OpLabel
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %49
-%tint_symbol_2 = OpFunctionParameter %main_out
- %53 = OpLabel
- %54 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %54
- OpReturn
+ %main_inner = OpFunction %main_out None %49
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %54 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %55 = OpFunctionCall %void %main_1
+ %56 = OpLoad %int %x_4
+ %57 = OpCompositeConstruct %main_out %56
+ OpReturnValue %57
OpFunctionEnd
%main = OpFunction %void None %21
- %56 = OpLabel
- %57 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %57
- %58 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %58
- %59 = OpFunctionCall %void %main_1
- %61 = OpLoad %int %x_4
- %62 = OpCompositeConstruct %main_out %61
- %60 = OpFunctionCall %void %tint_symbol_4 %62
+ %59 = OpLabel
+ %61 = OpLoad %v4float %x_2_param_1
+ %62 = OpLoad %int %x_3_param_1
+ %60 = OpFunctionCall %main_out %main_inner %61 %62
+ %63 = OpCompositeExtract %int %60 0
+ OpStore %x_4_1_1 %63
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.spvasm.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.spvasm.expected.spvasm
index cdf2918..aaa9420 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.spvasm.expected.spvasm
@@ -1,47 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %x_33_phi "x_33_phi"
OpName %x_34 "x_34"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -51,11 +52,11 @@
%uint = OpTypeInt 32 0
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %int
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
- %x_33_phi = OpVariable %_ptr_Function_int Function %9
- %x_34 = OpVariable %_ptr_Function_int Function %9
+ %x_33_phi = OpVariable %_ptr_Function_int Function %10
+ %x_34 = OpVariable %_ptr_Function_int Function %10
%23 = OpLoad %v4float %x_2
%24 = OpLoad %int %x_3
OpStore %x_33_phi %int_0
@@ -102,22 +103,23 @@
OpStore %x_4 %int_1
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %57
-%tint_symbol_2 = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %62 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %int %x_4
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %17
- %64 = OpLabel
- %65 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %65
- %66 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %int %x_4
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_4 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %x_2_param_1
+ %70 = OpLoad %int %x_3_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69 %70
+ %71 = OpCompositeExtract %int %68 0
+ OpStore %x_4_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.wgsl.expected.spvasm b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.wgsl.expected.spvasm
index cdf2918..aaa9420 100644
--- a/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/spirv_assembly/instruction/terminate_invocation/terminate_loop/1.wgsl.expected.spvasm
@@ -1,47 +1,48 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
-; Bound: 71
+; Bound: 72
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_1 %tint_symbol_3
+ OpEntryPoint Fragment %main "main" %x_2_param_1 %x_3_param_1 %x_4_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %x_2_param_1 "x_2_param_1"
+ OpName %x_3_param_1 "x_3_param_1"
+ OpName %x_4_1_1 "x_4_1_1"
OpName %x_2 "x_2"
OpName %x_3 "x_3"
OpName %x_4 "x_4"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_1 "tint_symbol_1"
- OpName %tint_symbol_3 "tint_symbol_3"
OpName %main_1 "main_1"
OpName %x_33_phi "x_33_phi"
OpName %x_34 "x_34"
OpName %main_out "main_out"
OpMemberName %main_out 0 "x_4_1"
- OpName %tint_symbol_4 "tint_symbol_4"
- OpName %tint_symbol_2 "tint_symbol_2"
+ OpName %main_inner "main_inner"
+ OpName %x_2_param "x_2_param"
+ OpName %x_3_param "x_3_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_1 Location 0
- OpDecorate %tint_symbol_1 Flat
- OpDecorate %tint_symbol_3 Location 0
+ OpDecorate %x_2_param_1 BuiltIn FragCoord
+ OpDecorate %x_3_param_1 Location 0
+ OpDecorate %x_3_param_1 Flat
+ OpDecorate %x_4_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %x_2 = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %x_3 = OpVariable %_ptr_Private_int Private %9
- %x_4 = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%x_2_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Input_int = OpTypePointer Input %int
-%tint_symbol_1 = OpVariable %_ptr_Input_int Input
+%x_3_param_1 = OpVariable %_ptr_Input_int Input
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_3 = OpVariable %_ptr_Output_int Output %9
+ %10 = OpConstantNull %int
+ %x_4_1_1 = OpVariable %_ptr_Output_int Output %10
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %13 = OpConstantNull %v4float
+ %x_2 = OpVariable %_ptr_Private_v4float Private %13
+%_ptr_Private_int = OpTypePointer Private %int
+ %x_3 = OpVariable %_ptr_Private_int Private %10
+ %x_4 = OpVariable %_ptr_Private_int Private %10
%void = OpTypeVoid
%17 = OpTypeFunction %void
%_ptr_Function_int = OpTypePointer Function %int
@@ -51,11 +52,11 @@
%uint = OpTypeInt 32 0
%int_10 = OpConstant %int 10
%main_out = OpTypeStruct %int
- %57 = OpTypeFunction %void %main_out
+ %57 = OpTypeFunction %main_out %v4float %int
%main_1 = OpFunction %void None %17
%20 = OpLabel
- %x_33_phi = OpVariable %_ptr_Function_int Function %9
- %x_34 = OpVariable %_ptr_Function_int Function %9
+ %x_33_phi = OpVariable %_ptr_Function_int Function %10
+ %x_34 = OpVariable %_ptr_Function_int Function %10
%23 = OpLoad %v4float %x_2
%24 = OpLoad %int %x_3
OpStore %x_33_phi %int_0
@@ -102,22 +103,23 @@
OpStore %x_4 %int_1
OpReturn
OpFunctionEnd
-%tint_symbol_4 = OpFunction %void None %57
-%tint_symbol_2 = OpFunctionParameter %main_out
- %61 = OpLabel
- %62 = OpCompositeExtract %int %tint_symbol_2 0
- OpStore %tint_symbol_3 %62
- OpReturn
+ %main_inner = OpFunction %main_out None %57
+ %x_2_param = OpFunctionParameter %v4float
+ %x_3_param = OpFunctionParameter %int
+ %62 = OpLabel
+ OpStore %x_2 %x_2_param
+ OpStore %x_3 %x_3_param
+ %63 = OpFunctionCall %void %main_1
+ %64 = OpLoad %int %x_4
+ %65 = OpCompositeConstruct %main_out %64
+ OpReturnValue %65
OpFunctionEnd
%main = OpFunction %void None %17
- %64 = OpLabel
- %65 = OpLoad %v4float %tint_symbol
- OpStore %x_2 %65
- %66 = OpLoad %int %tint_symbol_1
- OpStore %x_3 %66
- %67 = OpFunctionCall %void %main_1
- %69 = OpLoad %int %x_4
- %70 = OpCompositeConstruct %main_out %69
- %68 = OpFunctionCall %void %tint_symbol_4 %70
+ %67 = OpLabel
+ %69 = OpLoad %v4float %x_2_param_1
+ %70 = OpLoad %int %x_3_param_1
+ %68 = OpFunctionCall %main_out %main_inner %69 %70
+ %71 = OpCompositeExtract %int %68 0
+ OpStore %x_4_1_1 %71
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.spvasm.expected.spvasm b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.spvasm.expected.spvasm
index 3a3cd55..2428fec 100644
--- a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.spvasm.expected.spvasm
@@ -5,43 +5,43 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %position = OpVariable %_ptr_Private_v3float Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol = OpVariable %_ptr_Input_v3float Input
+%position_param_1 = OpVariable %_ptr_Input_v3float Input
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_v3float = OpTypePointer Private %v3float
+ %14 = OpConstantNull %v3float
+ %position = OpVariable %_ptr_Private_v3float Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
+ %27 = OpTypeFunction %main_out %v3float
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v3float %position
@@ -52,21 +52,21 @@
OpStore %gl_Position %26
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %27
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %27
+%position_param = OpFunctionParameter %v3float
%31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %32
- OpReturn
+ OpStore %position %position_param
+ %32 = OpFunctionCall %void %main_1
+ %33 = OpLoad %v4float %gl_Position
+ %34 = OpCompositeConstruct %main_out %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %17
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpLoad %v3float %tint_symbol
- OpStore %position %35
- %36 = OpFunctionCall %void %main_1
- %38 = OpLoad %v4float %gl_Position
- %39 = OpCompositeConstruct %main_out %38
- %37 = OpFunctionCall %void %tint_symbol_3 %39
+ %36 = OpLabel
+ %38 = OpLoad %v3float %position_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %gl_Position_1 %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.wgsl.expected.spvasm b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.wgsl.expected.spvasm
index 3a3cd55..2428fec 100644
--- a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/0.wgsl.expected.spvasm
@@ -5,43 +5,43 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %tint_pointsize %tint_symbol %tint_symbol_2
- OpName %tint_pointsize "tint_pointsize"
+ OpEntryPoint Vertex %main "main" %position_param_1 %gl_Position_1 %vertex_point_size
+ OpName %position_param_1 "position_param_1"
+ OpName %gl_Position_1 "gl_Position_1"
+ OpName %vertex_point_size "vertex_point_size"
OpName %position "position"
OpName %gl_Position "gl_Position"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "gl_Position"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %position_param "position_param"
OpName %main "main"
- OpDecorate %tint_pointsize BuiltIn PointSize
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 BuiltIn Position
+ OpDecorate %position_param_1 Location 0
+ OpDecorate %gl_Position_1 BuiltIn Position
+ OpDecorate %vertex_point_size BuiltIn PointSize
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
-%_ptr_Output_float = OpTypePointer Output %float
- %4 = OpConstantNull %float
-%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v3float = OpTypeVector %float 3
-%_ptr_Private_v3float = OpTypePointer Private %v3float
- %8 = OpConstantNull %v3float
- %position = OpVariable %_ptr_Private_v3float Private %8
- %v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %12 = OpConstantNull %v4float
-%gl_Position = OpVariable %_ptr_Private_v4float Private %12
%_ptr_Input_v3float = OpTypePointer Input %v3float
-%tint_symbol = OpVariable %_ptr_Input_v3float Input
+%position_param_1 = OpVariable %_ptr_Input_v3float Input
+ %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %12
+ %8 = OpConstantNull %v4float
+%gl_Position_1 = OpVariable %_ptr_Output_v4float Output %8
+%_ptr_Output_float = OpTypePointer Output %float
+ %11 = OpConstantNull %float
+%vertex_point_size = OpVariable %_ptr_Output_float Output %11
+%_ptr_Private_v3float = OpTypePointer Private %v3float
+ %14 = OpConstantNull %v3float
+ %position = OpVariable %_ptr_Private_v3float Private %14
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+%gl_Position = OpVariable %_ptr_Private_v4float Private %8
%void = OpTypeVoid
%17 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%main_out = OpTypeStruct %v4float
- %27 = OpTypeFunction %void %main_out
+ %27 = OpTypeFunction %main_out %v3float
%main_1 = OpFunction %void None %17
%20 = OpLabel
%21 = OpLoad %v3float %position
@@ -52,21 +52,21 @@
OpStore %gl_Position %26
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %27
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %27
+%position_param = OpFunctionParameter %v3float
%31 = OpLabel
- %32 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %32
- OpReturn
+ OpStore %position %position_param
+ %32 = OpFunctionCall %void %main_1
+ %33 = OpLoad %v4float %gl_Position
+ %34 = OpCompositeConstruct %main_out %33
+ OpReturnValue %34
OpFunctionEnd
%main = OpFunction %void None %17
- %34 = OpLabel
- OpStore %tint_pointsize %float_1
- %35 = OpLoad %v3float %tint_symbol
- OpStore %position %35
- %36 = OpFunctionCall %void %main_1
- %38 = OpLoad %v4float %gl_Position
- %39 = OpCompositeConstruct %main_out %38
- %37 = OpFunctionCall %void %tint_symbol_3 %39
+ %36 = OpLabel
+ %38 = OpLoad %v3float %position_param_1
+ %37 = OpFunctionCall %main_out %main_inner %38
+ %39 = OpCompositeExtract %v4float %37 0
+ OpStore %gl_Position_1 %39
+ OpStore %vertex_point_size %float_1
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.spvasm.expected.spvasm b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.spvasm.expected.spvasm
index 08bdcac..553335c 100644
--- a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.spvasm.expected.spvasm
@@ -5,37 +5,37 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %expect_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %expect_1_1 "expect_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %expect "expect"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %inbounds "inbounds"
OpName %x_31 "x_31"
OpName %x_32_phi "x_32_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "expect_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %expect_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %expect = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_2 = OpVariable %_ptr_Output_int Output %9
+ %8 = OpConstantNull %int
+ %expect_1_1 = OpVariable %_ptr_Output_int Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %11 = OpConstantNull %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %11
+%_ptr_Private_int = OpTypePointer Private %int
+ %expect = OpVariable %_ptr_Private_int Private %8
%void = OpTypeVoid
%14 = OpTypeFunction %void
%bool = OpTypeBool
@@ -49,7 +49,7 @@
%int_1 = OpConstant %int 1
%int_n1 = OpConstant %int -1
%main_out = OpTypeStruct %int
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%inbounds = OpVariable %_ptr_Function_bool Function %21
@@ -78,20 +78,20 @@
OpStore %expect %41
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %44
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %44
+%gl_FragCoord_param = OpFunctionParameter %v4float
%48 = OpLabel
- %49 = OpCompositeExtract %int %tint_symbol_1 0
- OpStore %tint_symbol_2 %49
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %int %expect
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %14
- %51 = OpLabel
- %52 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %52
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %int %expect
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_3 %56
+ %53 = OpLabel
+ %55 = OpLoad %v4float %gl_FragCoord_param_1
+ %54 = OpFunctionCall %main_out %main_inner %55
+ %56 = OpCompositeExtract %int %54 0
+ OpStore %expect_1_1 %56
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.wgsl.expected.spvasm b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.wgsl.expected.spvasm
index 08bdcac..553335c 100644
--- a/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/subgroup_uniform_control_flow/discard/subgroup_reconverge_discard00/2-opt.wgsl.expected.spvasm
@@ -5,37 +5,37 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %expect_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %expect_1_1 "expect_1_1"
OpName %gl_FragCoord "gl_FragCoord"
OpName %expect "expect"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %inbounds "inbounds"
OpName %x_31 "x_31"
OpName %x_32_phi "x_32_phi"
OpName %main_out "main_out"
OpMemberName %main_out 0 "expect_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %expect_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
- %int = OpTypeInt 32 1
-%_ptr_Private_int = OpTypePointer Private %int
- %9 = OpConstantNull %int
- %expect = OpVariable %_ptr_Private_int Private %9
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
+ %int = OpTypeInt 32 1
%_ptr_Output_int = OpTypePointer Output %int
-%tint_symbol_2 = OpVariable %_ptr_Output_int Output %9
+ %8 = OpConstantNull %int
+ %expect_1_1 = OpVariable %_ptr_Output_int Output %8
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %11 = OpConstantNull %v4float
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %11
+%_ptr_Private_int = OpTypePointer Private %int
+ %expect = OpVariable %_ptr_Private_int Private %8
%void = OpTypeVoid
%14 = OpTypeFunction %void
%bool = OpTypeBool
@@ -49,7 +49,7 @@
%int_1 = OpConstant %int 1
%int_n1 = OpConstant %int -1
%main_out = OpTypeStruct %int
- %44 = OpTypeFunction %void %main_out
+ %44 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %14
%17 = OpLabel
%inbounds = OpVariable %_ptr_Function_bool Function %21
@@ -78,20 +78,20 @@
OpStore %expect %41
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %44
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %44
+%gl_FragCoord_param = OpFunctionParameter %v4float
%48 = OpLabel
- %49 = OpCompositeExtract %int %tint_symbol_1 0
- OpStore %tint_symbol_2 %49
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %49 = OpFunctionCall %void %main_1
+ %50 = OpLoad %int %expect
+ %51 = OpCompositeConstruct %main_out %50
+ OpReturnValue %51
OpFunctionEnd
%main = OpFunction %void None %14
- %51 = OpLabel
- %52 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %52
- %53 = OpFunctionCall %void %main_1
- %55 = OpLoad %int %expect
- %56 = OpCompositeConstruct %main_out %55
- %54 = OpFunctionCall %void %tint_symbol_3 %56
+ %53 = OpLabel
+ %55 = OpLoad %v4float %gl_FragCoord_param_1
+ %54 = OpFunctionCall %main_out %main_inner %55
+ %56 = OpCompositeExtract %int %54 0
+ OpStore %expect_1_1 %56
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.spvasm.expected.spvasm b/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.spvasm.expected.spvasm
index 2050b3e..b31dbf7 100644
--- a/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.spvasm.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_in_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_in_param_1 "color_in_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %color_out "color_out"
OpName %color_in "color_in"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %color_in_param "color_in_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %color_in_param_1 Location 0
+ OpDecorate %color_out_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color_out = OpVariable %_ptr_Private_v4float Private %5
- %color_in = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%color_in_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
+ %color_in = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %color_in
OpStore %color_out %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%color_in_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %color_in %color_in_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %color_out
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %color_in %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %color_out
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %color_in_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %color_out_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.wgsl.expected.spvasm b/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.wgsl.expected.spvasm
index 2050b3e..b31dbf7 100644
--- a/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/texture/subgroup_lod/texel_fetch/1.wgsl.expected.spvasm
@@ -5,55 +5,55 @@
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %color_in_param_1 %color_out_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %color_in_param_1 "color_in_param_1"
+ OpName %color_out_1_1 "color_out_1_1"
OpName %color_out "color_out"
OpName %color_in "color_in"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "color_out_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %color_in_param "color_in_param"
OpName %main "main"
- OpDecorate %tint_symbol Location 0
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %color_in_param_1 Location 0
+ OpDecorate %color_out_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %color_out = OpVariable %_ptr_Private_v4float Private %5
- %color_in = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%color_in_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+%color_out_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %color_out = OpVariable %_ptr_Private_v4float Private %7
+ %color_in = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%main_out = OpTypeStruct %v4float
- %16 = OpTypeFunction %void %main_out
+ %16 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%15 = OpLoad %v4float %color_in
OpStore %color_out %15
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %16
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %16
+%color_in_param = OpFunctionParameter %v4float
%20 = OpLabel
- %21 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %21
- OpReturn
+ OpStore %color_in %color_in_param
+ %21 = OpFunctionCall %void %main_1
+ %22 = OpLoad %v4float %color_out
+ %23 = OpCompositeConstruct %main_out %22
+ OpReturnValue %23
OpFunctionEnd
%main = OpFunction %void None %11
- %23 = OpLabel
- %24 = OpLoad %v4float %tint_symbol
- OpStore %color_in %24
- %25 = OpFunctionCall %void %main_1
- %27 = OpLoad %v4float %color_out
- %28 = OpCompositeConstruct %main_out %27
- %26 = OpFunctionCall %void %tint_symbol_3 %28
+ %25 = OpLabel
+ %27 = OpLoad %v4float %color_in_param_1
+ %26 = OpFunctionCall %main_out %main_inner %27
+ %28 = OpCompositeExtract %v4float %26 0
+ OpStore %color_out_1_1 %28
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.spvasm.expected.spvasm b/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.spvasm.expected.spvasm
index 9f52743..c199929 100644
--- a/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.spvasm.expected.spvasm
+++ b/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.spvasm.expected.spvasm
@@ -6,31 +6,31 @@
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %result_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %result_1_1 "result_1_1"
OpName %result "result"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "result_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %result_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %result = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+ %result_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %result = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +40,7 @@
%float_255 = OpConstant %float 255
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %31 = OpTypeFunction %void %main_out
+ %31 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -55,20 +55,20 @@
OpStore %result %30
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %31
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %31
+%gl_FragCoord_param = OpFunctionParameter %v4float
%35 = OpLabel
- %36 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %36
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %result
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %11
- %38 = OpLabel
- %39 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %result
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_3 %43
+ %40 = OpLabel
+ %42 = OpLoad %v4float %gl_FragCoord_param_1
+ %41 = OpFunctionCall %main_out %main_inner %42
+ %43 = OpCompositeExtract %v4float %41 0
+ OpStore %result_1_1 %43
OpReturn
OpFunctionEnd
diff --git a/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.wgsl.expected.spvasm b/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.wgsl.expected.spvasm
index 9f52743..c199929 100644
--- a/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.wgsl.expected.spvasm
+++ b/test/vk-gl-cts/texture/texel_offset/texel_offset/0-opt.wgsl.expected.spvasm
@@ -6,31 +6,31 @@
OpCapability Shader
%24 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %tint_symbol %tint_symbol_2
+ OpEntryPoint Fragment %main "main" %gl_FragCoord_param_1 %result_1_1
OpExecutionMode %main OriginUpperLeft
+ OpName %gl_FragCoord_param_1 "gl_FragCoord_param_1"
+ OpName %result_1_1 "result_1_1"
OpName %result "result"
OpName %gl_FragCoord "gl_FragCoord"
- OpName %tint_symbol "tint_symbol"
- OpName %tint_symbol_2 "tint_symbol_2"
OpName %main_1 "main_1"
OpName %main_out "main_out"
OpMemberName %main_out 0 "result_1"
- OpName %tint_symbol_3 "tint_symbol_3"
- OpName %tint_symbol_1 "tint_symbol_1"
+ OpName %main_inner "main_inner"
+ OpName %gl_FragCoord_param "gl_FragCoord_param"
OpName %main "main"
- OpDecorate %tint_symbol BuiltIn FragCoord
- OpDecorate %tint_symbol_2 Location 0
+ OpDecorate %gl_FragCoord_param_1 BuiltIn FragCoord
+ OpDecorate %result_1_1 Location 0
OpMemberDecorate %main_out 0 Offset 0
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
-%_ptr_Private_v4float = OpTypePointer Private %v4float
- %5 = OpConstantNull %v4float
- %result = OpVariable %_ptr_Private_v4float Private %5
-%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %5
%_ptr_Input_v4float = OpTypePointer Input %v4float
-%tint_symbol = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord_param_1 = OpVariable %_ptr_Input_v4float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
-%tint_symbol_2 = OpVariable %_ptr_Output_v4float Output %5
+ %7 = OpConstantNull %v4float
+ %result_1_1 = OpVariable %_ptr_Output_v4float Output %7
+%_ptr_Private_v4float = OpTypePointer Private %v4float
+ %result = OpVariable %_ptr_Private_v4float Private %7
+%gl_FragCoord = OpVariable %_ptr_Private_v4float Private %7
%void = OpTypeVoid
%11 = OpTypeFunction %void
%uint = OpTypeInt 32 0
@@ -40,7 +40,7 @@
%float_255 = OpConstant %float 255
%float_0 = OpConstant %float 0
%main_out = OpTypeStruct %v4float
- %31 = OpTypeFunction %void %main_out
+ %31 = OpTypeFunction %main_out %v4float
%main_1 = OpFunction %void None %11
%14 = OpLabel
%18 = OpAccessChain %_ptr_Private_float %gl_FragCoord %uint_0
@@ -55,20 +55,20 @@
OpStore %result %30
OpReturn
OpFunctionEnd
-%tint_symbol_3 = OpFunction %void None %31
-%tint_symbol_1 = OpFunctionParameter %main_out
+ %main_inner = OpFunction %main_out None %31
+%gl_FragCoord_param = OpFunctionParameter %v4float
%35 = OpLabel
- %36 = OpCompositeExtract %v4float %tint_symbol_1 0
- OpStore %tint_symbol_2 %36
- OpReturn
+ OpStore %gl_FragCoord %gl_FragCoord_param
+ %36 = OpFunctionCall %void %main_1
+ %37 = OpLoad %v4float %result
+ %38 = OpCompositeConstruct %main_out %37
+ OpReturnValue %38
OpFunctionEnd
%main = OpFunction %void None %11
- %38 = OpLabel
- %39 = OpLoad %v4float %tint_symbol
- OpStore %gl_FragCoord %39
- %40 = OpFunctionCall %void %main_1
- %42 = OpLoad %v4float %result
- %43 = OpCompositeConstruct %main_out %42
- %41 = OpFunctionCall %void %tint_symbol_3 %43
+ %40 = OpLabel
+ %42 = OpLoad %v4float %gl_FragCoord_param_1
+ %41 = OpFunctionCall %main_out %main_inner %42
+ %43 = OpCompositeExtract %v4float %41 0
+ OpStore %result_1_1 %43
OpReturn
OpFunctionEnd