blob: fa85b25c9d8f2dfd3955e35913cc9b1b93b75a73 [file] [log] [blame]
Ben Clayton0a2b5f22021-06-09 14:32:14 +00001; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
Ben Clayton77a90cb2023-03-06 18:25:08 +00004; Bound: 55
Ben Clayton0a2b5f22021-06-09 14:32:14 +00005; Schema: 0
6 OpCapability Shader
7 OpMemoryModel Logical GLSL450
Ben Clayton77a90cb2023-03-06 18:25:08 +00008 OpEntryPoint Vertex %vertex_main "vertex_main" %value_1 %vertex_point_size
Ben Clayton0a2b5f22021-06-09 14:32:14 +00009 OpEntryPoint Fragment %fragment_main "fragment_main"
10 OpEntryPoint GLCompute %compute_main "compute_main"
11 OpExecutionMode %fragment_main OriginUpperLeft
12 OpExecutionMode %compute_main LocalSize 1 1 1
Ben Clayton77a90cb2023-03-06 18:25:08 +000013 OpName %value_1 "value_1"
James Price11c6fcd2021-08-05 17:34:19 +000014 OpName %vertex_point_size "vertex_point_size"
Ben Clayton77a90cb2023-03-06 18:25:08 +000015 OpName %prevent_dce_block "prevent_dce_block"
16 OpMemberName %prevent_dce_block 0 "inner"
17 OpName %prevent_dce "prevent_dce"
18 OpName %assign_and_preserve_padding_prevent_dce "assign_and_preserve_padding_prevent_dce"
19 OpName %value "value"
Ben Clayton0a2b5f22021-06-09 14:32:14 +000020 OpName %transpose_ed4bdc "transpose_ed4bdc"
21 OpName %res "res"
James Price11c6fcd2021-08-05 17:34:19 +000022 OpName %vertex_main_inner "vertex_main_inner"
Ben Clayton0a2b5f22021-06-09 14:32:14 +000023 OpName %vertex_main "vertex_main"
24 OpName %fragment_main "fragment_main"
25 OpName %compute_main "compute_main"
Ben Clayton77a90cb2023-03-06 18:25:08 +000026 OpDecorate %value_1 BuiltIn Position
James Price11c6fcd2021-08-05 17:34:19 +000027 OpDecorate %vertex_point_size BuiltIn PointSize
Ben Clayton77a90cb2023-03-06 18:25:08 +000028 OpDecorate %prevent_dce_block Block
29 OpMemberDecorate %prevent_dce_block 0 Offset 0
30 OpMemberDecorate %prevent_dce_block 0 ColMajor
31 OpMemberDecorate %prevent_dce_block 0 MatrixStride 16
32 OpDecorate %prevent_dce DescriptorSet 2
33 OpDecorate %prevent_dce Binding 0
Ben Clayton0a2b5f22021-06-09 14:32:14 +000034 %float = OpTypeFloat 32
Ben Clayton0a2b5f22021-06-09 14:32:14 +000035 %v4float = OpTypeVector %float 4
36%_ptr_Output_v4float = OpTypePointer Output %v4float
James Price11c6fcd2021-08-05 17:34:19 +000037 %5 = OpConstantNull %v4float
Ben Clayton77a90cb2023-03-06 18:25:08 +000038 %value_1 = OpVariable %_ptr_Output_v4float Output %5
James Price11c6fcd2021-08-05 17:34:19 +000039%_ptr_Output_float = OpTypePointer Output %float
40 %8 = OpConstantNull %float
41%vertex_point_size = OpVariable %_ptr_Output_float Output %8
Ben Clayton0a2b5f22021-06-09 14:32:14 +000042 %v3float = OpTypeVector %float 3
43%mat2v3float = OpTypeMatrix %v3float 2
Ben Clayton77a90cb2023-03-06 18:25:08 +000044%prevent_dce_block = OpTypeStruct %mat2v3float
45%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
46%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
47 %void = OpTypeVoid
48 %14 = OpTypeFunction %void %mat2v3float
49 %uint = OpTypeInt 32 0
50 %uint_0 = OpConstant %uint 0
51 %int = OpTypeInt 32 1
52 %22 = OpConstantNull %int
53%_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float
54 %25 = OpConstantNull %uint
55 %int_1 = OpConstant %int 1
56 %uint_1 = OpConstant %uint 1
57 %31 = OpTypeFunction %void
Ben Clayton0a2b5f22021-06-09 14:32:14 +000058 %float_1 = OpConstant %float 1
Ben Clayton77a90cb2023-03-06 18:25:08 +000059 %35 = OpConstantComposite %v3float %float_1 %float_1 %float_1
60 %36 = OpConstantComposite %mat2v3float %35 %35
Ben Claytonee36e392022-07-26 14:27:25 +000061%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
Ben Clayton77a90cb2023-03-06 18:25:08 +000062 %39 = OpConstantNull %mat2v3float
63 %42 = OpTypeFunction %v4float
64%assign_and_preserve_padding_prevent_dce = OpFunction %void None %14
65 %value = OpFunctionParameter %mat2v3float
66 %18 = OpLabel
67 %24 = OpAccessChain %_ptr_StorageBuffer_v3float %prevent_dce %uint_0 %22
68 %26 = OpCompositeExtract %v3float %value 0
69 OpStore %24 %26
70 %28 = OpAccessChain %_ptr_StorageBuffer_v3float %prevent_dce %uint_0 %int_1
71 %30 = OpCompositeExtract %v3float %value 1
72 OpStore %28 %30
Ben Clayton0a2b5f22021-06-09 14:32:14 +000073 OpReturn
74 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000075%transpose_ed4bdc = OpFunction %void None %31
76 %33 = OpLabel
77 %res = OpVariable %_ptr_Function_mat2v3float Function %39
78 OpStore %res %36
79 %41 = OpLoad %mat2v3float %res
80 %40 = OpFunctionCall %void %assign_and_preserve_padding_prevent_dce %41
81 OpReturn
82 OpFunctionEnd
83%vertex_main_inner = OpFunction %v4float None %42
84 %44 = OpLabel
85 %45 = OpFunctionCall %void %transpose_ed4bdc
James Price11c6fcd2021-08-05 17:34:19 +000086 OpReturnValue %5
Ben Clayton0a2b5f22021-06-09 14:32:14 +000087 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000088%vertex_main = OpFunction %void None %31
89 %47 = OpLabel
90 %48 = OpFunctionCall %v4float %vertex_main_inner
91 OpStore %value_1 %48
James Price11c6fcd2021-08-05 17:34:19 +000092 OpStore %vertex_point_size %float_1
Ben Clayton0a2b5f22021-06-09 14:32:14 +000093 OpReturn
94 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +000095%fragment_main = OpFunction %void None %31
96 %50 = OpLabel
97 %51 = OpFunctionCall %void %transpose_ed4bdc
Ben Clayton0a2b5f22021-06-09 14:32:14 +000098 OpReturn
99 OpFunctionEnd
Ben Clayton77a90cb2023-03-06 18:25:08 +0000100%compute_main = OpFunction %void None %31
101 %53 = OpLabel
102 %54 = OpFunctionCall %void %transpose_ed4bdc
Ben Clayton0a2b5f22021-06-09 14:32:14 +0000103 OpReturn
104 OpFunctionEnd