Merge commit 'b0328717ea92e32523e6cf22b21753143ebe78b5' into jit
This commit is contained in:
Executable
+7
@@ -0,0 +1,7 @@
|
|||||||
|
glslangValidator -g0 -S frag --target-env vulkan1.4 src/trace.frag.glsl
|
||||||
|
spirv-dis --no-color frag.spv > src/trace.spv-dis
|
||||||
|
sed -i '/%18 =/,/OpFunctionEnd/d' src/trace.spv-dis
|
||||||
|
sed -i 's/%18\b/%1000/g' src/trace.spv-dis
|
||||||
|
spirv-as --preserve-numeric-ids --target-env vulkan1.4 -o src/recompiled.spv src/trace.spv-dis
|
||||||
|
rm frag.spv
|
||||||
|
# rm src/trace.spv-dis
|
||||||
Binary file not shown.
+3
-3
@@ -32,7 +32,7 @@ float scene(vec3 p) {
|
|||||||
const float EPSILON = .0001;
|
const float EPSILON = .0001;
|
||||||
const uint MAX_STEPS = 50;
|
const uint MAX_STEPS = 50;
|
||||||
#define NEARPLANE 0.
|
#define NEARPLANE 0.
|
||||||
float FARPLANE = 10;
|
float FARPLANE = length(pc.dimensions / 8.);
|
||||||
#define gl_GlobalInvocationID uvec3(1)
|
#define gl_GlobalInvocationID uvec3(1)
|
||||||
|
|
||||||
vec3 getNormal(vec3 p, float dens) {
|
vec3 getNormal(vec3 p, float dens) {
|
||||||
@@ -76,8 +76,8 @@ void main() {
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
f_color = vec4(raydir, 1.0);
|
//f_color = vec4(raydir, 1.0);
|
||||||
// discard;
|
discard;
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|||||||
+344
-347
@@ -1,38 +1,42 @@
|
|||||||
; SPIR-V
|
; SPIR-V
|
||||||
; Version: 1.6
|
; Version: 1.6
|
||||||
; Generator: Khronos Glslang Reference Front End; 11
|
; Generator: Khronos Glslang Reference Front End; 11
|
||||||
; Bound: 337
|
; Bound: 341
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
%1 = OpExtInstImport "GLSL.std.450"
|
%1 = OpExtInstImport "GLSL.std.450"
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Fragment %4 "main" %34 %45 %89 %249 %260 %294 %gl_FragDepth
|
OpEntryPoint Fragment %4 "main" %34 %41 %97 %257 %268 %302 %gl_FragDepth
|
||||||
OpExecutionMode %4 OriginUpperLeft
|
OpExecutionMode %4 OriginUpperLeft
|
||||||
OpExecutionMode %4 DepthGreater
|
OpExecutionMode %4 DepthGreater
|
||||||
OpDecorate %_struct_43 Block
|
OpDecorate %_arr_uint_uint_16 ArrayStride 4
|
||||||
OpMemberDecorate %_struct_43 0 ColMajor
|
OpDecorate %_struct_39 Block
|
||||||
OpMemberDecorate %_struct_43 0 MatrixStride 16
|
OpMemberDecorate %_struct_39 0 ColMajor
|
||||||
OpMemberDecorate %_struct_43 0 Offset 0
|
OpMemberDecorate %_struct_39 0 MatrixStride 16
|
||||||
|
OpMemberDecorate %_struct_39 0 Offset 0
|
||||||
|
OpMemberDecorate %_struct_39 1 Offset 64
|
||||||
|
OpMemberDecorate %_struct_39 2 Offset 80
|
||||||
|
OpMemberDecorate %_struct_39 3 Offset 92
|
||||||
OpDecorate %_arr_v4float_uint_32 ArrayStride 16
|
OpDecorate %_arr_v4float_uint_32 ArrayStride 16
|
||||||
OpDecorate %_arr_v4float_uint_32_0 ArrayStride 16
|
OpDecorate %_arr_v4float_uint_32_0 ArrayStride 16
|
||||||
OpDecorate %_struct_87 Block
|
OpDecorate %_struct_95 Block
|
||||||
OpMemberDecorate %_struct_87 0 Offset 0
|
OpMemberDecorate %_struct_95 0 Offset 0
|
||||||
OpMemberDecorate %_struct_87 1 Offset 512
|
OpMemberDecorate %_struct_95 1 Offset 512
|
||||||
OpMemberDecorate %_struct_87 2 Offset 1024
|
OpMemberDecorate %_struct_95 2 Offset 1024
|
||||||
OpDecorate %89 Binding 0
|
OpDecorate %97 Binding 0
|
||||||
OpDecorate %89 DescriptorSet 0
|
OpDecorate %97 DescriptorSet 0
|
||||||
OpDecorate %249 Location 0
|
OpDecorate %257 Location 0
|
||||||
OpDecorate %_struct_258 Block
|
OpDecorate %_struct_266 Block
|
||||||
OpMemberDecorate %_struct_258 0 ColMajor
|
OpMemberDecorate %_struct_266 0 ColMajor
|
||||||
OpMemberDecorate %_struct_258 0 MatrixStride 16
|
OpMemberDecorate %_struct_266 0 MatrixStride 16
|
||||||
OpMemberDecorate %_struct_258 0 Offset 0
|
OpMemberDecorate %_struct_266 0 Offset 0
|
||||||
OpMemberDecorate %_struct_258 1 ColMajor
|
OpMemberDecorate %_struct_266 1 ColMajor
|
||||||
OpMemberDecorate %_struct_258 1 MatrixStride 16
|
OpMemberDecorate %_struct_266 1 MatrixStride 16
|
||||||
OpMemberDecorate %_struct_258 1 Offset 64
|
OpMemberDecorate %_struct_266 1 Offset 64
|
||||||
OpMemberDecorate %_struct_258 2 Offset 128
|
OpMemberDecorate %_struct_266 2 Offset 128
|
||||||
OpDecorate %260 Binding 1
|
OpDecorate %268 Binding 1
|
||||||
OpDecorate %260 DescriptorSet 0
|
OpDecorate %268 DescriptorSet 0
|
||||||
OpDecorate %294 Location 0
|
OpDecorate %302 Location 0
|
||||||
OpDecorate %gl_FragDepth BuiltIn FragDepth
|
OpDecorate %gl_FragDepth BuiltIn FragDepth
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%3 = OpTypeFunction %void
|
%3 = OpTypeFunction %void
|
||||||
@@ -49,29 +53,32 @@
|
|||||||
%27 = OpTypeFunction %v2float %_ptr_Function_v3float %_ptr_Function_v3float %_ptr_Function_v3float
|
%27 = OpTypeFunction %v2float %_ptr_Function_v3float %_ptr_Function_v3float %_ptr_Function_v3float
|
||||||
%_ptr_Private_float = OpTypePointer Private %float
|
%_ptr_Private_float = OpTypePointer Private %float
|
||||||
%34 = OpVariable %_ptr_Private_float Private
|
%34 = OpVariable %_ptr_Private_float Private
|
||||||
%float_10 = OpConstant %float 10
|
%mat4v4float = OpTypeMatrix %v4float 4
|
||||||
|
%uint = OpTypeInt 32 0
|
||||||
|
%uint_16 = OpConstant %uint 16
|
||||||
|
%_arr_uint_uint_16 = OpTypeArray %uint %uint_16
|
||||||
|
%_struct_39 = OpTypeStruct %mat4v4float %v3float %v3float %_arr_uint_uint_16
|
||||||
|
%_ptr_PushConstant__struct_39 = OpTypePointer PushConstant %_struct_39
|
||||||
|
%41 = OpVariable %_ptr_PushConstant__struct_39 PushConstant
|
||||||
|
%int = OpTypeInt 32 1
|
||||||
|
%int_1 = OpConstant %int 1
|
||||||
|
%_ptr_PushConstant_v3float = OpTypePointer PushConstant %v3float
|
||||||
|
%float_8 = OpConstant %float 8
|
||||||
%float_0 = OpConstant %float 0
|
%float_0 = OpConstant %float 0
|
||||||
%38 = OpConstantComposite %v3float %float_0 %float_0 %float_0
|
%53 = OpConstantComposite %v3float %float_0 %float_0 %float_0
|
||||||
%mat3v3float = OpTypeMatrix %v3float 3
|
%mat3v3float = OpTypeMatrix %v3float 3
|
||||||
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
|
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
|
||||||
%mat4v4float = OpTypeMatrix %v4float 4
|
|
||||||
%_struct_43 = OpTypeStruct %mat4v4float
|
|
||||||
%_ptr_PushConstant__struct_43 = OpTypePointer PushConstant %_struct_43
|
|
||||||
%45 = OpVariable %_ptr_PushConstant__struct_43 PushConstant
|
|
||||||
%int = OpTypeInt 32 1
|
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_PushConstant_v4float = OpTypePointer PushConstant %v4float
|
%_ptr_PushConstant_v4float = OpTypePointer PushConstant %v4float
|
||||||
%int_1 = OpConstant %int 1
|
|
||||||
%int_2 = OpConstant %int 2
|
%int_2 = OpConstant %int 2
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%_ptr_Function_int = OpTypePointer Function %int
|
%_ptr_Function_int = OpTypePointer Function %int
|
||||||
%uint = OpTypeInt 32 0
|
|
||||||
%uint_32 = OpConstant %uint 32
|
%uint_32 = OpConstant %uint 32
|
||||||
%_arr_v4float_uint_32 = OpTypeArray %v4float %uint_32
|
%_arr_v4float_uint_32 = OpTypeArray %v4float %uint_32
|
||||||
%_arr_v4float_uint_32_0 = OpTypeArray %v4float %uint_32
|
%_arr_v4float_uint_32_0 = OpTypeArray %v4float %uint_32
|
||||||
%_struct_87 = OpTypeStruct %_arr_v4float_uint_32 %_arr_v4float_uint_32_0 %uint
|
%_struct_95 = OpTypeStruct %_arr_v4float_uint_32 %_arr_v4float_uint_32_0 %uint
|
||||||
%_ptr_Uniform__struct_87 = OpTypePointer Uniform %_struct_87
|
%_ptr_Uniform__struct_95 = OpTypePointer Uniform %_struct_95
|
||||||
%89 = OpVariable %_ptr_Uniform__struct_87 Uniform
|
%97 = OpVariable %_ptr_Uniform__struct_95 Uniform
|
||||||
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
|
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
|
||||||
%bool = OpTypeBool
|
%bool = OpTypeBool
|
||||||
%int_32 = OpConstant %int 32
|
%int_32 = OpConstant %int 32
|
||||||
@@ -82,353 +89,343 @@
|
|||||||
%uint_1 = OpConstant %uint 1
|
%uint_1 = OpConstant %uint 1
|
||||||
%uint_2 = OpConstant %uint 2
|
%uint_2 = OpConstant %uint 2
|
||||||
%_ptr_Function_v2float = OpTypePointer Function %v2float
|
%_ptr_Function_v2float = OpTypePointer Function %v2float
|
||||||
%182 = OpConstantComposite %v2float %float_0 %float_1
|
%190 = OpConstantComposite %v2float %float_0 %float_1
|
||||||
%float_0_899999976 = OpConstant %float 0.899999976
|
%float_0_899999976 = OpConstant %float 0.899999976
|
||||||
%uint_50 = OpConstant %uint 50
|
%uint_50 = OpConstant %uint 50
|
||||||
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
||||||
%249 = OpVariable %_ptr_Input_v4float Input
|
%257 = OpVariable %_ptr_Input_v4float Input
|
||||||
%_ptr_PushConstant_mat4v4float = OpTypePointer PushConstant %mat4v4float
|
%_ptr_PushConstant_mat4v4float = OpTypePointer PushConstant %mat4v4float
|
||||||
%_struct_258 = OpTypeStruct %mat4v4float %mat4v4float %v3float
|
%_struct_266 = OpTypeStruct %mat4v4float %mat4v4float %v3float
|
||||||
%_ptr_Uniform__struct_258 = OpTypePointer Uniform %_struct_258
|
%_ptr_Uniform__struct_266 = OpTypePointer Uniform %_struct_266
|
||||||
%260 = OpVariable %_ptr_Uniform__struct_258 Uniform
|
%268 = OpVariable %_ptr_Uniform__struct_266 Uniform
|
||||||
%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
|
%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
|
||||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||||
%294 = OpVariable %_ptr_Output_v4float Output
|
%302 = OpVariable %_ptr_Output_v4float Output
|
||||||
%_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float
|
%_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%gl_FragDepth = OpVariable %_ptr_Output_float Output
|
%gl_FragDepth = OpVariable %_ptr_Output_float Output
|
||||||
%4 = OpFunction %void None %3
|
%4 = OpFunction %void None %3
|
||||||
%5 = OpLabel
|
%5 = OpLabel
|
||||||
%247 = OpVariable %_ptr_Function_v3float Function
|
%255 = OpVariable %_ptr_Function_v3float Function
|
||||||
%252 = OpVariable %_ptr_Function_v3float Function
|
%260 = OpVariable %_ptr_Function_v3float Function
|
||||||
%272 = OpVariable %_ptr_Function_v2float Function
|
%280 = OpVariable %_ptr_Function_v2float Function
|
||||||
%273 = OpVariable %_ptr_Function_v3float Function
|
%281 = OpVariable %_ptr_Function_v3float Function
|
||||||
%274 = OpVariable %_ptr_Function_v3float Function
|
%282 = OpVariable %_ptr_Function_v3float Function
|
||||||
%276 = OpVariable %_ptr_Function_v3float Function
|
%284 = OpVariable %_ptr_Function_v3float Function
|
||||||
%278 = OpVariable %_ptr_Function_v3float Function
|
|
||||||
%286 = OpVariable %_ptr_Function_v3float Function
|
%286 = OpVariable %_ptr_Function_v3float Function
|
||||||
%287 = OpVariable %_ptr_Function_v3float Function
|
%294 = OpVariable %_ptr_Function_v3float Function
|
||||||
%289 = OpVariable %_ptr_Function_float Function
|
%295 = OpVariable %_ptr_Function_v3float Function
|
||||||
%304 = OpVariable %_ptr_Function_v3float Function
|
%297 = OpVariable %_ptr_Function_float Function
|
||||||
%306 = OpVariable %_ptr_Function_v4float Function
|
%312 = OpVariable %_ptr_Function_v3float Function
|
||||||
%312 = OpVariable %_ptr_Function_v4float Function
|
%314 = OpVariable %_ptr_Function_v4float Function
|
||||||
OpStore %34 %float_10
|
%320 = OpVariable %_ptr_Function_v4float Function
|
||||||
%250 = OpLoad %v4float %249
|
%45 = OpAccessChain %_ptr_PushConstant_v3float %41 %int_1
|
||||||
%251 = OpVectorShuffle %v3float %250 %250 0 1 2
|
%46 = OpLoad %v3float %45
|
||||||
OpStore %247 %251
|
%48 = OpCompositeConstruct %v3float %float_8 %float_8 %float_8
|
||||||
%253 = OpLoad %v3float %247
|
%49 = OpFDiv %v3float %46 %48
|
||||||
%255 = OpAccessChain %_ptr_PushConstant_mat4v4float %45 %int_0
|
%50 = OpExtInst %float %1 Length %49
|
||||||
%256 = OpLoad %mat4v4float %255
|
OpStore %34 %50
|
||||||
%257 = OpExtInst %mat4v4float %1 MatrixInverse %256
|
%258 = OpLoad %v4float %257
|
||||||
%262 = OpAccessChain %_ptr_Uniform_v3float %260 %int_2
|
%259 = OpVectorShuffle %v3float %258 %258 0 1 2
|
||||||
%263 = OpLoad %v3float %262
|
OpStore %255 %259
|
||||||
%264 = OpCompositeExtract %float %263 0
|
%261 = OpLoad %v3float %255
|
||||||
%265 = OpCompositeExtract %float %263 1
|
%263 = OpAccessChain %_ptr_PushConstant_mat4v4float %41 %int_0
|
||||||
%266 = OpCompositeExtract %float %263 2
|
%264 = OpLoad %mat4v4float %263
|
||||||
%267 = OpCompositeConstruct %v4float %264 %265 %266 %float_1
|
%265 = OpExtInst %mat4v4float %1 MatrixInverse %264
|
||||||
%268 = OpMatrixTimesVector %v4float %257 %267
|
%270 = OpAccessChain %_ptr_Uniform_v3float %268 %int_2
|
||||||
%269 = OpVectorShuffle %v3float %268 %268 0 1 2
|
%271 = OpLoad %v3float %270
|
||||||
%270 = OpFSub %v3float %253 %269
|
%272 = OpCompositeExtract %float %271 0
|
||||||
%271 = OpExtInst %v3float %1 Normalize %270
|
%273 = OpCompositeExtract %float %271 1
|
||||||
OpStore %252 %271
|
%274 = OpCompositeExtract %float %271 2
|
||||||
%275 = OpLoad %v3float %247
|
%275 = OpCompositeConstruct %v4float %272 %273 %274 %float_1
|
||||||
OpStore %274 %275
|
%276 = OpMatrixTimesVector %v4float %265 %275
|
||||||
%277 = OpLoad %v3float %252
|
%277 = OpVectorShuffle %v3float %276 %276 0 1 2
|
||||||
OpStore %276 %277
|
%278 = OpFSub %v3float %261 %277
|
||||||
%279 = OpFunctionCall %v2float %31 %274 %276 %278
|
%279 = OpExtInst %v3float %1 Normalize %278
|
||||||
%280 = OpLoad %v3float %278
|
OpStore %260 %279
|
||||||
OpStore %273 %280
|
%283 = OpLoad %v3float %255
|
||||||
OpStore %272 %279
|
OpStore %282 %283
|
||||||
%281 = OpAccessChain %_ptr_Function_float %272 %uint_1
|
%285 = OpLoad %v3float %260
|
||||||
%282 = OpLoad %float %281
|
OpStore %284 %285
|
||||||
%283 = OpFOrdLessThan %bool %282 %float_9_99999975en05
|
%287 = OpFunctionCall %v2float %31 %282 %284 %286
|
||||||
OpSelectionMerge %285 None
|
%288 = OpLoad %v3float %286
|
||||||
OpBranchConditional %283 %284 %328
|
OpStore %281 %288
|
||||||
%284 = OpLabel
|
OpStore %280 %287
|
||||||
%288 = OpLoad %v3float %273
|
%289 = OpAccessChain %_ptr_Function_float %280 %uint_1
|
||||||
OpStore %287 %288
|
%290 = OpLoad %float %289
|
||||||
%290 = OpAccessChain %_ptr_Function_float %272 %uint_1
|
%291 = OpFOrdLessThan %bool %290 %float_9_99999975en05
|
||||||
%291 = OpLoad %float %290
|
OpSelectionMerge %293 None
|
||||||
OpStore %289 %291
|
OpBranchConditional %291 %292 %336
|
||||||
%292 = OpFunctionCall %v3float %24 %287 %289
|
%292 = OpLabel
|
||||||
OpStore %286 %292
|
%296 = OpLoad %v3float %281
|
||||||
%295 = OpAccessChain %_ptr_PushConstant_mat4v4float %45 %int_0
|
OpStore %295 %296
|
||||||
%296 = OpLoad %mat4v4float %295
|
%298 = OpAccessChain %_ptr_Function_float %280 %uint_1
|
||||||
%297 = OpExtInst %mat4v4float %1 MatrixInverse %296
|
%299 = OpLoad %float %298
|
||||||
%298 = OpLoad %v3float %273
|
OpStore %297 %299
|
||||||
%299 = OpCompositeExtract %float %298 0
|
%300 = OpFunctionCall %v3float %24 %295 %297
|
||||||
%300 = OpCompositeExtract %float %298 1
|
OpStore %294 %300
|
||||||
%301 = OpCompositeExtract %float %298 2
|
%303 = OpAccessChain %_ptr_PushConstant_mat4v4float %41 %int_0
|
||||||
%302 = OpCompositeConstruct %v4float %299 %300 %301 %float_1
|
%304 = OpLoad %mat4v4float %303
|
||||||
%303 = OpMatrixTimesVector %v4float %297 %302
|
%305 = OpExtInst %mat4v4float %1 MatrixInverse %304
|
||||||
%305 = OpLoad %v3float %286
|
%306 = OpLoad %v3float %281
|
||||||
OpStore %304 %305
|
%307 = OpCompositeExtract %float %306 0
|
||||||
OpStore %306 %303
|
%308 = OpCompositeExtract %float %306 1
|
||||||
%307 = OpFunctionCall %v3float %14 %304 %306
|
%309 = OpCompositeExtract %float %306 2
|
||||||
%308 = OpCompositeExtract %float %307 0
|
%310 = OpCompositeConstruct %v4float %307 %308 %309 %float_1
|
||||||
%309 = OpCompositeExtract %float %307 1
|
%311 = OpMatrixTimesVector %v4float %305 %310
|
||||||
%310 = OpCompositeExtract %float %307 2
|
%313 = OpLoad %v3float %294
|
||||||
%311 = OpCompositeConstruct %v4float %308 %309 %310 %float_1
|
OpStore %312 %313
|
||||||
OpStore %294 %311
|
OpStore %314 %311
|
||||||
%314 = OpAccessChain %_ptr_Uniform_mat4v4float %260 %int_1
|
%315 = OpFunctionCall %v3float %14 %312 %314
|
||||||
%315 = OpLoad %mat4v4float %314
|
%316 = OpCompositeExtract %float %315 0
|
||||||
%316 = OpAccessChain %_ptr_Uniform_mat4v4float %260 %int_0
|
%317 = OpCompositeExtract %float %315 1
|
||||||
%317 = OpLoad %mat4v4float %316
|
%318 = OpCompositeExtract %float %315 2
|
||||||
%318 = OpMatrixTimesMatrix %mat4v4float %315 %317
|
%319 = OpCompositeConstruct %v4float %316 %317 %318 %float_1
|
||||||
%319 = OpAccessChain %_ptr_PushConstant_mat4v4float %45 %int_0
|
OpStore %302 %319
|
||||||
%320 = OpLoad %mat4v4float %319
|
%322 = OpAccessChain %_ptr_Uniform_mat4v4float %268 %int_1
|
||||||
%321 = OpMatrixTimesMatrix %mat4v4float %318 %320
|
%323 = OpLoad %mat4v4float %322
|
||||||
%322 = OpLoad %v3float %273
|
%324 = OpAccessChain %_ptr_Uniform_mat4v4float %268 %int_0
|
||||||
%323 = OpCompositeExtract %float %322 0
|
%325 = OpLoad %mat4v4float %324
|
||||||
%324 = OpCompositeExtract %float %322 1
|
%326 = OpMatrixTimesMatrix %mat4v4float %323 %325
|
||||||
%325 = OpCompositeExtract %float %322 2
|
%327 = OpAccessChain %_ptr_PushConstant_mat4v4float %41 %int_0
|
||||||
%326 = OpCompositeConstruct %v4float %323 %324 %325 %float_1
|
%328 = OpLoad %mat4v4float %327
|
||||||
%327 = OpMatrixTimesVector %v4float %321 %326
|
%329 = OpMatrixTimesMatrix %mat4v4float %326 %328
|
||||||
OpStore %312 %327
|
%330 = OpLoad %v3float %281
|
||||||
OpBranch %285
|
%331 = OpCompositeExtract %float %330 0
|
||||||
%328 = OpLabel
|
%332 = OpCompositeExtract %float %330 1
|
||||||
%329 = OpLoad %v3float %252
|
%333 = OpCompositeExtract %float %330 2
|
||||||
%330 = OpCompositeExtract %float %329 0
|
%334 = OpCompositeConstruct %v4float %331 %332 %333 %float_1
|
||||||
%331 = OpCompositeExtract %float %329 1
|
%335 = OpMatrixTimesVector %v4float %329 %334
|
||||||
%332 = OpCompositeExtract %float %329 2
|
OpStore %320 %335
|
||||||
%333 = OpCompositeConstruct %v4float %330 %331 %332 %float_1
|
OpBranch %293
|
||||||
OpStore %294 %333
|
%336 = OpLabel
|
||||||
OpBranch %285
|
OpTerminateInvocation
|
||||||
%285 = OpLabel
|
%293 = OpLabel
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%14 = OpFunction %v3float None %11
|
%14 = OpFunction %v3float None %11
|
||||||
%12 = OpFunctionParameter %_ptr_Function_v3float
|
%12 = OpFunctionParameter %_ptr_Function_v3float
|
||||||
%13 = OpFunctionParameter %_ptr_Function_v4float
|
%13 = OpFunctionParameter %_ptr_Function_v4float
|
||||||
%15 = OpLabel
|
%15 = OpLabel
|
||||||
%36 = OpVariable %_ptr_Function_v3float Function
|
%51 = OpVariable %_ptr_Function_v3float Function
|
||||||
%41 = OpVariable %_ptr_Function_mat3v3float Function
|
%56 = OpVariable %_ptr_Function_mat3v3float Function
|
||||||
%75 = OpVariable %_ptr_Function_int Function
|
%84 = OpVariable %_ptr_Function_int Function
|
||||||
OpStore %36 %38
|
OpStore %51 %53
|
||||||
%49 = OpAccessChain %_ptr_PushConstant_v4float %45 %int_0 %int_0
|
%59 = OpAccessChain %_ptr_PushConstant_v4float %41 %int_0 %int_0
|
||||||
%50 = OpLoad %v4float %49
|
%60 = OpLoad %v4float %59
|
||||||
%51 = OpVectorShuffle %v3float %50 %50 0 1 2
|
%61 = OpVectorShuffle %v3float %60 %60 0 1 2
|
||||||
%53 = OpAccessChain %_ptr_PushConstant_v4float %45 %int_0 %int_1
|
%62 = OpAccessChain %_ptr_PushConstant_v4float %41 %int_0 %int_1
|
||||||
%54 = OpLoad %v4float %53
|
%63 = OpLoad %v4float %62
|
||||||
%55 = OpVectorShuffle %v3float %54 %54 0 1 2
|
%64 = OpVectorShuffle %v3float %63 %63 0 1 2
|
||||||
%57 = OpAccessChain %_ptr_PushConstant_v4float %45 %int_0 %int_2
|
%66 = OpAccessChain %_ptr_PushConstant_v4float %41 %int_0 %int_2
|
||||||
%58 = OpLoad %v4float %57
|
%67 = OpLoad %v4float %66
|
||||||
%59 = OpVectorShuffle %v3float %58 %58 0 1 2
|
%68 = OpVectorShuffle %v3float %67 %67 0 1 2
|
||||||
%61 = OpCompositeExtract %float %51 0
|
%70 = OpCompositeExtract %float %61 0
|
||||||
%62 = OpCompositeExtract %float %51 1
|
%71 = OpCompositeExtract %float %61 1
|
||||||
%63 = OpCompositeExtract %float %51 2
|
%72 = OpCompositeExtract %float %61 2
|
||||||
%64 = OpCompositeExtract %float %55 0
|
%73 = OpCompositeExtract %float %64 0
|
||||||
%65 = OpCompositeExtract %float %55 1
|
%74 = OpCompositeExtract %float %64 1
|
||||||
%66 = OpCompositeExtract %float %55 2
|
%75 = OpCompositeExtract %float %64 2
|
||||||
%67 = OpCompositeExtract %float %59 0
|
%76 = OpCompositeExtract %float %68 0
|
||||||
%68 = OpCompositeExtract %float %59 1
|
%77 = OpCompositeExtract %float %68 1
|
||||||
%69 = OpCompositeExtract %float %59 2
|
%78 = OpCompositeExtract %float %68 2
|
||||||
%70 = OpCompositeConstruct %v3float %61 %62 %63
|
%79 = OpCompositeConstruct %v3float %70 %71 %72
|
||||||
%71 = OpCompositeConstruct %v3float %64 %65 %66
|
%80 = OpCompositeConstruct %v3float %73 %74 %75
|
||||||
%72 = OpCompositeConstruct %v3float %67 %68 %69
|
%81 = OpCompositeConstruct %v3float %76 %77 %78
|
||||||
%73 = OpCompositeConstruct %mat3v3float %70 %71 %72
|
%82 = OpCompositeConstruct %mat3v3float %79 %80 %81
|
||||||
OpStore %41 %73
|
OpStore %56 %82
|
||||||
OpStore %75 %int_0
|
OpStore %84 %int_0
|
||||||
OpBranch %76
|
OpBranch %85
|
||||||
%76 = OpLabel
|
%85 = OpLabel
|
||||||
OpLoopMerge %78 %79 None
|
OpLoopMerge %87 %88 None
|
||||||
OpBranch %80
|
OpBranch %89
|
||||||
%80 = OpLabel
|
%89 = OpLabel
|
||||||
%81 = OpLoad %int %75
|
%90 = OpLoad %int %84
|
||||||
%83 = OpBitcast %uint %81
|
%91 = OpBitcast %uint %90
|
||||||
%91 = OpAccessChain %_ptr_Uniform_uint %89 %int_2
|
%99 = OpAccessChain %_ptr_Uniform_uint %97 %int_2
|
||||||
%92 = OpLoad %uint %91
|
%100 = OpLoad %uint %99
|
||||||
%94 = OpULessThan %bool %83 %92
|
%102 = OpULessThan %bool %91 %100
|
||||||
%95 = OpLoad %int %75
|
%103 = OpLoad %int %84
|
||||||
%97 = OpSLessThan %bool %95 %int_32
|
%105 = OpSLessThan %bool %103 %int_32
|
||||||
%98 = OpLogicalAnd %bool %94 %97
|
%106 = OpLogicalAnd %bool %102 %105
|
||||||
OpBranchConditional %98 %77 %78
|
OpBranchConditional %106 %86 %87
|
||||||
%77 = OpLabel
|
%86 = OpLabel
|
||||||
%99 = OpLoad %int %75
|
%107 = OpLoad %int %84
|
||||||
%101 = OpAccessChain %_ptr_Uniform_v4float %89 %int_1 %99
|
%109 = OpAccessChain %_ptr_Uniform_v4float %97 %int_1 %107
|
||||||
%102 = OpLoad %v4float %101
|
|
||||||
%103 = OpVectorShuffle %v3float %102 %102 0 1 2
|
|
||||||
%104 = OpLoad %mat3v3float %41
|
|
||||||
%105 = OpLoad %v3float %12
|
|
||||||
%106 = OpMatrixTimesVector %v3float %104 %105
|
|
||||||
%107 = OpExtInst %v3float %1 Normalize %106
|
|
||||||
%108 = OpLoad %int %75
|
|
||||||
%109 = OpAccessChain %_ptr_Uniform_v4float %89 %int_0 %108
|
|
||||||
%110 = OpLoad %v4float %109
|
%110 = OpLoad %v4float %109
|
||||||
%111 = OpVectorShuffle %v3float %110 %110 0 1 2
|
%111 = OpVectorShuffle %v3float %110 %110 0 1 2
|
||||||
%112 = OpLoad %v4float %13
|
%112 = OpLoad %mat3v3float %56
|
||||||
%113 = OpVectorShuffle %v3float %112 %112 0 1 2
|
%113 = OpLoad %v3float %12
|
||||||
%114 = OpFSub %v3float %111 %113
|
%114 = OpMatrixTimesVector %v3float %112 %113
|
||||||
%115 = OpExtInst %v3float %1 Normalize %114
|
%115 = OpExtInst %v3float %1 Normalize %114
|
||||||
%116 = OpDot %float %107 %115
|
%116 = OpLoad %int %84
|
||||||
%118 = OpFMul %float %116 %float_0_5
|
%117 = OpAccessChain %_ptr_Uniform_v4float %97 %int_0 %116
|
||||||
%119 = OpFAdd %float %118 %float_0_5
|
%118 = OpLoad %v4float %117
|
||||||
%120 = OpVectorTimesScalar %v3float %103 %119
|
%119 = OpVectorShuffle %v3float %118 %118 0 1 2
|
||||||
%121 = OpLoad %v3float %36
|
%120 = OpLoad %v4float %13
|
||||||
%122 = OpFAdd %v3float %121 %120
|
%121 = OpVectorShuffle %v3float %120 %120 0 1 2
|
||||||
OpStore %36 %122
|
%122 = OpFSub %v3float %119 %121
|
||||||
OpBranch %79
|
%123 = OpExtInst %v3float %1 Normalize %122
|
||||||
%79 = OpLabel
|
%124 = OpDot %float %115 %123
|
||||||
%123 = OpLoad %int %75
|
%126 = OpFMul %float %124 %float_0_5
|
||||||
%124 = OpIAdd %int %123 %int_1
|
%127 = OpFAdd %float %126 %float_0_5
|
||||||
OpStore %75 %124
|
%128 = OpVectorTimesScalar %v3float %111 %127
|
||||||
OpBranch %76
|
%129 = OpLoad %v3float %51
|
||||||
%78 = OpLabel
|
%130 = OpFAdd %v3float %129 %128
|
||||||
%125 = OpLoad %v3float %36
|
OpStore %51 %130
|
||||||
OpReturnValue %125
|
OpBranch %88
|
||||||
|
%88 = OpLabel
|
||||||
|
%131 = OpLoad %int %84
|
||||||
|
%132 = OpIAdd %int %131 %int_1
|
||||||
|
OpStore %84 %132
|
||||||
|
OpBranch %85
|
||||||
|
%87 = OpLabel
|
||||||
|
%133 = OpLoad %v3float %51
|
||||||
|
OpReturnValue %133
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%24 = OpFunction %v3float None %21
|
%24 = OpFunction %v3float None %21
|
||||||
%22 = OpFunctionParameter %_ptr_Function_v3float
|
%22 = OpFunctionParameter %_ptr_Function_v3float
|
||||||
%23 = OpFunctionParameter %_ptr_Function_float
|
%23 = OpFunctionParameter %_ptr_Function_float
|
||||||
%25 = OpLabel
|
%25 = OpLabel
|
||||||
%133 = OpVariable %_ptr_Function_v3float Function
|
%141 = OpVariable %_ptr_Function_v3float Function
|
||||||
%146 = OpVariable %_ptr_Function_v3float Function
|
%154 = OpVariable %_ptr_Function_v3float Function
|
||||||
%157 = OpVariable %_ptr_Function_v3float Function
|
%165 = OpVariable %_ptr_Function_v3float Function
|
||||||
%168 = OpVariable %_ptr_Function_v3float Function
|
%176 = OpVariable %_ptr_Function_v3float Function
|
||||||
%172 = OpVariable %_ptr_Function_v3float Function
|
%180 = OpVariable %_ptr_Function_v3float Function
|
||||||
%135 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
%143 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
||||||
%136 = OpLoad %float %135
|
|
||||||
%138 = OpFAdd %float %136 %float_9_99999975en05
|
|
||||||
%140 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
|
||||||
%141 = OpLoad %float %140
|
|
||||||
%143 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
|
||||||
%144 = OpLoad %float %143
|
%144 = OpLoad %float %143
|
||||||
%145 = OpCompositeConstruct %v3float %138 %141 %144
|
%146 = OpFAdd %float %144 %float_9_99999975en05
|
||||||
OpStore %146 %145
|
%148 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
||||||
%147 = OpFunctionCall %float %1000 %146
|
%149 = OpLoad %float %148
|
||||||
%148 = OpAccessChain %_ptr_Function_float %133 %uint_0
|
%151 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
||||||
OpStore %148 %147
|
|
||||||
%149 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
|
||||||
%150 = OpLoad %float %149
|
|
||||||
%151 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
|
||||||
%152 = OpLoad %float %151
|
%152 = OpLoad %float %151
|
||||||
%153 = OpFAdd %float %152 %float_9_99999975en05
|
%153 = OpCompositeConstruct %v3float %146 %149 %152
|
||||||
%154 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
OpStore %154 %153
|
||||||
%155 = OpLoad %float %154
|
%155 = OpFunctionCall %float %1000 %154
|
||||||
%156 = OpCompositeConstruct %v3float %150 %153 %155
|
%156 = OpAccessChain %_ptr_Function_float %141 %uint_0
|
||||||
OpStore %157 %156
|
OpStore %156 %155
|
||||||
%158 = OpFunctionCall %float %1000 %157
|
%157 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
||||||
%159 = OpAccessChain %_ptr_Function_float %133 %uint_1
|
%158 = OpLoad %float %157
|
||||||
OpStore %159 %158
|
%159 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
||||||
%160 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
%160 = OpLoad %float %159
|
||||||
%161 = OpLoad %float %160
|
%161 = OpFAdd %float %160 %float_9_99999975en05
|
||||||
%162 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
%162 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
||||||
%163 = OpLoad %float %162
|
%163 = OpLoad %float %162
|
||||||
%164 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
%164 = OpCompositeConstruct %v3float %158 %161 %163
|
||||||
%165 = OpLoad %float %164
|
OpStore %165 %164
|
||||||
%166 = OpFAdd %float %165 %float_9_99999975en05
|
%166 = OpFunctionCall %float %1000 %165
|
||||||
%167 = OpCompositeConstruct %v3float %161 %163 %166
|
%167 = OpAccessChain %_ptr_Function_float %141 %uint_1
|
||||||
OpStore %168 %167
|
OpStore %167 %166
|
||||||
%169 = OpFunctionCall %float %1000 %168
|
%168 = OpAccessChain %_ptr_Function_float %22 %uint_0
|
||||||
%170 = OpAccessChain %_ptr_Function_float %133 %uint_2
|
%169 = OpLoad %float %168
|
||||||
OpStore %170 %169
|
%170 = OpAccessChain %_ptr_Function_float %22 %uint_1
|
||||||
%171 = OpLoad %v3float %133
|
%171 = OpLoad %float %170
|
||||||
%173 = OpLoad %v3float %22
|
%172 = OpAccessChain %_ptr_Function_float %22 %uint_2
|
||||||
OpStore %172 %173
|
%173 = OpLoad %float %172
|
||||||
%174 = OpFunctionCall %float %1000 %172
|
%174 = OpFAdd %float %173 %float_9_99999975en05
|
||||||
%175 = OpCompositeConstruct %v3float %174 %174 %174
|
%175 = OpCompositeConstruct %v3float %169 %171 %174
|
||||||
%176 = OpFSub %v3float %171 %175
|
OpStore %176 %175
|
||||||
%177 = OpExtInst %v3float %1 Normalize %176
|
%177 = OpFunctionCall %float %1000 %176
|
||||||
OpReturnValue %177
|
%178 = OpAccessChain %_ptr_Function_float %141 %uint_2
|
||||||
|
OpStore %178 %177
|
||||||
|
%179 = OpLoad %v3float %141
|
||||||
|
%181 = OpLoad %v3float %22
|
||||||
|
OpStore %180 %181
|
||||||
|
%182 = OpFunctionCall %float %1000 %180
|
||||||
|
%183 = OpCompositeConstruct %v3float %182 %182 %182
|
||||||
|
%184 = OpFSub %v3float %179 %183
|
||||||
|
%185 = OpExtInst %v3float %1 Normalize %184
|
||||||
|
OpReturnValue %185
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%31 = OpFunction %v2float None %27
|
%31 = OpFunction %v2float None %27
|
||||||
%28 = OpFunctionParameter %_ptr_Function_v3float
|
%28 = OpFunctionParameter %_ptr_Function_v3float
|
||||||
%29 = OpFunctionParameter %_ptr_Function_v3float
|
%29 = OpFunctionParameter %_ptr_Function_v3float
|
||||||
%30 = OpFunctionParameter %_ptr_Function_v3float
|
%30 = OpFunctionParameter %_ptr_Function_v3float
|
||||||
%32 = OpLabel
|
%32 = OpLabel
|
||||||
%181 = OpVariable %_ptr_Function_v2float Function
|
%189 = OpVariable %_ptr_Function_v2float Function
|
||||||
%184 = OpVariable %_ptr_Function_v3float Function
|
%192 = OpVariable %_ptr_Function_v3float Function
|
||||||
%202 = OpVariable %_ptr_Function_int Function
|
%210 = OpVariable %_ptr_Function_int Function
|
||||||
%225 = OpVariable %_ptr_Function_v3float Function
|
%233 = OpVariable %_ptr_Function_v3float Function
|
||||||
OpStore %181 %182
|
OpStore %189 %190
|
||||||
%183 = OpLoad %v3float %28
|
%191 = OpLoad %v3float %28
|
||||||
OpStore %30 %183
|
OpStore %30 %191
|
||||||
%185 = OpLoad %v3float %30
|
%193 = OpLoad %v3float %30
|
||||||
OpStore %184 %185
|
OpStore %192 %193
|
||||||
%186 = OpFunctionCall %float %1000 %184
|
%194 = OpFunctionCall %float %1000 %192
|
||||||
%188 = OpFMul %float %186 %float_0_899999976
|
%196 = OpFMul %float %194 %float_0_899999976
|
||||||
%189 = OpAccessChain %_ptr_Function_float %181 %uint_1
|
%197 = OpAccessChain %_ptr_Function_float %189 %uint_1
|
||||||
OpStore %189 %188
|
OpStore %197 %196
|
||||||
%190 = OpAccessChain %_ptr_Function_float %181 %uint_1
|
%198 = OpAccessChain %_ptr_Function_float %189 %uint_1
|
||||||
%191 = OpLoad %float %190
|
|
||||||
%192 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
%193 = OpLoad %float %192
|
|
||||||
%194 = OpFAdd %float %193 %191
|
|
||||||
%195 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
OpStore %195 %194
|
|
||||||
%196 = OpLoad %v3float %28
|
|
||||||
%197 = OpLoad %v3float %29
|
|
||||||
%198 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
%199 = OpLoad %float %198
|
%199 = OpLoad %float %198
|
||||||
%200 = OpVectorTimesScalar %v3float %197 %199
|
%200 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
%201 = OpFAdd %v3float %196 %200
|
%201 = OpLoad %float %200
|
||||||
OpStore %30 %201
|
%202 = OpFAdd %float %201 %199
|
||||||
OpStore %202 %int_0
|
%203 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
OpBranch %203
|
OpStore %203 %202
|
||||||
%203 = OpLabel
|
%204 = OpLoad %v3float %28
|
||||||
OpLoopMerge %205 %206 None
|
%205 = OpLoad %v3float %29
|
||||||
OpBranch %207
|
%206 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
%207 = OpLabel
|
%207 = OpLoad %float %206
|
||||||
%208 = OpLoad %int %202
|
%208 = OpVectorTimesScalar %v3float %205 %207
|
||||||
%209 = OpBitcast %uint %208
|
%209 = OpFAdd %v3float %204 %208
|
||||||
%211 = OpULessThan %bool %209 %uint_50
|
OpStore %30 %209
|
||||||
OpSelectionMerge %213 None
|
OpStore %210 %int_0
|
||||||
OpBranchConditional %211 %212 %213
|
OpBranch %211
|
||||||
|
%211 = OpLabel
|
||||||
|
OpLoopMerge %213 %214 None
|
||||||
|
OpBranch %215
|
||||||
|
%215 = OpLabel
|
||||||
|
%216 = OpLoad %int %210
|
||||||
|
%217 = OpBitcast %uint %216
|
||||||
|
%219 = OpULessThan %bool %217 %uint_50
|
||||||
|
OpSelectionMerge %221 None
|
||||||
|
OpBranchConditional %219 %220 %221
|
||||||
|
%220 = OpLabel
|
||||||
|
%222 = OpAccessChain %_ptr_Function_float %189 %uint_1
|
||||||
|
%223 = OpLoad %float %222
|
||||||
|
%224 = OpFOrdGreaterThan %bool %223 %float_9_99999975en05
|
||||||
|
OpBranch %221
|
||||||
|
%221 = OpLabel
|
||||||
|
%225 = OpPhi %bool %219 %215 %224 %220
|
||||||
|
OpSelectionMerge %227 None
|
||||||
|
OpBranchConditional %225 %226 %227
|
||||||
|
%226 = OpLabel
|
||||||
|
%228 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
|
%229 = OpLoad %float %228
|
||||||
|
%230 = OpLoad %float %34
|
||||||
|
%231 = OpFOrdLessThan %bool %229 %230
|
||||||
|
OpBranch %227
|
||||||
|
%227 = OpLabel
|
||||||
|
%232 = OpPhi %bool %225 %221 %231 %226
|
||||||
|
OpBranchConditional %232 %212 %213
|
||||||
%212 = OpLabel
|
%212 = OpLabel
|
||||||
%214 = OpAccessChain %_ptr_Function_float %181 %uint_1
|
%234 = OpLoad %v3float %30
|
||||||
%215 = OpLoad %float %214
|
OpStore %233 %234
|
||||||
%216 = OpFOrdGreaterThan %bool %215 %float_9_99999975en05
|
%235 = OpFunctionCall %float %1000 %233
|
||||||
OpBranch %213
|
%236 = OpFMul %float %235 %float_0_899999976
|
||||||
%213 = OpLabel
|
%237 = OpAccessChain %_ptr_Function_float %189 %uint_1
|
||||||
%217 = OpPhi %bool %211 %207 %216 %212
|
OpStore %237 %236
|
||||||
OpSelectionMerge %219 None
|
%238 = OpAccessChain %_ptr_Function_float %189 %uint_1
|
||||||
OpBranchConditional %217 %218 %219
|
|
||||||
%218 = OpLabel
|
|
||||||
%220 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
%221 = OpLoad %float %220
|
|
||||||
%222 = OpLoad %float %34
|
|
||||||
%223 = OpFOrdLessThan %bool %221 %222
|
|
||||||
OpBranch %219
|
|
||||||
%219 = OpLabel
|
|
||||||
%224 = OpPhi %bool %217 %213 %223 %218
|
|
||||||
OpBranchConditional %224 %204 %205
|
|
||||||
%204 = OpLabel
|
|
||||||
%226 = OpLoad %v3float %30
|
|
||||||
OpStore %225 %226
|
|
||||||
%227 = OpFunctionCall %float %1000 %225
|
|
||||||
%228 = OpFMul %float %227 %float_0_899999976
|
|
||||||
%229 = OpAccessChain %_ptr_Function_float %181 %uint_1
|
|
||||||
OpStore %229 %228
|
|
||||||
%230 = OpAccessChain %_ptr_Function_float %181 %uint_1
|
|
||||||
%231 = OpLoad %float %230
|
|
||||||
%232 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
%233 = OpLoad %float %232
|
|
||||||
%234 = OpFAdd %float %233 %231
|
|
||||||
%235 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
OpStore %235 %234
|
|
||||||
%236 = OpLoad %v3float %28
|
|
||||||
%237 = OpLoad %v3float %29
|
|
||||||
%238 = OpAccessChain %_ptr_Function_float %181 %uint_0
|
|
||||||
%239 = OpLoad %float %238
|
%239 = OpLoad %float %238
|
||||||
%240 = OpVectorTimesScalar %v3float %237 %239
|
%240 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
%241 = OpFAdd %v3float %236 %240
|
%241 = OpLoad %float %240
|
||||||
OpStore %30 %241
|
%242 = OpFAdd %float %241 %239
|
||||||
OpBranch %206
|
%243 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
%206 = OpLabel
|
OpStore %243 %242
|
||||||
%242 = OpLoad %int %202
|
%244 = OpLoad %v3float %28
|
||||||
%243 = OpIAdd %int %242 %int_1
|
%245 = OpLoad %v3float %29
|
||||||
OpStore %202 %243
|
%246 = OpAccessChain %_ptr_Function_float %189 %uint_0
|
||||||
OpBranch %203
|
%247 = OpLoad %float %246
|
||||||
%205 = OpLabel
|
%248 = OpVectorTimesScalar %v3float %245 %247
|
||||||
%244 = OpLoad %v2float %181
|
%249 = OpFAdd %v3float %244 %248
|
||||||
OpReturnValue %244
|
OpStore %30 %249
|
||||||
|
OpBranch %214
|
||||||
|
%214 = OpLabel
|
||||||
|
%250 = OpLoad %int %210
|
||||||
|
%251 = OpIAdd %int %250 %int_1
|
||||||
|
OpStore %210 %251
|
||||||
|
OpBranch %211
|
||||||
|
%213 = OpLabel
|
||||||
|
%252 = OpLoad %v2float %189
|
||||||
|
OpReturnValue %252
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
|
||||||
; %1000 = OpFunction %float None %16
|
|
||||||
; %17 = OpFunctionParameter %_ptr_Function_v3float
|
|
||||||
; %19 = OpLabel
|
|
||||||
; %128 = OpLoad %v3float %17
|
|
||||||
; %129 = OpExtInst %float %1 Length %128
|
|
||||||
; %130 = OpFSub %float %129 %float_1
|
|
||||||
; OpReturnValue %130
|
|
||||||
; OpFunctionEnd
|
|
||||||
Reference in New Issue
Block a user