Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; SPIR-V
- ; Version: 1.3
- ; Generator: Khronos; 0
- ; Bound: 1011
- ; Schema: 0
- OpCapability StorageUniform16
- OpCapability Shader
- OpCapability ImageQuery
- OpCapability Image1D
- OpExtension "SPV_KHR_storage_buffer_storage_class"
- OpExtension "SPV_KHR_variable_pointers"
- %194 = OpExtInstImport "GLSL.std.450"
- OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %1008 "main" %vertex_index %instance_index %per_vertex %in_attr0 %in_attr1 %in_attr2 %in_attr3 %out_attr0 %out_attr1 %out_attr2
- OpDecorate %CbufStd140Array ArrayStride 16
- OpDecorate %CbufScalarArray ArrayStride 4
- OpDecorate %_struct_35 Block
- OpMemberDecorate %_struct_35 0 Offset 0
- OpDecorate %_struct_36 Block
- OpMemberDecorate %_struct_36 0 Offset 0
- OpDecorate %GmemArray ArrayStride 4
- OpDecorate %_struct_41 Block
- OpMemberDecorate %_struct_41 0 Offset 0
- OpDecorate %vertex_index BuiltIn VertexIndex
- OpDecorate %instance_index BuiltIn InstanceIndex
- OpDecorate %PerVertex Block
- OpMemberDecorate %PerVertex 0 BuiltIn Position
- OpDecorate %in_attr0 Location 0
- OpDecorate %in_attr1 Location 1
- OpDecorate %in_attr2 Location 2
- OpDecorate %in_attr3 Location 3
- OpDecorate %out_attr0 Location 0
- OpDecorate %out_attr1 Location 1
- OpDecorate %out_attr2 Location 2
- OpDecorate %cbuf_1 Binding 0
- OpDecorate %cbuf_1 DescriptorSet 0
- OpDecorate %cbuf_8 Binding 1
- OpDecorate %cbuf_8 DescriptorSet 0
- OpDecorate %cbuf_9 Binding 2
- OpDecorate %cbuf_9 DescriptorSet 0
- OpDecorate %cbuf_10 Binding 3
- OpDecorate %cbuf_10 DescriptorSet 0
- %void = OpTypeVoid
- %bool = OpTypeBool
- %bool2 = OpTypeVector %bool 2
- %int = OpTypeInt 32 1
- %int2 = OpTypeVector %int 2
- %int3 = OpTypeVector %int 3
- %int4 = OpTypeVector %int 4
- %uint = OpTypeInt 32 0
- %uint2 = OpTypeVector %uint 2
- %uint3 = OpTypeVector %uint 3
- %uint4 = OpTypeVector %uint 4
- %float = OpTypeFloat 32
- %float2 = OpTypeVector %float 2
- %float3 = OpTypeVector %float 3
- %float4 = OpTypeVector %float 4
- %prv_bool = OpTypePointer Private %bool
- %prv_float = OpTypePointer Private %float
- %func_uint = OpTypePointer Function %uint
- %in_bool = OpTypePointer Input %bool
- %in_int = OpTypePointer Input %int
- %in_int4 = OpTypePointer Input %int4
- %in_uint = OpTypePointer Input %uint
- %in_uint3 = OpTypePointer Input %uint3
- %in_uint4 = OpTypePointer Input %uint4
- %in_float = OpTypePointer Input %float
- %in_float2 = OpTypePointer Input %float2
- %in_float4 = OpTypePointer Input %float4
- %out_float = OpTypePointer Output %float
- %out_float4 = OpTypePointer Output %float4
- %_ptr_Uniform_float = OpTypePointer Uniform %float
- %uint_4096 = OpConstant %uint 4096
- %CbufStd140Array = OpTypeArray %float4 %uint_4096
- %uint_16384 = OpConstant %uint 16384
- %CbufScalarArray = OpTypeArray %float %uint_16384
- %_struct_35 = OpTypeStruct %CbufStd140Array
- %_struct_36 = OpTypeStruct %CbufScalarArray
- %_ptr_Uniform__struct_35 = OpTypePointer Uniform %_struct_35
- %_ptr_Uniform__struct_36 = OpTypePointer Uniform %_struct_36
- %_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
- %GmemArray = OpTypeRuntimeArray %float
- %_struct_41 = OpTypeStruct %GmemArray
- %_ptr_StorageBuffer__struct_41 = OpTypePointer StorageBuffer %_struct_41
- %float_0 = OpConstant %float 0
- %true = OpConstantTrue %bool
- %false = OpConstantFalse %bool
- %PerVertex = OpTypeStruct %float4
- %_ptr_Output_PerVertex = OpTypePointer Output %PerVertex
- %85 = OpConstantNull %float4
- %93 = OpTypeFunction %void
- %uint_10 = OpConstant %uint 10
- %uint_20 = OpConstant %uint 20
- %_arr_uint_uint_20 = OpTypeArray %uint %uint_20
- %105 = OpConstantNull %_arr_uint_uint_20
- %_ptr_Function__arr_uint_uint_20 = OpTypePointer Function %_arr_uint_uint_20
- %uint_0 = OpConstant %uint 0
- %uint_3 = OpConstant %uint 3
- %uint_2 = OpConstant %uint 2
- %uint_32 = OpConstant %uint 32
- %uint_0_0 = OpConstant %uint 0
- %uint_29 = OpConstant %uint 29
- %uint_292 = OpConstant %uint 292
- %uint_1 = OpConstant %uint 1
- %uint_1084227584 = OpConstant %uint 1084227584
- %float_0_5 = OpConstant %float 0.5
- %uint_49 = OpConstant %uint 49
- %uint_1056964608 = OpConstant %uint 1056964608
- %uint_1048576 = OpConstant %uint 1048576
- %uint_524288 = OpConstant %uint 524288
- %uint_80 = OpConstant %uint 80
- %uint_1065353216 = OpConstant %uint 1065353216
- %uint_4 = OpConstant %uint 4
- %uint_5 = OpConstant %uint 5
- %uint_6 = OpConstant %uint 6
- %uint_96 = OpConstant %uint 96
- %uint_1536 = OpConstant %uint 1536
- %uint_3204448256 = OpConstant %uint 3204448256
- %uint_64 = OpConstant %uint 64
- %uint_100 = OpConstant %uint 100
- %uint_52 = OpConstant %uint 52
- %uint_208 = OpConstant %uint 208
- %uint_1540 = OpConstant %uint 1540
- %uint_68 = OpConstant %uint 68
- %uint_212 = OpConstant %uint 212
- %uint_56 = OpConstant %uint 56
- %uint_192 = OpConstant %uint 192
- %uint_224 = OpConstant %uint 224
- %uint_4294967295 = OpConstant %uint 4294967295
- %uint_84 = OpConstant %uint 84
- %uint_228 = OpConstant %uint 228
- %uint_72 = OpConstant %uint 72
- %uint_196 = OpConstant %uint 196
- %uint_88 = OpConstant %uint 88
- %uint_216 = OpConstant %uint 216
- %uint_104 = OpConstant %uint 104
- %uint_232 = OpConstant %uint 232
- %uint_76 = OpConstant %uint 76
- %uint_200 = OpConstant %uint 200
- %uint_92 = OpConstant %uint 92
- %uint_220 = OpConstant %uint 220
- %uint_108 = OpConstant %uint 108
- %uint_236 = OpConstant %uint 236
- %uint_204 = OpConstant %uint 204
- %uint_960 = OpConstant %uint 960
- %uint_964 = OpConstant %uint 964
- %uint_968 = OpConstant %uint 968
- %uint_48 = OpConstant %uint 48
- %uint_944 = OpConstant %uint 944
- %uint_8 = OpConstant %uint 8
- %uint_160 = OpConstant %uint 160
- %uint_176 = OpConstant %uint 176
- %uint_144 = OpConstant %uint 144
- %uint_128 = OpConstant %uint 128
- %uint_776 = OpConstant %uint 776
- %uint_780 = OpConstant %uint 780
- %uint_768 = OpConstant %uint 768
- %uint_164 = OpConstant %uint 164
- %uint_180 = OpConstant %uint 180
- %uint_148 = OpConstant %uint 148
- %uint_132 = OpConstant %uint 132
- %uint_1088 = OpConstant %uint 1088
- %uint_772 = OpConstant %uint 772
- %uint_168 = OpConstant %uint 168
- %uint_184 = OpConstant %uint 184
- %uint_152 = OpConstant %uint 152
- %uint_136 = OpConstant %uint 136
- %uint_12 = OpConstant %uint 12
- %uint_172 = OpConstant %uint 172
- %uint_188 = OpConstant %uint 188
- %uint_156 = OpConstant %uint 156
- %uint_140 = OpConstant %uint 140
- %vertex_index = OpVariable %in_uint Input
- %instance_index = OpVariable %in_uint Input
- %per_vertex = OpVariable %_ptr_Output_PerVertex Output
- %gpr_0 = OpVariable %prv_float Private %float_0
- %gpr_1 = OpVariable %prv_float Private %float_0
- %gpr_2 = OpVariable %prv_float Private %float_0
- %gpr_3 = OpVariable %prv_float Private %float_0
- %gpr_4 = OpVariable %prv_float Private %float_0
- %gpr_5 = OpVariable %prv_float Private %float_0
- %gpr_6 = OpVariable %prv_float Private %float_0
- %gpr_7 = OpVariable %prv_float Private %float_0
- %gpr_8 = OpVariable %prv_float Private %float_0
- %gpr_9 = OpVariable %prv_float Private %float_0
- %gpr_10 = OpVariable %prv_float Private %float_0
- %gpr_11 = OpVariable %prv_float Private %float_0
- %gpr_12 = OpVariable %prv_float Private %float_0
- %gpr_13 = OpVariable %prv_float Private %float_0
- %gpr_14 = OpVariable %prv_float Private %float_0
- %gpr_16 = OpVariable %prv_float Private %float_0
- %pred_0 = OpVariable %prv_bool Private %false
- %pred_1 = OpVariable %prv_bool Private %false
- %pred_2 = OpVariable %prv_bool Private %false
- %pred_3 = OpVariable %prv_bool Private %false
- %pred_4 = OpVariable %prv_bool Private %false
- %pred_5 = OpVariable %prv_bool Private %false
- %pred_6 = OpVariable %prv_bool Private %false
- %zero = OpVariable %prv_bool Private %false
- %sign = OpVariable %prv_bool Private %false
- %carry = OpVariable %prv_bool Private %false
- %overflow = OpVariable %prv_bool Private %false
- %in_attr0 = OpVariable %in_float4 Input
- %in_attr1 = OpVariable %in_float4 Input
- %in_attr2 = OpVariable %in_float4 Input
- %in_attr3 = OpVariable %in_float4 Input
- %out_attr0 = OpVariable %out_float4 Output %85
- %out_attr1 = OpVariable %out_float4 Output %85
- %out_attr2 = OpVariable %out_float4 Output %85
- %cbuf_1 = OpVariable %_ptr_Uniform__struct_36 Uniform
- %cbuf_8 = OpVariable %_ptr_Uniform__struct_36 Uniform
- %cbuf_9 = OpVariable %_ptr_Uniform__struct_36 Uniform
- %cbuf_10 = OpVariable %_ptr_Uniform__struct_36 Uniform
- %94 = OpFunction %void None %93
- %95 = OpLabel
- %jmp_to = OpVariable %func_uint Function %uint_10
- %ssy_flow_stack = OpVariable %_ptr_Function__arr_uint_uint_20 Function %105
- %ssy_flow_stack_top = OpVariable %func_uint Function %uint_0
- %pbk_flow_stack = OpVariable %_ptr_Function__arr_uint_uint_20 Function %105
- %pbk_flow_stack_top = OpVariable %func_uint Function %uint_0
- OpBranch %loop
- %loop = OpLabel
- OpLoopMerge %merge %continue None
- OpBranch %98
- %98 = OpLabel
- %113 = OpLoad %uint %jmp_to
- OpSelectionMerge %99 None
- OpSwitch %113 %112 10 %label_0xa 29 %label_0x1d 49 %label_0x31
- %112 = OpLabel
- OpReturn
- %label_0xa = OpLabel
- OpBranch %label_0x1d
- %label_0x1d = OpLabel
- ;; vkBegin
- %176 = OpLoad %bool %pred_0
- %177 = OpLogicalNot %bool %176
- ; OpSelectionMerge %175 None
- ; OpBranchConditional %177 %174 %175
- ; %174 = OpLabel
- ; %178 = OpAccessChain %out_float %per_vertex %uint_0_0 %uint_2
- ; %179 = OpAccessChain %out_float %per_vertex %uint_0_0 %uint_3
- ; %180 = OpLoad %float %178
- ; %181 = OpLoad %float %179
- ; %182 = OpFAdd %float %180 %181
- ; %184 = OpFMul %float %182 %float_0_5
- ; OpStore %178 %184
- %185 = OpLoad %bool %pred_0
- %186 = OpLogicalNot %bool %185
- OpSelectionMerge %188 None
- OpBranchConditional %186 %187 %188 1 0
- %187 = OpLabel
- OpReturn
- %188 = OpLabel
- OpBranch %175
- %175 = OpLabel
- ;; vkEnd
- %00128_ST_A__0xeff07f800787ff00_ = OpUndef %void
- %236 = OpAccessChain %out_float %per_vertex %uint_0_0 %uint_2
- %237 = OpLoad %float %gpr_0
- OpStore %236 %237
- OpStore %jmp_to %uint_49
- OpSelectionMerge %239 None
- OpBranchConditional %true %238 %239 1 0
- %238 = OpLabel
- OpBranch %continue
- %239 = OpLabel
- OpBranch %label_0x31
- %label_0x31 = OpLabel
- OpSelectionMerge %1007 None
- OpBranchConditional %true %1006 %1007 1 0
- %1006 = OpLabel
- OpReturn
- %1007 = OpLabel
- OpBranch %112
- %99 = OpLabel
- OpBranch %continue
- %continue = OpLabel
- OpBranch %loop
- %merge = OpLabel
- OpReturn
- OpFunctionEnd
- %1008 = OpFunction %void None %93
- %1009 = OpLabel
- %1010 = OpFunctionCall %void %94
- OpReturn
- OpFunctionEnd
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement