Skip to content

Instantly share code, notes, and snippets.

@expenses
Created November 24, 2021 12:57
Show Gist options
  • Save expenses/9521ae91b277a28cd1e60a32d6b1702c to your computer and use it in GitHub Desktop.
Save expenses/9521ae91b277a28cd1e60a32d6b1702c to your computer and use it in GitHub Desktop.
diff --git "a/C:\\Users\\Ashley\\AppData\\Local\\Temp\\.tmp0x6Aro\\a.dis" "b/C:\\Users\\Ashley\\AppData\\Local\\Temp\\.tmp0x6Aro\\b.dis"
index 8e68ce8..ce67daf 100644
--- "a/C:\\Users\\Ashley\\AppData\\Local\\Temp\\.tmp0x6Aro\\a.dis"
+++ "b/C:\\Users\\Ashley\\AppData\\Local\\Temp\\.tmp0x6Aro\\b.dis"
@@ -1,204 +1,204 @@
; SPIR-V
; Version: 1.3
; Generator: Embark Studios Rust GPU Compiler Backend; 0
-; Bound: 5465
+; Bound: 5467
; Schema: 0
OpCapability RuntimeDescriptorArray
OpCapability Shader
OpExtension "SPV_EXT_descriptor_indexing"
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical Simple
- OpEntryPoint Fragment %2 "fragment_transmission" %3 %4 %5 %6 %7 %8
- OpEntryPoint Fragment %9 "fragment" %3 %4 %5 %6 %10 %11
- OpEntryPoint Fragment %12 "depth_pre_pass_alpha_clip" %13 %14
- OpEntryPoint Vertex %15 "depth_pre_pass_vertex_alpha_clip" %3 %16 %17 %gl_InstanceIndex %gl_Position %20 %21
- OpEntryPoint Vertex %22 "depth_pre_pass_instanced" %3 %gl_InstanceIndex %gl_Position
- OpEntryPoint Vertex %23 "vertex_instanced" %3 %4 %5 %24 %gl_InstanceIndex %25 %26 %27 %28 %gl_Position
- OpEntryPoint Vertex %29 "vertex_instanced_with_scale" %3 %4 %5 %24 %gl_InstanceIndex %25 %26 %27 %28 %30 %gl_Position
- OpEntryPoint GLCompute %31 "frustum_culling" %gl_GlobalInvocationID
- OpEntryPoint GLCompute %33 "demultiplex_draws" %gl_GlobalInvocationID
- OpEntryPoint Vertex %34 "fullscreen_tri" %gl_VertexIndex %36 %gl_Position
- OpEntryPoint Fragment %37 "fragment_tonemap" %13 %8
+ OpEntryPoint Fragment %2 "tonemapping::fragment_tonemap" %3 %4
+ OpEntryPoint Fragment %5 "fragment_transmission" %6 %7 %8 %9 %10 %4
+ OpEntryPoint Fragment %11 "fragment" %6 %7 %8 %9 %12 %13
+ OpEntryPoint Fragment %14 "depth_pre_pass_alpha_clip" %3 %15
+ OpEntryPoint Vertex %16 "depth_pre_pass_vertex_alpha_clip" %6 %17 %18 %gl_InstanceIndex %gl_Position %21 %22
+ OpEntryPoint Vertex %23 "depth_pre_pass_instanced" %6 %gl_InstanceIndex %gl_Position
+ OpEntryPoint Vertex %24 "vertex_instanced" %6 %7 %8 %25 %gl_InstanceIndex %26 %27 %28 %29 %gl_Position
+ OpEntryPoint Vertex %30 "vertex_instanced_with_scale" %6 %7 %8 %25 %gl_InstanceIndex %26 %27 %28 %29 %31 %gl_Position
+ OpEntryPoint GLCompute %32 "frustum_culling" %gl_GlobalInvocationID
+ OpEntryPoint GLCompute %34 "demultiplex_draws" %gl_GlobalInvocationID
+ OpEntryPoint Vertex %35 "fullscreen_tri" %gl_VertexIndex %37 %gl_Position
OpExecutionMode %2 OriginUpperLeft
- OpExecutionMode %9 OriginUpperLeft
- OpExecutionMode %12 OriginUpperLeft
- OpExecutionMode %31 LocalSize 64 1 1
- OpExecutionMode %33 LocalSize 64 1 1
- OpExecutionMode %37 OriginUpperLeft
+ OpExecutionMode %5 OriginUpperLeft
+ OpExecutionMode %11 OriginUpperLeft
+ OpExecutionMode %14 OriginUpperLeft
+ OpExecutionMode %32 LocalSize 64 1 1
+ OpExecutionMode %34 LocalSize 64 1 1
; Annotations
- OpMemberDecorate %_struct_130 0 Offset 0
- OpMemberDecorate %_struct_130 1 Offset 16
- OpMemberDecorate %_struct_130 2 Offset 32
- OpMemberDecorate %_struct_130 3 Offset 48
- OpMemberDecorate %_struct_131 0 Offset 0
- OpDecorate %_runtimearr_236 ArrayStride 4
+ OpMemberDecorate %_struct_132 0 Offset 0
+ OpMemberDecorate %_struct_132 1 Offset 16
+ OpMemberDecorate %_struct_132 2 Offset 32
+ OpMemberDecorate %_struct_132 3 Offset 48
OpMemberDecorate %_struct_133 0 Offset 0
- OpMemberDecorate %_struct_133 1 Offset 64
- OpMemberDecorate %_struct_133 2 Offset 80
- OpMemberDecorate %_struct_133 3 Offset 88
- OpMemberDecorate %_struct_133 4 Offset 96
- OpMemberDecorate %_struct_133 5 Offset 104
- OpMemberDecorate %_struct_133 6 Offset 108
+ OpDecorate %_runtimearr_238 ArrayStride 4
OpMemberDecorate %_struct_135 0 Offset 0
- OpMemberDecorate %_struct_135 1 Offset 4
- OpMemberDecorate %_struct_135 2 Offset 8
- OpMemberDecorate %_struct_135 3 Offset 12
- OpMemberDecorate %_struct_135 4 Offset 16
- OpMemberDecorate %_struct_135 5 Offset 20
- OpMemberDecorate %_struct_135 6 Offset 24
- OpMemberDecorate %_struct_140 0 Offset 0
- OpMemberDecorate %_struct_140 1 Offset 16
- OpDecorate %_runtimearr__struct_140 ArrayStride 32
- OpMemberDecorate %_struct_141 0 Offset 0
- OpMemberDecorate %_struct_141 1 Offset 4
- OpMemberDecorate %_struct_141 2 Offset 8
- OpMemberDecorate %_struct_141 3 Offset 12
- OpMemberDecorate %_struct_141 4 Offset 16
- OpMemberDecorate %_struct_141 5 Offset 20
- OpMemberDecorate %_struct_141 6 Offset 24
- OpMemberDecorate %_struct_141 7 Offset 28
- OpMemberDecorate %_struct_141 8 Offset 32
- OpMemberDecorate %_struct_142 0 Offset 0
- OpMemberDecorate %_struct_142 1 Offset 16
- OpMemberDecorate %_struct_142 2 Offset 32
- OpMemberDecorate %_struct_142 3 Offset 48
- OpMemberDecorate %_struct_142 4 Offset 64
- OpMemberDecorate %_struct_142 5 Offset 100
- OpMemberDecorate %_struct_142 6 Offset 104
- OpMemberDecorate %_struct_142 7 Offset 108
- OpMemberDecorate %_struct_142 8 Offset 112
- OpMemberDecorate %_struct_142 9 Offset 116
- OpMemberDecorate %_struct_142 10 Offset 120
- OpMemberDecorate %_struct_142 11 Offset 124
- OpMemberDecorate %_struct_142 12 Offset 128
- OpMemberDecorate %_struct_142 13 Offset 132
- OpMemberDecorate %_struct_142 14 Offset 136
- OpDecorate %_runtimearr__struct_142 ArrayStride 144
- OpMemberDecorate %_struct_143 0 Offset 0
- OpMemberDecorate %_struct_143 1 Offset 16
- OpMemberDecorate %_struct_143 2 Offset 20
- OpMemberDecorate %_struct_143 3 Offset 24
- OpMemberDecorate %_struct_143 4 Offset 28
- OpDecorate %_runtimearr__struct_143 ArrayStride 32
- OpMemberDecorate %_struct_144 0 Offset 0
- OpMemberDecorate %_struct_144 1 Offset 16
+ OpMemberDecorate %_struct_135 1 Offset 64
+ OpMemberDecorate %_struct_135 2 Offset 80
+ OpMemberDecorate %_struct_135 3 Offset 88
+ OpMemberDecorate %_struct_135 4 Offset 96
+ OpMemberDecorate %_struct_135 5 Offset 104
+ OpMemberDecorate %_struct_135 6 Offset 108
+ OpMemberDecorate %_struct_137 0 Offset 0
+ OpMemberDecorate %_struct_137 1 Offset 4
+ OpMemberDecorate %_struct_137 2 Offset 8
+ OpMemberDecorate %_struct_137 3 Offset 12
+ OpMemberDecorate %_struct_137 4 Offset 16
+ OpMemberDecorate %_struct_137 5 Offset 20
+ OpMemberDecorate %_struct_137 6 Offset 24
+ OpDecorate %3 Location 0
+ OpDecorate %140 DescriptorSet 0
+ OpDecorate %140 Binding 2
+ OpDecorate %141 DescriptorSet 1
+ OpDecorate %141 Binding 0
+ OpDecorate %_struct_216 Block
+ OpMemberDecorate %_struct_216 0 Offset 0
+ OpDecorate %4 Location 0
OpMemberDecorate %_struct_145 0 Offset 0
- OpMemberDecorate %_struct_145 1 Offset 32
- OpDecorate %_runtimearr__struct_145 ArrayStride 48
- OpDecorate %_runtimearr_uint ArrayStride 4
+ OpMemberDecorate %_struct_145 1 Offset 16
+ OpDecorate %_runtimearr__struct_145 ArrayStride 32
+ OpMemberDecorate %_struct_146 0 Offset 0
+ OpMemberDecorate %_struct_146 1 Offset 4
+ OpMemberDecorate %_struct_146 2 Offset 8
+ OpMemberDecorate %_struct_146 3 Offset 12
+ OpMemberDecorate %_struct_146 4 Offset 16
+ OpMemberDecorate %_struct_146 5 Offset 20
+ OpMemberDecorate %_struct_146 6 Offset 24
+ OpMemberDecorate %_struct_146 7 Offset 28
+ OpMemberDecorate %_struct_146 8 Offset 32
+ OpMemberDecorate %_struct_147 0 Offset 0
+ OpMemberDecorate %_struct_147 1 Offset 16
+ OpMemberDecorate %_struct_147 2 Offset 32
+ OpMemberDecorate %_struct_147 3 Offset 48
+ OpMemberDecorate %_struct_147 4 Offset 64
+ OpMemberDecorate %_struct_147 5 Offset 100
+ OpMemberDecorate %_struct_147 6 Offset 104
+ OpMemberDecorate %_struct_147 7 Offset 108
+ OpMemberDecorate %_struct_147 8 Offset 112
+ OpMemberDecorate %_struct_147 9 Offset 116
+ OpMemberDecorate %_struct_147 10 Offset 120
+ OpMemberDecorate %_struct_147 11 Offset 124
+ OpMemberDecorate %_struct_147 12 Offset 128
+ OpMemberDecorate %_struct_147 13 Offset 132
+ OpMemberDecorate %_struct_147 14 Offset 136
+ OpDecorate %_runtimearr__struct_147 ArrayStride 144
OpMemberDecorate %_struct_148 0 Offset 0
- OpMemberDecorate %_struct_148 1 Offset 4
- OpMemberDecorate %_struct_148 2 Offset 8
- OpMemberDecorate %_struct_148 3 Offset 12
- OpMemberDecorate %_struct_148 4 Offset 16
- OpDecorate %_runtimearr__struct_148 ArrayStride 20
- OpDecorate %_arr_uint_uint_4 ArrayStride 4
+ OpMemberDecorate %_struct_148 1 Offset 16
+ OpMemberDecorate %_struct_148 2 Offset 20
+ OpMemberDecorate %_struct_148 3 Offset 24
+ OpMemberDecorate %_struct_148 4 Offset 28
+ OpDecorate %_runtimearr__struct_148 ArrayStride 32
OpMemberDecorate %_struct_149 0 Offset 0
OpMemberDecorate %_struct_149 1 Offset 16
- OpDecorate %3 Location 0
- OpDecorate %4 Location 1
- OpDecorate %5 Location 2
- OpDecorate %6 Flat
- OpDecorate %6 Location 3
- OpDecorate %7 Flat
- OpDecorate %7 Location 4
- OpDecorate %_struct_221 Block
- OpMemberDecorate %_struct_221 0 Offset 0
- OpDecorate %_struct_222 Block
- OpMemberDecorate %_struct_222 0 Offset 0
- OpDecorate %151 DescriptorSet 0
- OpDecorate %151 Binding 0
- OpDecorate %152 DescriptorSet 0
- OpDecorate %152 Binding 1
- OpDecorate %153 DescriptorSet 0
- OpDecorate %153 Binding 2
- OpDecorate %_struct_223 Block
- OpMemberDecorate %_struct_223 0 Offset 0
- OpDecorate %154 DescriptorSet 0
- OpDecorate %154 Binding 3
+ OpMemberDecorate %_struct_150 0 Offset 0
+ OpMemberDecorate %_struct_150 1 Offset 32
+ OpDecorate %_runtimearr__struct_150 ArrayStride 48
+ OpDecorate %_runtimearr_uint ArrayStride 4
+ OpMemberDecorate %_struct_153 0 Offset 0
+ OpMemberDecorate %_struct_153 1 Offset 4
+ OpMemberDecorate %_struct_153 2 Offset 8
+ OpMemberDecorate %_struct_153 3 Offset 12
+ OpMemberDecorate %_struct_153 4 Offset 16
+ OpDecorate %_runtimearr__struct_153 ArrayStride 20
+ OpDecorate %_arr_uint_uint_4 ArrayStride 4
+ OpMemberDecorate %_struct_154 0 Offset 0
+ OpMemberDecorate %_struct_154 1 Offset 16
+ OpDecorate %6 Location 0
+ OpDecorate %7 Location 1
+ OpDecorate %8 Location 2
+ OpDecorate %9 Flat
+ OpDecorate %9 Location 3
+ OpDecorate %10 Flat
+ OpDecorate %10 Location 4
OpDecorate %_struct_224 Block
OpMemberDecorate %_struct_224 0 Offset 0
- OpDecorate %155 DescriptorSet 0
- OpDecorate %155 Binding 4
- OpDecorate %156 DescriptorSet 0
- OpDecorate %156 Binding 5
- OpDecorate %157 DescriptorSet 1
- OpDecorate %157 Binding 0
- OpDecorate %8 Location 0
- OpDecorate %10 Location 0
- OpDecorate %11 Location 1
- OpDecorate %13 Location 0
- OpDecorate %14 Flat
- OpDecorate %14 Location 1
- OpDecorate %16 Location 1
- OpDecorate %17 Location 2
OpDecorate %_struct_225 Block
OpMemberDecorate %_struct_225 0 Offset 0
- OpDecorate %158 DescriptorSet 0
- OpDecorate %158 Binding 6
- OpDecorate %gl_InstanceIndex BuiltIn InstanceIndex
- OpDecorate %gl_Position BuiltIn Position
- OpDecorate %20 Location 0
- OpDecorate %21 Location 1
- OpDecorate %24 Location 3
- OpDecorate %25 Location 0
- OpDecorate %26 Location 1
- OpDecorate %27 Location 2
- OpDecorate %28 Location 3
- OpDecorate %30 Location 4
- OpMemberDecorate %_struct_159 0 Offset 0
- OpMemberDecorate %_struct_159 1 Offset 64
- OpDecorate %160 DescriptorSet 0
- OpDecorate %160 Binding 0
+ OpDecorate %156 DescriptorSet 0
+ OpDecorate %156 Binding 0
+ OpDecorate %157 DescriptorSet 0
+ OpDecorate %157 Binding 1
OpDecorate %_struct_226 Block
OpMemberDecorate %_struct_226 0 Offset 0
- OpDecorate %161 DescriptorSet 0
- OpDecorate %161 Binding 1
+ OpDecorate %158 DescriptorSet 0
+ OpDecorate %158 Binding 3
OpDecorate %_struct_227 Block
OpMemberDecorate %_struct_227 0 Offset 0
- OpDecorate %162 DescriptorSet 0
- OpDecorate %162 Binding 2
+ OpDecorate %159 DescriptorSet 0
+ OpDecorate %159 Binding 4
+ OpDecorate %160 DescriptorSet 0
+ OpDecorate %160 Binding 5
+ OpDecorate %161 DescriptorSet 1
+ OpDecorate %161 Binding 0
+ OpDecorate %12 Location 0
+ OpDecorate %13 Location 1
+ OpDecorate %15 Flat
+ OpDecorate %15 Location 1
+ OpDecorate %17 Location 1
+ OpDecorate %18 Location 2
OpDecorate %_struct_228 Block
OpMemberDecorate %_struct_228 0 Offset 0
- OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
+ OpDecorate %162 DescriptorSet 0
+ OpDecorate %162 Binding 6
+ OpDecorate %gl_InstanceIndex BuiltIn InstanceIndex
+ OpDecorate %gl_Position BuiltIn Position
+ OpDecorate %21 Location 0
+ OpDecorate %22 Location 1
+ OpDecorate %25 Location 3
+ OpDecorate %26 Location 0
+ OpDecorate %27 Location 1
+ OpDecorate %28 Location 2
+ OpDecorate %29 Location 3
+ OpDecorate %31 Location 4
+ OpMemberDecorate %_struct_163 0 Offset 0
+ OpMemberDecorate %_struct_163 1 Offset 64
+ OpDecorate %164 DescriptorSet 0
+ OpDecorate %164 Binding 0
OpDecorate %_struct_229 Block
OpMemberDecorate %_struct_229 0 Offset 0
- OpDecorate %164 DescriptorSet 0
- OpDecorate %164 Binding 3
+ OpDecorate %165 DescriptorSet 0
+ OpDecorate %165 Binding 1
OpDecorate %_struct_230 Block
OpMemberDecorate %_struct_230 0 Offset 0
- OpDecorate %165 DescriptorSet 0
- OpDecorate %165 Binding 4
OpDecorate %166 DescriptorSet 0
- OpDecorate %166 Binding 5
- OpDecorate %167 DescriptorSet 0
- OpDecorate %167 Binding 6
- OpDecorate %168 DescriptorSet 0
- OpDecorate %168 Binding 7
- OpDecorate %gl_VertexIndex BuiltIn VertexIndex
- OpDecorate %36 Location 0
- OpDecorate %169 DescriptorSet 1
- OpDecorate %169 Binding 0
+ OpDecorate %166 Binding 2
OpDecorate %_struct_231 Block
OpMemberDecorate %_struct_231 0 Offset 0
+ OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId
+ OpDecorate %_struct_232 Block
+ OpMemberDecorate %_struct_232 0 Offset 0
+ OpDecorate %168 DescriptorSet 0
+ OpDecorate %168 Binding 3
+ OpDecorate %_struct_233 Block
+ OpMemberDecorate %_struct_233 0 Offset 0
+ OpDecorate %169 DescriptorSet 0
+ OpDecorate %169 Binding 4
+ OpDecorate %170 DescriptorSet 0
+ OpDecorate %170 Binding 5
+ OpDecorate %171 DescriptorSet 0
+ OpDecorate %171 Binding 6
+ OpDecorate %172 DescriptorSet 0
+ OpDecorate %172 Binding 7
+ OpDecorate %gl_VertexIndex BuiltIn VertexIndex
+ OpDecorate %37 Location 0
; Types, variables and constants
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
%v4float = OpTypeVector %float 4
-%_struct_130 = OpTypeStruct %v4float %v4float %v4float %v4float
-%_struct_131 = OpTypeStruct %_struct_130
+%_struct_132 = OpTypeStruct %v4float %v4float %v4float %v4float
+%_struct_133 = OpTypeStruct %_struct_132
%uint = OpTypeInt 32 0
- %236 = OpTypeImage %float 2D 2 0 0 1 Unknown
-%_ptr_UniformConstant_236 = OpTypePointer UniformConstant %236
- %238 = OpTypeSampler
+ %238 = OpTypeImage %float 2D 2 0 0 1 Unknown
%_ptr_UniformConstant_238 = OpTypePointer UniformConstant %238
-%_runtimearr_236 = OpTypeRuntimeArray %236
-%_ptr_UniformConstant__runtimearr_236 = OpTypePointer UniformConstant %_runtimearr_236
+ %240 = OpTypeSampler
+%_ptr_UniformConstant_240 = OpTypePointer UniformConstant %240
+%_runtimearr_238 = OpTypeRuntimeArray %238
+%_ptr_UniformConstant__runtimearr_238 = OpTypePointer UniformConstant %_runtimearr_238
%v2float = OpTypeVector %float 2
%v2uint = OpTypeVector %uint 2
-%_struct_133 = OpTypeStruct %_struct_131 %v3float %v2float %v2uint %v2uint %uint %uint
+%_struct_135 = OpTypeStruct %_struct_133 %v3float %v2float %v2uint %v2uint %uint %uint
%_ptr_Input_v2float = OpTypePointer Input %v2float
%_ptr_Output_v2float = OpTypePointer Output %v2float
%_ptr_Input_v3float = OpTypePointer Input %v3float
@@ -210,7 +210,7 @@
%_ptr_StorageBuffer_v4float = OpTypePointer StorageBuffer %v4float
%uint_0 = OpConstant %uint 0
%uint_1 = OpConstant %uint 1
-%_ptr_PushConstant__struct_131 = OpTypePointer PushConstant %_struct_131
+%_ptr_PushConstant__struct_133 = OpTypePointer PushConstant %_struct_133
%_ptr_Input_float = OpTypePointer Input %float
%_ptr_Output_float = OpTypePointer Output %float
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
@@ -227,109 +227,109 @@
%uint_5 = OpConstant %uint 5
%float_1 = OpConstant %float 1
%float_2 = OpConstant %float 2
-%_struct_135 = OpTypeStruct %float %float %float %float %float %float %float
-%_ptr_PushConstant__struct_135 = OpTypePointer PushConstant %_struct_135
+%_struct_137 = OpTypeStruct %float %float %float %float %float %float %float
+ %void = OpTypeVoid
+%_ptr_PushConstant__struct_137 = OpTypePointer PushConstant %_struct_137
+ %288 = OpTypeFunction %void
+ %3 = OpVariable %_ptr_Input_v2float Input
+ %140 = OpVariable %_ptr_UniformConstant_240 UniformConstant
+ %141 = OpVariable %_ptr_UniformConstant_238 UniformConstant
+%_struct_216 = OpTypeStruct %_struct_137
+%_ptr_PushConstant__struct_216 = OpTypePointer PushConstant %_struct_216
+ %142 = OpVariable %_ptr_PushConstant__struct_216 PushConstant
+ %4 = OpVariable %_ptr_Output_v4float Output
%float_0 = OpConstant %float 0
- %287 = OpConstantComposite %v3float %float_0 %float_0 %float_0
-%_struct_140 = OpTypeStruct %v3float %v4float
-%_runtimearr__struct_140 = OpTypeRuntimeArray %_struct_140
- %int = OpTypeInt 32 1
-%_struct_141 = OpTypeStruct %int %int %int %int %int %int %int %int %int
-%_struct_142 = OpTypeStruct %v4float %v3float %v3float %v3float %_struct_141 %float %float %float %float %float %float %float %float %float %float
-%_runtimearr__struct_142 = OpTypeRuntimeArray %_struct_142
-%_struct_143 = OpTypeStruct %v4float %uint %uint %uint %uint
-%_runtimearr__struct_143 = OpTypeRuntimeArray %_struct_143
-%_struct_144 = OpTypeStruct %v4float %v4float
-%_struct_145 = OpTypeStruct %_struct_144 %uint
+ %292 = OpConstantComposite %v3float %float_0 %float_0 %float_0
+%_struct_145 = OpTypeStruct %v3float %v4float
%_runtimearr__struct_145 = OpTypeRuntimeArray %_struct_145
- %298 = OpTypeSampledImage %236
+ %int = OpTypeInt 32 1
+%_struct_146 = OpTypeStruct %int %int %int %int %int %int %int %int %int
+%_struct_147 = OpTypeStruct %v4float %v3float %v3float %v3float %_struct_146 %float %float %float %float %float %float %float %float %float %float
+%_runtimearr__struct_147 = OpTypeRuntimeArray %_struct_147
+%_struct_148 = OpTypeStruct %v4float %uint %uint %uint %uint
+%_runtimearr__struct_148 = OpTypeRuntimeArray %_struct_148
+%_struct_149 = OpTypeStruct %v4float %v4float
+%_struct_150 = OpTypeStruct %_struct_149 %uint
+%_runtimearr__struct_150 = OpTypeRuntimeArray %_struct_150
+ %303 = OpTypeSampledImage %238
%v3uint = OpTypeVector %uint 3
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
- %void = OpTypeVoid
%_runtimearr_uint = OpTypeRuntimeArray %uint
-%_struct_148 = OpTypeStruct %uint %uint %uint %int %uint
-%_ptr_StorageBuffer__struct_148 = OpTypePointer StorageBuffer %_struct_148
-%_runtimearr__struct_148 = OpTypeRuntimeArray %_struct_148
+%_struct_153 = OpTypeStruct %uint %uint %uint %int %uint
+%_ptr_StorageBuffer__struct_153 = OpTypePointer StorageBuffer %_struct_153
+%_runtimearr__struct_153 = OpTypeRuntimeArray %_struct_153
%_arr_uint_uint_4 = OpTypeArray %uint %uint_4
-%_struct_149 = OpTypeStruct %v3float %v3float
- %308 = OpTypeFunction %void
- %3 = OpVariable %_ptr_Input_v3float Input
- %4 = OpVariable %_ptr_Input_v3float Input
- %5 = OpVariable %_ptr_Input_v2float Input
- %6 = OpVariable %_ptr_Input_uint Input
- %7 = OpVariable %_ptr_Input_float Input
-%_struct_221 = OpTypeStruct %_struct_133
-%_ptr_PushConstant__struct_221 = OpTypePointer PushConstant %_struct_221
- %150 = OpVariable %_ptr_PushConstant__struct_221 PushConstant
-%_struct_222 = OpTypeStruct %_runtimearr__struct_140
-%_ptr_StorageBuffer__struct_222 = OpTypePointer StorageBuffer %_struct_222
- %151 = OpVariable %_ptr_StorageBuffer__struct_222 StorageBuffer
- %152 = OpVariable %_ptr_UniformConstant__runtimearr_236 UniformConstant
- %153 = OpVariable %_ptr_UniformConstant_238 UniformConstant
-%_struct_223 = OpTypeStruct %_runtimearr__struct_142
-%_ptr_StorageBuffer__struct_223 = OpTypePointer StorageBuffer %_struct_223
- %154 = OpVariable %_ptr_StorageBuffer__struct_223 StorageBuffer
-%_struct_224 = OpTypeStruct %_struct_149
-%_ptr_Uniform__struct_224 = OpTypePointer Uniform %_struct_224
- %155 = OpVariable %_ptr_Uniform__struct_224 Uniform
- %156 = OpVariable %_ptr_UniformConstant_238 UniformConstant
- %157 = OpVariable %_ptr_UniformConstant_236 UniformConstant
- %8 = OpVariable %_ptr_Output_v4float Output
- %10 = OpVariable %_ptr_Output_v4float Output
- %11 = OpVariable %_ptr_Output_v4float Output
- %13 = OpVariable %_ptr_Input_v2float Input
- %14 = OpVariable %_ptr_Input_uint Input
- %16 = OpVariable %_ptr_Input_v2float Input
- %17 = OpVariable %_ptr_Input_uint Input
+%_struct_154 = OpTypeStruct %v3float %v3float
+ %6 = OpVariable %_ptr_Input_v3float Input
+ %7 = OpVariable %_ptr_Input_v3float Input
+ %8 = OpVariable %_ptr_Input_v2float Input
+ %9 = OpVariable %_ptr_Input_uint Input
+ %10 = OpVariable %_ptr_Input_float Input
+%_struct_224 = OpTypeStruct %_struct_135
+%_ptr_PushConstant__struct_224 = OpTypePointer PushConstant %_struct_224
+ %155 = OpVariable %_ptr_PushConstant__struct_224 PushConstant
%_struct_225 = OpTypeStruct %_runtimearr__struct_145
%_ptr_StorageBuffer__struct_225 = OpTypePointer StorageBuffer %_struct_225
- %158 = OpVariable %_ptr_StorageBuffer__struct_225 StorageBuffer
+ %156 = OpVariable %_ptr_StorageBuffer__struct_225 StorageBuffer
+ %157 = OpVariable %_ptr_UniformConstant__runtimearr_238 UniformConstant
+%_struct_226 = OpTypeStruct %_runtimearr__struct_147
+%_ptr_StorageBuffer__struct_226 = OpTypePointer StorageBuffer %_struct_226
+ %158 = OpVariable %_ptr_StorageBuffer__struct_226 StorageBuffer
+%_struct_227 = OpTypeStruct %_struct_154
+%_ptr_Uniform__struct_227 = OpTypePointer Uniform %_struct_227
+ %159 = OpVariable %_ptr_Uniform__struct_227 Uniform
+ %160 = OpVariable %_ptr_UniformConstant_240 UniformConstant
+ %161 = OpVariable %_ptr_UniformConstant_238 UniformConstant
+ %12 = OpVariable %_ptr_Output_v4float Output
+ %13 = OpVariable %_ptr_Output_v4float Output
+ %15 = OpVariable %_ptr_Input_uint Input
+ %17 = OpVariable %_ptr_Input_v2float Input
+ %18 = OpVariable %_ptr_Input_uint Input
+%_struct_228 = OpTypeStruct %_runtimearr__struct_150
+%_ptr_StorageBuffer__struct_228 = OpTypePointer StorageBuffer %_struct_228
+ %162 = OpVariable %_ptr_StorageBuffer__struct_228 StorageBuffer
%gl_InstanceIndex = OpVariable %_ptr_Input_uint Input
%gl_Position = OpVariable %_ptr_Output_v4float Output
- %20 = OpVariable %_ptr_Output_v2float Output
- %21 = OpVariable %_ptr_Output_uint Output
- %24 = OpVariable %_ptr_Input_uint Input
- %25 = OpVariable %_ptr_Output_v3float Output
+ %21 = OpVariable %_ptr_Output_v2float Output
+ %22 = OpVariable %_ptr_Output_uint Output
+ %25 = OpVariable %_ptr_Input_uint Input
%26 = OpVariable %_ptr_Output_v3float Output
- %27 = OpVariable %_ptr_Output_v2float Output
- %28 = OpVariable %_ptr_Output_uint Output
- %30 = OpVariable %_ptr_Output_float Output
-%_struct_159 = OpTypeStruct %_struct_131 %float
-%_ptr_PushConstant__struct_159 = OpTypePointer PushConstant %_struct_159
- %160 = OpVariable %_ptr_StorageBuffer__struct_225 StorageBuffer
-%_struct_226 = OpTypeStruct %_runtimearr__struct_143
-%_ptr_StorageBuffer__struct_226 = OpTypePointer StorageBuffer %_struct_226
- %161 = OpVariable %_ptr_StorageBuffer__struct_226 StorageBuffer
-%_struct_227 = OpTypeStruct %_runtimearr_uint
-%_ptr_StorageBuffer__struct_227 = OpTypePointer StorageBuffer %_struct_227
- %162 = OpVariable %_ptr_StorageBuffer__struct_227 StorageBuffer
-%_struct_228 = OpTypeStruct %_struct_159
-%_ptr_PushConstant__struct_228 = OpTypePointer PushConstant %_struct_228
- %163 = OpVariable %_ptr_PushConstant__struct_228 PushConstant
-%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input
-%_struct_229 = OpTypeStruct %_arr_uint_uint_4
+ %27 = OpVariable %_ptr_Output_v3float Output
+ %28 = OpVariable %_ptr_Output_v2float Output
+ %29 = OpVariable %_ptr_Output_uint Output
+ %31 = OpVariable %_ptr_Output_float Output
+%_struct_163 = OpTypeStruct %_struct_133 %float
+%_ptr_PushConstant__struct_163 = OpTypePointer PushConstant %_struct_163
+ %164 = OpVariable %_ptr_StorageBuffer__struct_228 StorageBuffer
+%_struct_229 = OpTypeStruct %_runtimearr__struct_148
%_ptr_StorageBuffer__struct_229 = OpTypePointer StorageBuffer %_struct_229
- %164 = OpVariable %_ptr_StorageBuffer__struct_229 StorageBuffer
-%_struct_230 = OpTypeStruct %_runtimearr__struct_148
+ %165 = OpVariable %_ptr_StorageBuffer__struct_229 StorageBuffer
+%_struct_230 = OpTypeStruct %_runtimearr_uint
%_ptr_StorageBuffer__struct_230 = OpTypePointer StorageBuffer %_struct_230
- %165 = OpVariable %_ptr_StorageBuffer__struct_230 StorageBuffer
%166 = OpVariable %_ptr_StorageBuffer__struct_230 StorageBuffer
- %167 = OpVariable %_ptr_StorageBuffer__struct_230 StorageBuffer
- %168 = OpVariable %_ptr_StorageBuffer__struct_230 StorageBuffer
+%_struct_231 = OpTypeStruct %_struct_163
+%_ptr_PushConstant__struct_231 = OpTypePointer PushConstant %_struct_231
+ %167 = OpVariable %_ptr_PushConstant__struct_231 PushConstant
+%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input
+%_struct_232 = OpTypeStruct %_arr_uint_uint_4
+%_ptr_StorageBuffer__struct_232 = OpTypePointer StorageBuffer %_struct_232
+ %168 = OpVariable %_ptr_StorageBuffer__struct_232 StorageBuffer
+%_struct_233 = OpTypeStruct %_runtimearr__struct_153
+%_ptr_StorageBuffer__struct_233 = OpTypePointer StorageBuffer %_struct_233
+ %169 = OpVariable %_ptr_StorageBuffer__struct_233 StorageBuffer
+ %170 = OpVariable %_ptr_StorageBuffer__struct_233 StorageBuffer
+ %171 = OpVariable %_ptr_StorageBuffer__struct_233 StorageBuffer
+ %172 = OpVariable %_ptr_StorageBuffer__struct_233 StorageBuffer
%_ptr_Input_int = OpTypePointer Input %int
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%gl_VertexIndex = OpVariable %_ptr_Input_int Input
- %36 = OpVariable %_ptr_Output_v2float Output
- %169 = OpVariable %_ptr_UniformConstant_236 UniformConstant
-%_struct_231 = OpTypeStruct %_struct_135
-%_ptr_PushConstant__struct_231 = OpTypePointer PushConstant %_struct_231
- %170 = OpVariable %_ptr_PushConstant__struct_231 PushConstant
+ %37 = OpVariable %_ptr_Output_v2float Output
%int_n1 = OpConstant %int -1
%bool = OpTypeBool
%uint_11 = OpConstant %uint 11
%uint_12 = OpConstant %uint 12
%uint_13 = OpConstant %uint 13
-%_ptr_StorageBuffer__struct_144 = OpTypePointer StorageBuffer %_struct_144
+%_ptr_StorageBuffer__struct_149 = OpTypePointer StorageBuffer %_struct_149
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%int_2 = OpConstant %int 2
@@ -343,42 +343,85 @@
%float_5 = OpConstant %float 5
%float_0x1p_128 = OpConstant %float 0x1p+128
%float_0_318309873 = OpConstant %float 0.318309873
- %5462 = OpConstantComposite %v3float %float_1_00787401 %float_1_00787401 %float_1_00787401
+ %5464 = OpConstantComposite %v3float %float_1_00787401 %float_1_00787401 %float_1_00787401
%float_2_00787401 = OpConstant %float 2.00787401
; Function 2
- %2 = OpFunction %void None %308
- %461 = OpLabel
- %462 = OpLoad %v3float %3
- %463 = OpLoad %v3float %4
- %464 = OpLoad %v2float %5
- %465 = OpLoad %uint %6
- %466 = OpLoad %float %7
- %469 = OpArrayLength %uint %151 0
- %473 = OpLoad %238 %153
- %474 = OpAccessChain %_ptr_StorageBuffer_v4float %154 %uint_0 %465 %uint_0
- %475 = OpLoad %v4float %474
- %477 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_0
- %478 = OpLoad %int %477
- %479 = OpIEqual %bool %478 %int_n1
- OpSelectionMerge %480 None
- OpBranchConditional %479 %481 %482
- %482 = OpLabel
- %485 = OpLoad %int %477
- %486 = OpBitcast %uint %485
- %487 = OpAccessChain %_ptr_UniformConstant_236 %152 %486
- %2569 = OpLoad %236 %487
- %2570 = OpSampledImage %298 %2569 %473
- %2571 = OpImageSampleImplicitLod %v4float %2570 %464
- %489 = OpFMul %v4float %475 %2571
- OpBranch %480
- %481 = OpLabel
- OpBranch %480
- %480 = OpLabel
- %490 = OpPhi %v4float %475 %481 %489 %482
- %491 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_11
- %492 = OpLoad %float %491
- %494 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_5
+ %2 = OpFunction %void None %288
+ %437 = OpLabel
+ %438 = OpLoad %v2float %3
+ %439 = OpAccessChain %_ptr_PushConstant__struct_137 %142 %uint_0
+ %440 = OpLoad %240 %140
+ %2571 = OpLoad %238 %141
+ %2572 = OpSampledImage %303 %2571 %440
+ %2573 = OpImageSampleImplicitLod %v4float %2572 %438
+ %442 = OpCompositeExtract %float %2573 0
+ %443 = OpCompositeExtract %float %2573 1
+ %444 = OpCompositeExtract %float %2573 2
+ %446 = OpLoad %_struct_137 %439
+ %2579 = OpExtInst %float %1 FMax %443 %444
+ %2580 = OpExtInst %float %1 FMax %442 %2579
+ %2582 = OpFDiv %float %442 %2580
+ %2584 = OpFDiv %float %443 %2580
+ %2586 = OpFDiv %float %444 %2580
+ %2633 = OpCompositeExtract %float %446 0
+ %2634 = OpExtInst %float %1 Pow %2580 %2633
+ %2635 = OpCompositeExtract %float %446 3
+ %2636 = OpExtInst %float %1 Pow %2634 %2635
+ %2637 = OpCompositeExtract %float %446 1
+ %2638 = OpFMul %float %2636 %2637
+ %2639 = OpCompositeExtract %float %446 2
+ %2640 = OpFAdd %float %2638 %2639
+ %2641 = OpFDiv %float %2634 %2640
+ %2588 = OpCompositeExtract %float %446 5
+ %2589 = OpCompositeExtract %float %446 6
+ %2590 = OpFDiv %float %2588 %2589
+ %2591 = OpExtInst %float %1 Pow %2582 %2590
+ %2592 = OpExtInst %float %1 Pow %2584 %2590
+ %2593 = OpExtInst %float %1 Pow %2586 %2590
+ %2594 = OpCompositeExtract %float %446 4
+ %2595 = OpExtInst %float %1 Pow %2641 %2594
+ %2597 = OpFSub %float %float_1 %2591
+ %2599 = OpFSub %float %float_1 %2592
+ %2601 = OpFSub %float %float_1 %2593
+ %2602 = OpFMul %float %2597 %2595
+ %2603 = OpFMul %float %2599 %2595
+ %2604 = OpFMul %float %2601 %2595
+ %2605 = OpFAdd %float %2591 %2602
+ %2606 = OpFAdd %float %2592 %2603
+ %2607 = OpFAdd %float %2593 %2604
+ %2609 = OpExtInst %float %1 Pow %2605 %2589
+ %2610 = OpExtInst %float %1 Pow %2606 %2589
+ %2611 = OpExtInst %float %1 Pow %2607 %2589
+ %2612 = OpFMul %float %2609 %2641
+ %2613 = OpFMul %float %2610 %2641
+ %2614 = OpFMul %float %2611 %2641
+ %2616 = OpExtInst %float %1 FMin %2612 %float_1
+ %2618 = OpExtInst %float %1 FMin %2613 %float_1
+ %2620 = OpExtInst %float %1 FMin %2614 %float_1
+ %2629 = OpCompositeConstruct %v3float %2616 %2618 %2620
+ %2630 = OpExtInst %v3float %1 FMax %2629 %292
+ %448 = OpCompositeExtract %float %2630 0
+ %449 = OpCompositeExtract %float %2630 1
+ %450 = OpCompositeExtract %float %2630 2
+ %451 = OpCompositeConstruct %v4float %448 %449 %450 %float_1
+ OpStore %4 %451
+ OpReturn
+ OpFunctionEnd
+
+ ; Function 5
+ %5 = OpFunction %void None %288
+ %478 = OpLabel
+ %479 = OpLoad %v3float %6
+ %480 = OpLoad %v3float %7
+ %481 = OpLoad %v2float %8
+ %482 = OpLoad %uint %9
+ %483 = OpLoad %float %10
+ %486 = OpArrayLength %uint %156 0
+ %490 = OpLoad %240 %140
+ %491 = OpAccessChain %_ptr_StorageBuffer_v4float %158 %uint_0 %482 %uint_0
+ %492 = OpLoad %v4float %491
+ %494 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_0
%495 = OpLoad %int %494
%496 = OpIEqual %bool %495 %int_n1
OpSelectionMerge %497 None
@@ -386,2449 +429,2406 @@
%499 = OpLabel
%502 = OpLoad %int %494
%503 = OpBitcast %uint %502
- %504 = OpAccessChain %_ptr_UniformConstant_236 %152 %503
- %2574 = OpLoad %236 %504
- %2575 = OpSampledImage %298 %2574 %473
- %2576 = OpImageSampleImplicitLod %v4float %2575 %464
- %506 = OpCompositeExtract %float %2576 0
- %507 = OpFMul %float %492 %506
+ %504 = OpAccessChain %_ptr_UniformConstant_238 %157 %503
+ %2644 = OpLoad %238 %504
+ %2645 = OpSampledImage %303 %2644 %490
+ %2646 = OpImageSampleImplicitLod %v4float %2645 %481
+ %506 = OpFMul %v4float %492 %2646
OpBranch %497
%498 = OpLabel
OpBranch %497
%497 = OpLabel
- %508 = OpPhi %float %492 %498 %507 %499
- %509 = OpAccessChain %_ptr_PushConstant_v3float %150 %uint_0 %uint_1
- %510 = OpLoad %v3float %509
- %512 = OpCompositeExtract %float %510 0
- %513 = OpCompositeExtract %float %462 0
- %514 = OpFSub %float %512 %513
- %515 = OpCompositeExtract %float %510 1
- %516 = OpCompositeExtract %float %462 1
- %517 = OpFSub %float %515 %516
- %518 = OpCompositeExtract %float %510 2
- %519 = OpCompositeExtract %float %462 2
- %520 = OpFSub %float %518 %519
- %521 = OpFMul %float %514 %514
- %522 = OpFMul %float %517 %517
- %523 = OpFAdd %float %521 %522
- %524 = OpFMul %float %520 %520
- %525 = OpFAdd %float %523 %524
- %526 = OpExtInst %float %1 Sqrt %525
- %527 = OpFDiv %float %float_1 %526
- %528 = OpFMul %float %514 %527
- %529 = OpFMul %float %517 %527
- %530 = OpFMul %float %520 %527
- %531 = OpCompositeConstruct %v3float %528 %529 %530
- %532 = OpCompositeExtract %float %463 0
- %534 = OpFMul %float %532 %532
- %535 = OpCompositeExtract %float %463 1
- %537 = OpFMul %float %535 %535
- %538 = OpFAdd %float %534 %537
- %539 = OpCompositeExtract %float %463 2
- %541 = OpFMul %float %539 %539
- %542 = OpFAdd %float %538 %541
+ %507 = OpPhi %v4float %492 %498 %506 %499
+ %508 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_11
+ %509 = OpLoad %float %508
+ %511 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_5
+ %512 = OpLoad %int %511
+ %513 = OpIEqual %bool %512 %int_n1
+ OpSelectionMerge %514 None
+ OpBranchConditional %513 %515 %516
+ %516 = OpLabel
+ %519 = OpLoad %int %511
+ %520 = OpBitcast %uint %519
+ %521 = OpAccessChain %_ptr_UniformConstant_238 %157 %520
+ %2649 = OpLoad %238 %521
+ %2650 = OpSampledImage %303 %2649 %490
+ %2651 = OpImageSampleImplicitLod %v4float %2650 %481
+ %523 = OpCompositeExtract %float %2651 0
+ %524 = OpFMul %float %509 %523
+ OpBranch %514
+ %515 = OpLabel
+ OpBranch %514
+ %514 = OpLabel
+ %525 = OpPhi %float %509 %515 %524 %516
+ %526 = OpAccessChain %_ptr_PushConstant_v3float %155 %uint_0 %uint_1
+ %527 = OpLoad %v3float %526
+ %529 = OpCompositeExtract %float %527 0
+ %530 = OpCompositeExtract %float %479 0
+ %531 = OpFSub %float %529 %530
+ %532 = OpCompositeExtract %float %527 1
+ %533 = OpCompositeExtract %float %479 1
+ %534 = OpFSub %float %532 %533
+ %535 = OpCompositeExtract %float %527 2
+ %536 = OpCompositeExtract %float %479 2
+ %537 = OpFSub %float %535 %536
+ %538 = OpFMul %float %531 %531
+ %539 = OpFMul %float %534 %534
+ %540 = OpFAdd %float %538 %539
+ %541 = OpFMul %float %537 %537
+ %542 = OpFAdd %float %540 %541
%543 = OpExtInst %float %1 Sqrt %542
%544 = OpFDiv %float %float_1 %543
- %545 = OpVectorTimesScalar %v3float %463 %544
- %547 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_2
- %548 = OpLoad %int %547
- %549 = OpIEqual %bool %548 %int_n1
- OpSelectionMerge %550 None
- OpBranchConditional %549 %551 %552
- %552 = OpLabel
- %555 = OpLoad %int %547
- %556 = OpBitcast %uint %555
- %557 = OpAccessChain %_ptr_UniformConstant_236 %152 %556
- %2585 = OpLoad %236 %557
- %2586 = OpSampledImage %298 %2585 %473
- %2587 = OpImageSampleImplicitLod %v4float %2586 %464
- %559 = OpCompositeExtract %float %2587 0
- %560 = OpCompositeExtract %float %2587 1
- %561 = OpCompositeExtract %float %2587 2
- %565 = OpFMul %float %559 %float_2_00787401
- %566 = OpFMul %float %560 %float_2_00787401
- %567 = OpFMul %float %561 %float_2_00787401
- %568 = OpCompositeConstruct %v3float %565 %566 %567
- %2591 = OpFSub %v3float %568 %5462
- %570 = OpFNegate %float %514
- %571 = OpFNegate %float %517
- %572 = OpFNegate %float %520
- %573 = OpCompositeConstruct %v3float %570 %571 %572
- %2688 = OpDPdx %v3float %573
- %2691 = OpDPdy %v3float %573
- %2695 = OpDPdx %v2float %464
- %2698 = OpDPdy %v2float %464
- %2599 = OpCompositeExtract %float %2691 1
- %2600 = OpCompositeExtract %float %545 2
- %2601 = OpFMul %float %2599 %2600
- %2602 = OpCompositeExtract %float %545 1
- %2603 = OpCompositeExtract %float %2691 2
- %2604 = OpFMul %float %2602 %2603
- %2605 = OpFSub %float %2601 %2604
- %2607 = OpCompositeExtract %float %545 0
- %2608 = OpFMul %float %2603 %2607
- %2610 = OpCompositeExtract %float %2691 0
- %2611 = OpFMul %float %2600 %2610
- %2612 = OpFSub %float %2608 %2611
- %2615 = OpFMul %float %2610 %2602
- %2618 = OpFMul %float %2607 %2599
- %2619 = OpFSub %float %2615 %2618
- %2621 = OpCompositeExtract %float %2688 2
- %2622 = OpFMul %float %2602 %2621
- %2623 = OpCompositeExtract %float %2688 1
- %2625 = OpFMul %float %2623 %2600
- %2626 = OpFSub %float %2622 %2625
- %2628 = OpCompositeExtract %float %2688 0
- %2629 = OpFMul %float %2600 %2628
- %2632 = OpFMul %float %2621 %2607
- %2633 = OpFSub %float %2629 %2632
- %2636 = OpFMul %float %2607 %2623
- %2639 = OpFMul %float %2628 %2602
- %2640 = OpFSub %float %2636 %2639
- %2641 = OpCompositeExtract %float %2695 0
- %2642 = OpFMul %float %2605 %2641
- %2643 = OpFMul %float %2612 %2641
- %2644 = OpFMul %float %2619 %2641
- %2645 = OpCompositeExtract %float %2698 0
- %2646 = OpFMul %float %2626 %2645
- %2647 = OpFMul %float %2633 %2645
- %2648 = OpFMul %float %2640 %2645
- %2649 = OpFAdd %float %2642 %2646
- %2650 = OpFAdd %float %2643 %2647
- %2651 = OpFAdd %float %2644 %2648
- %2652 = OpCompositeExtract %float %2695 1
- %2653 = OpFMul %float %2605 %2652
- %2654 = OpFMul %float %2612 %2652
- %2655 = OpFMul %float %2619 %2652
- %2656 = OpCompositeExtract %float %2698 1
- %2657 = OpFMul %float %2626 %2656
- %2658 = OpFMul %float %2633 %2656
- %2659 = OpFMul %float %2640 %2656
- %2660 = OpFAdd %float %2653 %2657
- %2661 = OpFAdd %float %2654 %2658
- %2662 = OpFAdd %float %2655 %2659
- %2663 = OpFMul %float %2649 %2649
- %2664 = OpFMul %float %2650 %2650
- %2665 = OpFAdd %float %2663 %2664
- %2666 = OpFMul %float %2651 %2651
- %2667 = OpFAdd %float %2665 %2666
- %2668 = OpFMul %float %2660 %2660
- %2669 = OpFMul %float %2661 %2661
- %2670 = OpFAdd %float %2668 %2669
- %2671 = OpFMul %float %2662 %2662
- %2672 = OpFAdd %float %2670 %2671
- %2673 = OpExtInst %float %1 FMax %2667 %2672
- %2674 = OpExtInst %float %1 Sqrt %2673
- %2675 = OpFDiv %float %float_1 %2674
- %2676 = OpFMul %float %2649 %2675
- %2677 = OpFMul %float %2650 %2675
- %2678 = OpFMul %float %2651 %2675
- %2680 = OpFMul %float %2660 %2675
- %2681 = OpFMul %float %2661 %2675
- %2682 = OpFMul %float %2662 %2675
- %576 = OpCompositeExtract %float %2591 0
- %578 = OpFMul %float %2676 %576
- %580 = OpFMul %float %2677 %576
- %582 = OpFMul %float %2678 %576
- %584 = OpCompositeExtract %float %2591 1
- %586 = OpFMul %float %2680 %584
- %588 = OpFMul %float %2681 %584
- %590 = OpFMul %float %2682 %584
- %591 = OpFAdd %float %586 %578
- %592 = OpFAdd %float %588 %580
- %593 = OpFAdd %float %590 %582
- %595 = OpCompositeExtract %float %2591 2
- %597 = OpFMul %float %2607 %595
- %599 = OpFMul %float %2602 %595
- %601 = OpFMul %float %2600 %595
- %602 = OpFAdd %float %597 %591
- %603 = OpFAdd %float %599 %592
- %604 = OpFAdd %float %601 %593
- %605 = OpFMul %float %602 %602
- %606 = OpFMul %float %603 %603
- %607 = OpFAdd %float %605 %606
- %608 = OpFMul %float %604 %604
- %609 = OpFAdd %float %607 %608
- %610 = OpExtInst %float %1 Sqrt %609
- %611 = OpFDiv %float %float_1 %610
- %612 = OpFMul %float %602 %611
- %613 = OpFMul %float %603 %611
- %614 = OpFMul %float %604 %611
- %615 = OpCompositeConstruct %v3float %612 %613 %614
- OpBranch %550
- %551 = OpLabel
- OpBranch %550
- %550 = OpLabel
- %616 = OpPhi %v3float %545 %551 %615 %552
- %617 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_5
- %618 = OpLoad %float %617
- %619 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_6
- %620 = OpLoad %float %619
- %622 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_1
- %623 = OpLoad %int %622
- %624 = OpIEqual %bool %623 %int_n1
- OpSelectionMerge %625 None
- OpBranchConditional %624 %626 %627
- %627 = OpLabel
- %630 = OpLoad %int %622
- %631 = OpBitcast %uint %630
- %632 = OpAccessChain %_ptr_UniformConstant_236 %152 %631
- %2701 = OpLoad %236 %632
- %2702 = OpSampledImage %298 %2701 %473
- %2703 = OpImageSampleImplicitLod %v4float %2702 %464
- %634 = OpCompositeExtract %float %2703 2
- %635 = OpFMul %float %618 %634
- %636 = OpCompositeExtract %float %2703 1
- %637 = OpFMul %float %620 %636
- OpBranch %625
- %626 = OpLabel
- OpBranch %625
- %625 = OpLabel
- %638 = OpPhi %float %620 %626 %637 %627
- %639 = OpPhi %float %618 %626 %635 %627
- %640 = OpAccessChain %_ptr_StorageBuffer_v3float %154 %uint_0 %465 %uint_3
- %641 = OpLoad %v3float %640
- %644 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_8
- %645 = OpLoad %int %644
- %646 = OpIEqual %bool %645 %int_n1
- OpSelectionMerge %647 None
- OpBranchConditional %646 %648 %649
- %649 = OpLabel
- %652 = OpLoad %int %644
- %653 = OpBitcast %uint %652
- %654 = OpAccessChain %_ptr_UniformConstant_236 %152 %653
- %2712 = OpLoad %236 %654
- %2713 = OpSampledImage %298 %2712 %473
- %2714 = OpImageSampleImplicitLod %v4float %2713 %464
- %656 = OpCompositeExtract %float %2714 0
- %657 = OpCompositeExtract %float %2714 1
- %658 = OpCompositeExtract %float %2714 2
- %659 = OpCompositeConstruct %v3float %656 %657 %658
- %660 = OpFMul %v3float %641 %659
- OpBranch %647
- %648 = OpLabel
- OpBranch %647
- %647 = OpLabel
- %661 = OpPhi %v3float %641 %648 %660 %649
- %662 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_14
- %663 = OpLoad %float %662
- %665 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_7
- %666 = OpLoad %int %665
- %667 = OpIEqual %bool %666 %int_n1
- OpSelectionMerge %668 None
- OpBranchConditional %667 %669 %670
- %670 = OpLabel
- %673 = OpLoad %int %665
- %674 = OpBitcast %uint %673
- %675 = OpAccessChain %_ptr_UniformConstant_236 %152 %674
- %2717 = OpLoad %236 %675
- %2718 = OpSampledImage %298 %2717 %473
- %2719 = OpImageSampleImplicitLod %v4float %2718 %464
- %677 = OpCompositeExtract %float %2719 3
- %678 = OpFMul %float %663 %677
- OpBranch %668
- %669 = OpLabel
- OpBranch %668
- %668 = OpLabel
- %679 = OpPhi %float %663 %669 %678 %670
- %680 = OpCompositeExtract %float %490 0
- %681 = OpCompositeExtract %float %490 1
- %682 = OpCompositeExtract %float %490 2
- %683 = OpCompositeConstruct %v3float %680 %681 %682
- %684 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_10
- %685 = OpLoad %float %684
- %687 = OpAccessChain %_ptr_StorageBuffer_v3float %154 %uint_0 %465 %uint_1
- %688 = OpLoad %v3float %687
- %691 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_3
- %692 = OpLoad %int %691
- %693 = OpIEqual %bool %692 %int_n1
- OpSelectionMerge %694 None
- OpBranchConditional %693 %695 %696
- %696 = OpLabel
- %699 = OpLoad %int %691
- %700 = OpBitcast %uint %699
- %701 = OpAccessChain %_ptr_UniformConstant_236 %152 %700
- %2728 = OpLoad %236 %701
- %2729 = OpSampledImage %298 %2728 %473
- %2730 = OpImageSampleImplicitLod %v4float %2729 %464
- %703 = OpCompositeExtract %float %2730 0
- %704 = OpCompositeExtract %float %2730 1
- %705 = OpCompositeExtract %float %2730 2
- %706 = OpCompositeConstruct %v3float %703 %704 %705
- %707 = OpFMul %v3float %688 %706
- OpBranch %694
- %695 = OpLabel
- OpBranch %694
- %694 = OpLabel
- %708 = OpPhi %v3float %688 %695 %707 %696
- %709 = OpAccessChain %_ptr_Uniform_v3float %155 %uint_0 %uint_0
- %710 = OpLoad %v3float %709
- %712 = OpAccessChain %_ptr_Uniform_v3float %155 %uint_0 %uint_1
- %713 = OpLoad %v3float %712
- %2802 = OpFMul %float %638 %638
- %2808 = OpCompositeExtract %float %710 0
- %2809 = OpFAdd %float %528 %2808
- %2811 = OpCompositeExtract %float %710 1
- %2812 = OpFAdd %float %529 %2811
- %2814 = OpCompositeExtract %float %710 2
- %2815 = OpFAdd %float %530 %2814
- %2816 = OpFMul %float %2809 %2809
- %2817 = OpFMul %float %2812 %2812
- %2818 = OpFAdd %float %2816 %2817
- %2819 = OpFMul %float %2815 %2815
- %2820 = OpFAdd %float %2818 %2819
- %2821 = OpExtInst %float %1 Sqrt %2820
- %2822 = OpFDiv %float %float_1 %2821
- %2823 = OpFMul %float %2809 %2822
- %2824 = OpFMul %float %2812 %2822
- %2825 = OpFMul %float %2815 %2822
- %2831 = OpCompositeExtract %float %616 0
- %2833 = OpFMul %float %2831 %2823
- %2834 = OpCompositeExtract %float %616 1
- %2836 = OpFMul %float %2834 %2824
- %2837 = OpFAdd %float %2833 %2836
- %2838 = OpCompositeExtract %float %616 2
- %2840 = OpFMul %float %2838 %2825
- %2841 = OpFAdd %float %2837 %2840
- %2842 = OpExtInst %float %1 FMax %2841 %float_1_1920929en07
- %2855 = OpFMul %float %2831 %528
- %2858 = OpFMul %float %2834 %529
- %2859 = OpFAdd %float %2855 %2858
- %2862 = OpFMul %float %2838 %530
- %2863 = OpFAdd %float %2859 %2862
- %2864 = OpExtInst %float %1 FMax %2863 %float_1_1920929en07
- %2877 = OpFMul %float %2831 %2808
- %2880 = OpFMul %float %2834 %2811
- %2881 = OpFAdd %float %2877 %2880
- %2884 = OpFMul %float %2838 %2814
- %2885 = OpFAdd %float %2881 %2884
- %2886 = OpExtInst %float %1 FMax %2885 %float_1_1920929en07
- %2899 = OpFMul %float %528 %2823
- %2902 = OpFMul %float %529 %2824
- %2903 = OpFAdd %float %2899 %2902
- %2906 = OpFMul %float %530 %2825
- %2907 = OpFAdd %float %2903 %2906
- %2908 = OpExtInst %float %1 FMax %2907 %float_1_1920929en07
- %2764 = OpFNegate %float %680
- %2767 = OpFNegate %float %681
- %2770 = OpFNegate %float %682
- %2771 = OpFMul %float %2764 %639
- %2772 = OpFMul %float %2767 %639
- %2773 = OpFMul %float %2770 %639
- %2774 = OpCompositeConstruct %v3float %2771 %2772 %2773
- %2775 = OpFAdd %v3float %683 %2774
- %2918 = OpFSub %float %685 %float_1
- %2920 = OpFAdd %float %685 %float_1
- %2921 = OpFDiv %float %2918 %2920
- %2922 = OpFMul %float %2921 %2921
- %2924 = OpCompositeExtract %float %661 0
- %2925 = OpFMul %float %2922 %2924
- %2926 = OpCompositeExtract %float %661 1
- %2927 = OpFMul %float %2922 %2926
- %2928 = OpCompositeExtract %float %661 2
- %2929 = OpFMul %float %2922 %2928
- %2931 = OpFMul %float %2925 %679
- %2932 = OpFMul %float %2927 %679
- %2933 = OpFMul %float %2929 %679
- %2937 = OpFSub %float %680 %2931
- %2939 = OpFSub %float %681 %2932
- %2941 = OpFSub %float %682 %2933
- %2942 = OpFMul %float %2937 %639
- %2943 = OpFMul %float %2939 %639
- %2944 = OpFMul %float %2941 %639
- %2945 = OpFAdd %float %2931 %2942
- %2946 = OpFAdd %float %2932 %2943
- %2947 = OpFAdd %float %2933 %2944
- %2948 = OpCompositeConstruct %v3float %2945 %2946 %2947
- %2954 = OpFSub %float %float_1 %679
- %2959 = OpFMul %float %2954 %639
- %2962 = OpFAdd %float %679 %2959
- %2970 = OpFSub %float %2962 %2945
- %2973 = OpFSub %float %2962 %2946
- %2976 = OpFSub %float %2962 %2947
- %2977 = OpFSub %float %float_1 %2908
- %2978 = OpExtInst %float %1 Pow %2977 %float_5
- %2979 = OpFMul %float %2970 %2978
- %2980 = OpFMul %float %2973 %2978
- %2981 = OpFMul %float %2976 %2978
- %2982 = OpCompositeConstruct %v3float %2979 %2980 %2981
- %2983 = OpFAdd %v3float %2948 %2982
- %2779 = OpCompositeExtract %float %713 0
- %2780 = OpFMul %float %2779 %2886
- %2781 = OpCompositeExtract %float %713 1
- %2782 = OpFMul %float %2781 %2886
- %2783 = OpCompositeExtract %float %713 2
- %2784 = OpFMul %float %2783 %2886
- %2986 = OpCompositeExtract %float %2983 0
- %2987 = OpCompositeExtract %float %2983 1
- %2988 = OpCompositeExtract %float %2983 2
- %2989 = OpExtInst %float %1 FMax %2987 %2988
- %2990 = OpExtInst %float %1 FMax %2986 %2989
- %2991 = OpFSub %float %float_1 %2990
- %2992 = OpFMul %float %2991 %float_0_318309873
- %2993 = OpVectorTimesScalar %v3float %2775 %2992
- %2786 = OpCompositeConstruct %v3float %2780 %2782 %2784
- %2787 = OpFMul %v3float %2786 %2993
- %3002 = OpFMul %float %2802 %2802
- %3003 = OpFMul %float %2842 %2842
- %3004 = OpFSub %float %3002 %float_1
- %3005 = OpFMul %float %3003 %3004
- %3006 = OpFAdd %float %3005 %float_1
- %3007 = OpFMul %float %float_3_14159274 %3006
- %3008 = OpFMul %float %3007 %3006
- %3009 = OpFDiv %float %3002 %3008
- %3013 = OpFMul %float %2864 %2864
- %3014 = OpFSub %float %float_1 %3002
- %3015 = OpFMul %float %3013 %3014
- %3016 = OpFAdd %float %3015 %3002
- %3017 = OpExtInst %float %1 Sqrt %3016
- %3018 = OpFMul %float %2886 %3017
- %3019 = OpFMul %float %2886 %2886
- %3021 = OpFMul %float %3019 %3014
- %3022 = OpFAdd %float %3021 %3002
- %3023 = OpExtInst %float %1 Sqrt %3022
- %3024 = OpFMul %float %2864 %3023
- %3025 = OpFAdd %float %3018 %3024
- %3026 = OpFOrdGreaterThan %bool %3025 %float_0
- OpSelectionMerge %3030 None
- OpBranchConditional %3026 %3027 %3029
- %3029 = OpLabel
- OpBranch %3030
- %3027 = OpLabel
- %3028 = OpFDiv %float %float_0_5 %3025
- OpBranch %3030
- %3030 = OpLabel
- %3031 = OpPhi %float %3028 %3027 %float_0 %3029
- %2998 = OpFMul %float %3009 %3031
- %2999 = OpVectorTimesScalar %v3float %2983 %2998
- %2796 = OpFMul %v3float %2786 %2999
- %2797 = OpCompositeConstruct %_struct_149 %2787 %2796
- %3121 = OpFMul %float %685 %float_2
- %3122 = OpFSub %float %3121 %float_2
- %3127 = OpExtInst %float %1 FMax %3122 %float_0
- %3128 = OpExtInst %float %1 FMin %3127 %float_1
- %3124 = OpFMul %float %2802 %3128
- %3054 = OpFMul %float %float_2 %2831
- %3056 = OpFMul %float %float_2 %2834
- %3058 = OpFMul %float %float_2 %2838
- %3060 = OpFNegate %float %2808
- %3062 = OpFNegate %float %2811
- %3064 = OpFNegate %float %2814
- %3067 = OpFMul %float %3060 %2831
- %3069 = OpFMul %float %3062 %2834
- %3070 = OpFAdd %float %3067 %3069
- %3072 = OpFMul %float %3064 %2838
- %3073 = OpFAdd %float %3070 %3072
- %3074 = OpFMul %float %3054 %3073
- %3075 = OpFMul %float %3056 %3073
- %3076 = OpFMul %float %3058 %3073
- %3078 = OpFAdd %float %2808 %3074
- %3080 = OpFAdd %float %2811 %3075
- %3082 = OpFAdd %float %2814 %3076
- %3083 = OpFMul %float %3078 %3078
- %3084 = OpFMul %float %3080 %3080
- %3085 = OpFAdd %float %3083 %3084
- %3086 = OpFMul %float %3082 %3082
- %3087 = OpFAdd %float %3085 %3086
- %3088 = OpExtInst %float %1 Sqrt %3087
- %3089 = OpFDiv %float %float_1 %3088
- %3090 = OpFMul %float %3078 %3089
- %3091 = OpFMul %float %3080 %3089
- %3092 = OpFMul %float %3082 %3089
- %3135 = OpFAdd %float %528 %3090
- %3138 = OpFAdd %float %529 %3091
- %3141 = OpFAdd %float %530 %3092
- %3142 = OpFMul %float %3135 %3135
- %3143 = OpFMul %float %3138 %3138
- %3144 = OpFAdd %float %3142 %3143
- %3145 = OpFMul %float %3141 %3141
- %3146 = OpFAdd %float %3144 %3145
- %3147 = OpExtInst %float %1 Sqrt %3146
- %3148 = OpFDiv %float %float_1 %3147
- %3149 = OpFMul %float %3135 %3148
- %3150 = OpFMul %float %3138 %3148
- %3151 = OpFMul %float %3141 %3148
- %3159 = OpFMul %float %2831 %3149
- %3162 = OpFMul %float %2834 %3150
- %3163 = OpFAdd %float %3159 %3162
- %3166 = OpFMul %float %2838 %3151
- %3167 = OpFAdd %float %3163 %3166
- %3168 = OpExtInst %float %1 FMax %3167 %float_1_1920929en07
- %3181 = OpFMul %float %528 %3149
- %3184 = OpFMul %float %529 %3150
- %3185 = OpFAdd %float %3181 %3184
- %3188 = OpFMul %float %530 %3151
- %3189 = OpFAdd %float %3185 %3188
- %3190 = OpExtInst %float %1 FMax %3189 %float_1_1920929en07
- %3225 = OpFMul %float %2831 %3090
- %3228 = OpFMul %float %2834 %3091
- %3229 = OpFAdd %float %3225 %3228
- %3232 = OpFMul %float %2838 %3092
- %3233 = OpFAdd %float %3229 %3232
- %3234 = OpExtInst %float %1 FMax %3233 %float_1_1920929en07
- %3243 = OpFMul %float %3124 %3124
- %3244 = OpFMul %float %3168 %3168
- %3245 = OpFSub %float %3243 %float_1
- %3246 = OpFMul %float %3244 %3245
- %3247 = OpFAdd %float %3246 %float_1
- %3248 = OpFMul %float %float_3_14159274 %3247
- %3249 = OpFMul %float %3248 %3247
- %3250 = OpFDiv %float %3243 %3249
- %3255 = OpFSub %float %float_1 %3243
- %3256 = OpFMul %float %3013 %3255
- %3257 = OpFAdd %float %3256 %3243
- %3258 = OpExtInst %float %1 Sqrt %3257
- %3259 = OpFMul %float %3234 %3258
- %3260 = OpFMul %float %3234 %3234
- %3262 = OpFMul %float %3260 %3255
- %3263 = OpFAdd %float %3262 %3243
- %3264 = OpExtInst %float %1 Sqrt %3263
- %3265 = OpFMul %float %2864 %3264
- %3266 = OpFAdd %float %3259 %3265
- %3267 = OpFOrdGreaterThan %bool %3266 %float_0
- OpSelectionMerge %3271 None
- OpBranchConditional %3267 %3268 %3270
- %3270 = OpLabel
- OpBranch %3271
- %3268 = OpLabel
- %3269 = OpFDiv %float %float_0_5 %3266
- OpBranch %3271
- %3271 = OpLabel
- %3272 = OpPhi %float %3269 %3268 %float_0 %3270
- %3335 = OpFSub %float %float_1 %3190
- %3336 = OpExtInst %float %1 Pow %3335 %float_5
- %3337 = OpFMul %float %2970 %3336
- %3338 = OpFMul %float %2973 %3336
- %3339 = OpFMul %float %2976 %3336
- %3340 = OpCompositeConstruct %v3float %3337 %3338 %3339
- %3341 = OpFAdd %v3float %2948 %3340
- %3104 = OpCompositeExtract %float %3341 0
- %3105 = OpFSub %float %float_1 %3104
- %3106 = OpCompositeExtract %float %3341 1
- %3107 = OpFSub %float %float_1 %3106
- %3108 = OpCompositeExtract %float %3341 2
- %3109 = OpFSub %float %float_1 %3108
- %3110 = OpFMul %float %3105 %3250
- %3111 = OpFMul %float %3107 %3250
- %3112 = OpFMul %float %3109 %3250
- %3113 = OpFMul %float %3110 %3272
- %3114 = OpFMul %float %3111 %3272
- %3115 = OpFMul %float %3112 %3272
- %3117 = OpCompositeConstruct %v3float %3113 %3114 %3115
- %3118 = OpFMul %v3float %3117 %683
- %722 = OpFMul %v3float %713 %3118
- OpBranch %724
- %724 = OpLabel
- %725 = OpPhi %uint %uint_0 %3271 %726 %727
- %728 = OpPhi %v3float %722 %3271 %729 %727
- %730 = OpPhi %_struct_149 %2797 %3271 %3674 %727
- OpLoopMerge %734 %727 None
- OpBranch %735
- %735 = OpLabel
- %736 = OpULessThan %bool %725 %469
- OpSelectionMerge %737 None
- OpBranchConditional %736 %738 %739
- %739 = OpLabel
- %778 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_12
- %779 = OpLoad %float %778
- %781 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %465 %uint_4 %uint_6
- %782 = OpLoad %int %781
- %783 = OpIEqual %bool %782 %int_n1
- OpSelectionMerge %784 None
- OpBranchConditional %783 %785 %786
- %786 = OpLabel
- %789 = OpLoad %int %781
- %790 = OpBitcast %uint %789
- %791 = OpAccessChain %_ptr_UniformConstant_236 %152 %790
- %3978 = OpLoad %236 %791
- %3979 = OpSampledImage %298 %3978 %473
- %3980 = OpImageSampleImplicitLod %v4float %3979 %464
- %793 = OpCompositeExtract %float %3980 1
- %794 = OpFMul %float %779 %793
- OpBranch %784
- %785 = OpLabel
- OpBranch %784
- %784 = OpLabel
- %795 = OpPhi %float %779 %785 %794 %786
- %796 = OpAccessChain %_ptr_PushConstant__struct_131 %150 %uint_0 %uint_0
- %797 = OpLoad %_struct_131 %796
- %799 = OpAccessChain %_ptr_PushConstant_uint %150 %uint_0 %uint_4 %uint_0
- %800 = OpLoad %uint %799
- %801 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %465 %uint_13
- %802 = OpLoad %float %801
- %803 = OpAccessChain %_ptr_StorageBuffer_v3float %154 %uint_0 %465 %uint_2
- %804 = OpLoad %v3float %803
- %3992 = OpFNegate %v3float %531
- %4021 = OpFDiv %float %float_1 %685
- %4023 = OpCompositeExtract %float %3992 0
- %4024 = OpFMul %float %2831 %4023
- %4026 = OpCompositeExtract %float %3992 1
- %4027 = OpFMul %float %2834 %4026
- %4028 = OpFAdd %float %4024 %4027
- %4030 = OpCompositeExtract %float %3992 2
- %4031 = OpFMul %float %2838 %4030
- %4032 = OpFAdd %float %4028 %4031
- %4033 = OpFMul %float %4021 %4021
- %4034 = OpFMul %float %4032 %4032
- %4035 = OpFSub %float %float_1 %4034
- %4036 = OpFMul %float %4033 %4035
- %4037 = OpFSub %float %float_1 %4036
- %4039 = OpFMul %float %4021 %4023
- %4041 = OpFMul %float %4021 %4026
- %4043 = OpFMul %float %4021 %4030
- %4044 = OpFMul %float %4021 %4032
- %4045 = OpExtInst %float %1 Sqrt %4037
- %4046 = OpFAdd %float %4044 %4045
- %4048 = OpFMul %float %4046 %2831
- %4050 = OpFMul %float %4046 %2834
- %4052 = OpFMul %float %4046 %2838
- %4053 = OpFSub %float %4039 %4048
- %4054 = OpFSub %float %4041 %4050
- %4055 = OpFSub %float %4043 %4052
- %3994 = OpFMul %float %795 %466
- %3997 = OpFMul %float %4053 %4053
- %4000 = OpFMul %float %4054 %4054
- %4001 = OpFAdd %float %3997 %4000
- %4004 = OpFMul %float %4055 %4055
- %4005 = OpFAdd %float %4001 %4004
- %4006 = OpExtInst %float %1 Sqrt %4005
- %4007 = OpFDiv %float %float_1 %4006
- %4009 = OpFMul %float %4053 %4007
- %4011 = OpFMul %float %4054 %4007
- %4013 = OpFMul %float %4055 %4007
- %4014 = OpFMul %float %4009 %3994
- %4015 = OpFMul %float %4011 %3994
- %4016 = OpFMul %float %4013 %3994
- %815 = OpFAdd %float %513 %4014
- %818 = OpFAdd %float %516 %4015
- %821 = OpFAdd %float %519 %4016
- %822 = OpCompositeExtract %v4float %797 0 0
- %823 = OpCompositeExtract %float %822 0
- %824 = OpFMul %float %823 %815
- %825 = OpCompositeExtract %float %822 1
- %826 = OpFMul %float %825 %815
- %827 = OpCompositeExtract %float %822 3
- %828 = OpFMul %float %827 %815
- %829 = OpCompositeExtract %v4float %797 0 1
- %830 = OpCompositeExtract %float %829 0
- %831 = OpFMul %float %830 %818
- %832 = OpFAdd %float %831 %824
- %833 = OpCompositeExtract %float %829 1
- %834 = OpFMul %float %833 %818
- %835 = OpFAdd %float %834 %826
- %836 = OpCompositeExtract %float %829 3
- %837 = OpFMul %float %836 %818
- %838 = OpFAdd %float %837 %828
- %839 = OpCompositeExtract %v4float %797 0 2
+ %545 = OpFMul %float %531 %544
+ %546 = OpFMul %float %534 %544
+ %547 = OpFMul %float %537 %544
+ %548 = OpCompositeConstruct %v3float %545 %546 %547
+ %549 = OpCompositeExtract %float %480 0
+ %551 = OpFMul %float %549 %549
+ %552 = OpCompositeExtract %float %480 1
+ %554 = OpFMul %float %552 %552
+ %555 = OpFAdd %float %551 %554
+ %556 = OpCompositeExtract %float %480 2
+ %558 = OpFMul %float %556 %556
+ %559 = OpFAdd %float %555 %558
+ %560 = OpExtInst %float %1 Sqrt %559
+ %561 = OpFDiv %float %float_1 %560
+ %562 = OpVectorTimesScalar %v3float %480 %561
+ %564 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_2
+ %565 = OpLoad %int %564
+ %566 = OpIEqual %bool %565 %int_n1
+ OpSelectionMerge %567 None
+ OpBranchConditional %566 %568 %569
+ %569 = OpLabel
+ %572 = OpLoad %int %564
+ %573 = OpBitcast %uint %572
+ %574 = OpAccessChain %_ptr_UniformConstant_238 %157 %573
+ %2660 = OpLoad %238 %574
+ %2661 = OpSampledImage %303 %2660 %490
+ %2662 = OpImageSampleImplicitLod %v4float %2661 %481
+ %576 = OpCompositeExtract %float %2662 0
+ %577 = OpCompositeExtract %float %2662 1
+ %578 = OpCompositeExtract %float %2662 2
+ %582 = OpFMul %float %576 %float_2_00787401
+ %583 = OpFMul %float %577 %float_2_00787401
+ %584 = OpFMul %float %578 %float_2_00787401
+ %585 = OpCompositeConstruct %v3float %582 %583 %584
+ %2666 = OpFSub %v3float %585 %5464
+ %587 = OpFNegate %float %531
+ %588 = OpFNegate %float %534
+ %589 = OpFNegate %float %537
+ %590 = OpCompositeConstruct %v3float %587 %588 %589
+ %2763 = OpDPdx %v3float %590
+ %2766 = OpDPdy %v3float %590
+ %2770 = OpDPdx %v2float %481
+ %2773 = OpDPdy %v2float %481
+ %2674 = OpCompositeExtract %float %2766 1
+ %2675 = OpCompositeExtract %float %562 2
+ %2676 = OpFMul %float %2674 %2675
+ %2677 = OpCompositeExtract %float %562 1
+ %2678 = OpCompositeExtract %float %2766 2
+ %2679 = OpFMul %float %2677 %2678
+ %2680 = OpFSub %float %2676 %2679
+ %2682 = OpCompositeExtract %float %562 0
+ %2683 = OpFMul %float %2678 %2682
+ %2685 = OpCompositeExtract %float %2766 0
+ %2686 = OpFMul %float %2675 %2685
+ %2687 = OpFSub %float %2683 %2686
+ %2690 = OpFMul %float %2685 %2677
+ %2693 = OpFMul %float %2682 %2674
+ %2694 = OpFSub %float %2690 %2693
+ %2696 = OpCompositeExtract %float %2763 2
+ %2697 = OpFMul %float %2677 %2696
+ %2698 = OpCompositeExtract %float %2763 1
+ %2700 = OpFMul %float %2698 %2675
+ %2701 = OpFSub %float %2697 %2700
+ %2703 = OpCompositeExtract %float %2763 0
+ %2704 = OpFMul %float %2675 %2703
+ %2707 = OpFMul %float %2696 %2682
+ %2708 = OpFSub %float %2704 %2707
+ %2711 = OpFMul %float %2682 %2698
+ %2714 = OpFMul %float %2703 %2677
+ %2715 = OpFSub %float %2711 %2714
+ %2716 = OpCompositeExtract %float %2770 0
+ %2717 = OpFMul %float %2680 %2716
+ %2718 = OpFMul %float %2687 %2716
+ %2719 = OpFMul %float %2694 %2716
+ %2720 = OpCompositeExtract %float %2773 0
+ %2721 = OpFMul %float %2701 %2720
+ %2722 = OpFMul %float %2708 %2720
+ %2723 = OpFMul %float %2715 %2720
+ %2724 = OpFAdd %float %2717 %2721
+ %2725 = OpFAdd %float %2718 %2722
+ %2726 = OpFAdd %float %2719 %2723
+ %2727 = OpCompositeExtract %float %2770 1
+ %2728 = OpFMul %float %2680 %2727
+ %2729 = OpFMul %float %2687 %2727
+ %2730 = OpFMul %float %2694 %2727
+ %2731 = OpCompositeExtract %float %2773 1
+ %2732 = OpFMul %float %2701 %2731
+ %2733 = OpFMul %float %2708 %2731
+ %2734 = OpFMul %float %2715 %2731
+ %2735 = OpFAdd %float %2728 %2732
+ %2736 = OpFAdd %float %2729 %2733
+ %2737 = OpFAdd %float %2730 %2734
+ %2738 = OpFMul %float %2724 %2724
+ %2739 = OpFMul %float %2725 %2725
+ %2740 = OpFAdd %float %2738 %2739
+ %2741 = OpFMul %float %2726 %2726
+ %2742 = OpFAdd %float %2740 %2741
+ %2743 = OpFMul %float %2735 %2735
+ %2744 = OpFMul %float %2736 %2736
+ %2745 = OpFAdd %float %2743 %2744
+ %2746 = OpFMul %float %2737 %2737
+ %2747 = OpFAdd %float %2745 %2746
+ %2748 = OpExtInst %float %1 FMax %2742 %2747
+ %2749 = OpExtInst %float %1 Sqrt %2748
+ %2750 = OpFDiv %float %float_1 %2749
+ %2751 = OpFMul %float %2724 %2750
+ %2752 = OpFMul %float %2725 %2750
+ %2753 = OpFMul %float %2726 %2750
+ %2755 = OpFMul %float %2735 %2750
+ %2756 = OpFMul %float %2736 %2750
+ %2757 = OpFMul %float %2737 %2750
+ %593 = OpCompositeExtract %float %2666 0
+ %595 = OpFMul %float %2751 %593
+ %597 = OpFMul %float %2752 %593
+ %599 = OpFMul %float %2753 %593
+ %601 = OpCompositeExtract %float %2666 1
+ %603 = OpFMul %float %2755 %601
+ %605 = OpFMul %float %2756 %601
+ %607 = OpFMul %float %2757 %601
+ %608 = OpFAdd %float %603 %595
+ %609 = OpFAdd %float %605 %597
+ %610 = OpFAdd %float %607 %599
+ %612 = OpCompositeExtract %float %2666 2
+ %614 = OpFMul %float %2682 %612
+ %616 = OpFMul %float %2677 %612
+ %618 = OpFMul %float %2675 %612
+ %619 = OpFAdd %float %614 %608
+ %620 = OpFAdd %float %616 %609
+ %621 = OpFAdd %float %618 %610
+ %622 = OpFMul %float %619 %619
+ %623 = OpFMul %float %620 %620
+ %624 = OpFAdd %float %622 %623
+ %625 = OpFMul %float %621 %621
+ %626 = OpFAdd %float %624 %625
+ %627 = OpExtInst %float %1 Sqrt %626
+ %628 = OpFDiv %float %float_1 %627
+ %629 = OpFMul %float %619 %628
+ %630 = OpFMul %float %620 %628
+ %631 = OpFMul %float %621 %628
+ %632 = OpCompositeConstruct %v3float %629 %630 %631
+ OpBranch %567
+ %568 = OpLabel
+ OpBranch %567
+ %567 = OpLabel
+ %633 = OpPhi %v3float %562 %568 %632 %569
+ %634 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_5
+ %635 = OpLoad %float %634
+ %636 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_6
+ %637 = OpLoad %float %636
+ %639 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_1
+ %640 = OpLoad %int %639
+ %641 = OpIEqual %bool %640 %int_n1
+ OpSelectionMerge %642 None
+ OpBranchConditional %641 %643 %644
+ %644 = OpLabel
+ %647 = OpLoad %int %639
+ %648 = OpBitcast %uint %647
+ %649 = OpAccessChain %_ptr_UniformConstant_238 %157 %648
+ %2776 = OpLoad %238 %649
+ %2777 = OpSampledImage %303 %2776 %490
+ %2778 = OpImageSampleImplicitLod %v4float %2777 %481
+ %651 = OpCompositeExtract %float %2778 2
+ %652 = OpFMul %float %635 %651
+ %653 = OpCompositeExtract %float %2778 1
+ %654 = OpFMul %float %637 %653
+ OpBranch %642
+ %643 = OpLabel
+ OpBranch %642
+ %642 = OpLabel
+ %655 = OpPhi %float %637 %643 %654 %644
+ %656 = OpPhi %float %635 %643 %652 %644
+ %657 = OpAccessChain %_ptr_StorageBuffer_v3float %158 %uint_0 %482 %uint_3
+ %658 = OpLoad %v3float %657
+ %661 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_8
+ %662 = OpLoad %int %661
+ %663 = OpIEqual %bool %662 %int_n1
+ OpSelectionMerge %664 None
+ OpBranchConditional %663 %665 %666
+ %666 = OpLabel
+ %669 = OpLoad %int %661
+ %670 = OpBitcast %uint %669
+ %671 = OpAccessChain %_ptr_UniformConstant_238 %157 %670
+ %2787 = OpLoad %238 %671
+ %2788 = OpSampledImage %303 %2787 %490
+ %2789 = OpImageSampleImplicitLod %v4float %2788 %481
+ %673 = OpCompositeExtract %float %2789 0
+ %674 = OpCompositeExtract %float %2789 1
+ %675 = OpCompositeExtract %float %2789 2
+ %676 = OpCompositeConstruct %v3float %673 %674 %675
+ %677 = OpFMul %v3float %658 %676
+ OpBranch %664
+ %665 = OpLabel
+ OpBranch %664
+ %664 = OpLabel
+ %678 = OpPhi %v3float %658 %665 %677 %666
+ %679 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_14
+ %680 = OpLoad %float %679
+ %682 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_7
+ %683 = OpLoad %int %682
+ %684 = OpIEqual %bool %683 %int_n1
+ OpSelectionMerge %685 None
+ OpBranchConditional %684 %686 %687
+ %687 = OpLabel
+ %690 = OpLoad %int %682
+ %691 = OpBitcast %uint %690
+ %692 = OpAccessChain %_ptr_UniformConstant_238 %157 %691
+ %2792 = OpLoad %238 %692
+ %2793 = OpSampledImage %303 %2792 %490
+ %2794 = OpImageSampleImplicitLod %v4float %2793 %481
+ %694 = OpCompositeExtract %float %2794 3
+ %695 = OpFMul %float %680 %694
+ OpBranch %685
+ %686 = OpLabel
+ OpBranch %685
+ %685 = OpLabel
+ %696 = OpPhi %float %680 %686 %695 %687
+ %697 = OpCompositeExtract %float %507 0
+ %698 = OpCompositeExtract %float %507 1
+ %699 = OpCompositeExtract %float %507 2
+ %700 = OpCompositeConstruct %v3float %697 %698 %699
+ %701 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_10
+ %702 = OpLoad %float %701
+ %704 = OpAccessChain %_ptr_StorageBuffer_v3float %158 %uint_0 %482 %uint_1
+ %705 = OpLoad %v3float %704
+ %708 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_3
+ %709 = OpLoad %int %708
+ %710 = OpIEqual %bool %709 %int_n1
+ OpSelectionMerge %711 None
+ OpBranchConditional %710 %712 %713
+ %713 = OpLabel
+ %716 = OpLoad %int %708
+ %717 = OpBitcast %uint %716
+ %718 = OpAccessChain %_ptr_UniformConstant_238 %157 %717
+ %2803 = OpLoad %238 %718
+ %2804 = OpSampledImage %303 %2803 %490
+ %2805 = OpImageSampleImplicitLod %v4float %2804 %481
+ %720 = OpCompositeExtract %float %2805 0
+ %721 = OpCompositeExtract %float %2805 1
+ %722 = OpCompositeExtract %float %2805 2
+ %723 = OpCompositeConstruct %v3float %720 %721 %722
+ %724 = OpFMul %v3float %705 %723
+ OpBranch %711
+ %712 = OpLabel
+ OpBranch %711
+ %711 = OpLabel
+ %725 = OpPhi %v3float %705 %712 %724 %713
+ %726 = OpAccessChain %_ptr_Uniform_v3float %159 %uint_0 %uint_0
+ %727 = OpLoad %v3float %726
+ %729 = OpAccessChain %_ptr_Uniform_v3float %159 %uint_0 %uint_1
+ %730 = OpLoad %v3float %729
+ %2877 = OpFMul %float %655 %655
+ %2883 = OpCompositeExtract %float %727 0
+ %2884 = OpFAdd %float %545 %2883
+ %2886 = OpCompositeExtract %float %727 1
+ %2887 = OpFAdd %float %546 %2886
+ %2889 = OpCompositeExtract %float %727 2
+ %2890 = OpFAdd %float %547 %2889
+ %2891 = OpFMul %float %2884 %2884
+ %2892 = OpFMul %float %2887 %2887
+ %2893 = OpFAdd %float %2891 %2892
+ %2894 = OpFMul %float %2890 %2890
+ %2895 = OpFAdd %float %2893 %2894
+ %2896 = OpExtInst %float %1 Sqrt %2895
+ %2897 = OpFDiv %float %float_1 %2896
+ %2898 = OpFMul %float %2884 %2897
+ %2899 = OpFMul %float %2887 %2897
+ %2900 = OpFMul %float %2890 %2897
+ %2906 = OpCompositeExtract %float %633 0
+ %2908 = OpFMul %float %2906 %2898
+ %2909 = OpCompositeExtract %float %633 1
+ %2911 = OpFMul %float %2909 %2899
+ %2912 = OpFAdd %float %2908 %2911
+ %2913 = OpCompositeExtract %float %633 2
+ %2915 = OpFMul %float %2913 %2900
+ %2916 = OpFAdd %float %2912 %2915
+ %2917 = OpExtInst %float %1 FMax %2916 %float_1_1920929en07
+ %2930 = OpFMul %float %2906 %545
+ %2933 = OpFMul %float %2909 %546
+ %2934 = OpFAdd %float %2930 %2933
+ %2937 = OpFMul %float %2913 %547
+ %2938 = OpFAdd %float %2934 %2937
+ %2939 = OpExtInst %float %1 FMax %2938 %float_1_1920929en07
+ %2952 = OpFMul %float %2906 %2883
+ %2955 = OpFMul %float %2909 %2886
+ %2956 = OpFAdd %float %2952 %2955
+ %2959 = OpFMul %float %2913 %2889
+ %2960 = OpFAdd %float %2956 %2959
+ %2961 = OpExtInst %float %1 FMax %2960 %float_1_1920929en07
+ %2974 = OpFMul %float %545 %2898
+ %2977 = OpFMul %float %546 %2899
+ %2978 = OpFAdd %float %2974 %2977
+ %2981 = OpFMul %float %547 %2900
+ %2982 = OpFAdd %float %2978 %2981
+ %2983 = OpExtInst %float %1 FMax %2982 %float_1_1920929en07
+ %2839 = OpFNegate %float %697
+ %2842 = OpFNegate %float %698
+ %2845 = OpFNegate %float %699
+ %2846 = OpFMul %float %2839 %656
+ %2847 = OpFMul %float %2842 %656
+ %2848 = OpFMul %float %2845 %656
+ %2849 = OpCompositeConstruct %v3float %2846 %2847 %2848
+ %2850 = OpFAdd %v3float %700 %2849
+ %2993 = OpFSub %float %702 %float_1
+ %2995 = OpFAdd %float %702 %float_1
+ %2996 = OpFDiv %float %2993 %2995
+ %2997 = OpFMul %float %2996 %2996
+ %2999 = OpCompositeExtract %float %678 0
+ %3000 = OpFMul %float %2997 %2999
+ %3001 = OpCompositeExtract %float %678 1
+ %3002 = OpFMul %float %2997 %3001
+ %3003 = OpCompositeExtract %float %678 2
+ %3004 = OpFMul %float %2997 %3003
+ %3006 = OpFMul %float %3000 %696
+ %3007 = OpFMul %float %3002 %696
+ %3008 = OpFMul %float %3004 %696
+ %3012 = OpFSub %float %697 %3006
+ %3014 = OpFSub %float %698 %3007
+ %3016 = OpFSub %float %699 %3008
+ %3017 = OpFMul %float %3012 %656
+ %3018 = OpFMul %float %3014 %656
+ %3019 = OpFMul %float %3016 %656
+ %3020 = OpFAdd %float %3006 %3017
+ %3021 = OpFAdd %float %3007 %3018
+ %3022 = OpFAdd %float %3008 %3019
+ %3023 = OpCompositeConstruct %v3float %3020 %3021 %3022
+ %3029 = OpFSub %float %float_1 %696
+ %3034 = OpFMul %float %3029 %656
+ %3037 = OpFAdd %float %696 %3034
+ %3045 = OpFSub %float %3037 %3020
+ %3048 = OpFSub %float %3037 %3021
+ %3051 = OpFSub %float %3037 %3022
+ %3052 = OpFSub %float %float_1 %2983
+ %3053 = OpExtInst %float %1 Pow %3052 %float_5
+ %3054 = OpFMul %float %3045 %3053
+ %3055 = OpFMul %float %3048 %3053
+ %3056 = OpFMul %float %3051 %3053
+ %3057 = OpCompositeConstruct %v3float %3054 %3055 %3056
+ %3058 = OpFAdd %v3float %3023 %3057
+ %2854 = OpCompositeExtract %float %730 0
+ %2855 = OpFMul %float %2854 %2961
+ %2856 = OpCompositeExtract %float %730 1
+ %2857 = OpFMul %float %2856 %2961
+ %2858 = OpCompositeExtract %float %730 2
+ %2859 = OpFMul %float %2858 %2961
+ %3061 = OpCompositeExtract %float %3058 0
+ %3062 = OpCompositeExtract %float %3058 1
+ %3063 = OpCompositeExtract %float %3058 2
+ %3064 = OpExtInst %float %1 FMax %3062 %3063
+ %3065 = OpExtInst %float %1 FMax %3061 %3064
+ %3066 = OpFSub %float %float_1 %3065
+ %3067 = OpFMul %float %3066 %float_0_318309873
+ %3068 = OpVectorTimesScalar %v3float %2850 %3067
+ %2861 = OpCompositeConstruct %v3float %2855 %2857 %2859
+ %2862 = OpFMul %v3float %2861 %3068
+ %3077 = OpFMul %float %2877 %2877
+ %3078 = OpFMul %float %2917 %2917
+ %3079 = OpFSub %float %3077 %float_1
+ %3080 = OpFMul %float %3078 %3079
+ %3081 = OpFAdd %float %3080 %float_1
+ %3082 = OpFMul %float %float_3_14159274 %3081
+ %3083 = OpFMul %float %3082 %3081
+ %3084 = OpFDiv %float %3077 %3083
+ %3088 = OpFMul %float %2939 %2939
+ %3089 = OpFSub %float %float_1 %3077
+ %3090 = OpFMul %float %3088 %3089
+ %3091 = OpFAdd %float %3090 %3077
+ %3092 = OpExtInst %float %1 Sqrt %3091
+ %3093 = OpFMul %float %2961 %3092
+ %3094 = OpFMul %float %2961 %2961
+ %3096 = OpFMul %float %3094 %3089
+ %3097 = OpFAdd %float %3096 %3077
+ %3098 = OpExtInst %float %1 Sqrt %3097
+ %3099 = OpFMul %float %2939 %3098
+ %3100 = OpFAdd %float %3093 %3099
+ %3101 = OpFOrdGreaterThan %bool %3100 %float_0
+ OpSelectionMerge %3105 None
+ OpBranchConditional %3101 %3102 %3104
+ %3104 = OpLabel
+ OpBranch %3105
+ %3102 = OpLabel
+ %3103 = OpFDiv %float %float_0_5 %3100
+ OpBranch %3105
+ %3105 = OpLabel
+ %3106 = OpPhi %float %3103 %3102 %float_0 %3104
+ %3073 = OpFMul %float %3084 %3106
+ %3074 = OpVectorTimesScalar %v3float %3058 %3073
+ %2871 = OpFMul %v3float %2861 %3074
+ %2872 = OpCompositeConstruct %_struct_154 %2862 %2871
+ %3196 = OpFMul %float %702 %float_2
+ %3197 = OpFSub %float %3196 %float_2
+ %3202 = OpExtInst %float %1 FMax %3197 %float_0
+ %3203 = OpExtInst %float %1 FMin %3202 %float_1
+ %3199 = OpFMul %float %2877 %3203
+ %3129 = OpFMul %float %float_2 %2906
+ %3131 = OpFMul %float %float_2 %2909
+ %3133 = OpFMul %float %float_2 %2913
+ %3135 = OpFNegate %float %2883
+ %3137 = OpFNegate %float %2886
+ %3139 = OpFNegate %float %2889
+ %3142 = OpFMul %float %3135 %2906
+ %3144 = OpFMul %float %3137 %2909
+ %3145 = OpFAdd %float %3142 %3144
+ %3147 = OpFMul %float %3139 %2913
+ %3148 = OpFAdd %float %3145 %3147
+ %3149 = OpFMul %float %3129 %3148
+ %3150 = OpFMul %float %3131 %3148
+ %3151 = OpFMul %float %3133 %3148
+ %3153 = OpFAdd %float %2883 %3149
+ %3155 = OpFAdd %float %2886 %3150
+ %3157 = OpFAdd %float %2889 %3151
+ %3158 = OpFMul %float %3153 %3153
+ %3159 = OpFMul %float %3155 %3155
+ %3160 = OpFAdd %float %3158 %3159
+ %3161 = OpFMul %float %3157 %3157
+ %3162 = OpFAdd %float %3160 %3161
+ %3163 = OpExtInst %float %1 Sqrt %3162
+ %3164 = OpFDiv %float %float_1 %3163
+ %3165 = OpFMul %float %3153 %3164
+ %3166 = OpFMul %float %3155 %3164
+ %3167 = OpFMul %float %3157 %3164
+ %3210 = OpFAdd %float %545 %3165
+ %3213 = OpFAdd %float %546 %3166
+ %3216 = OpFAdd %float %547 %3167
+ %3217 = OpFMul %float %3210 %3210
+ %3218 = OpFMul %float %3213 %3213
+ %3219 = OpFAdd %float %3217 %3218
+ %3220 = OpFMul %float %3216 %3216
+ %3221 = OpFAdd %float %3219 %3220
+ %3222 = OpExtInst %float %1 Sqrt %3221
+ %3223 = OpFDiv %float %float_1 %3222
+ %3224 = OpFMul %float %3210 %3223
+ %3225 = OpFMul %float %3213 %3223
+ %3226 = OpFMul %float %3216 %3223
+ %3234 = OpFMul %float %2906 %3224
+ %3237 = OpFMul %float %2909 %3225
+ %3238 = OpFAdd %float %3234 %3237
+ %3241 = OpFMul %float %2913 %3226
+ %3242 = OpFAdd %float %3238 %3241
+ %3243 = OpExtInst %float %1 FMax %3242 %float_1_1920929en07
+ %3256 = OpFMul %float %545 %3224
+ %3259 = OpFMul %float %546 %3225
+ %3260 = OpFAdd %float %3256 %3259
+ %3263 = OpFMul %float %547 %3226
+ %3264 = OpFAdd %float %3260 %3263
+ %3265 = OpExtInst %float %1 FMax %3264 %float_1_1920929en07
+ %3300 = OpFMul %float %2906 %3165
+ %3303 = OpFMul %float %2909 %3166
+ %3304 = OpFAdd %float %3300 %3303
+ %3307 = OpFMul %float %2913 %3167
+ %3308 = OpFAdd %float %3304 %3307
+ %3309 = OpExtInst %float %1 FMax %3308 %float_1_1920929en07
+ %3318 = OpFMul %float %3199 %3199
+ %3319 = OpFMul %float %3243 %3243
+ %3320 = OpFSub %float %3318 %float_1
+ %3321 = OpFMul %float %3319 %3320
+ %3322 = OpFAdd %float %3321 %float_1
+ %3323 = OpFMul %float %float_3_14159274 %3322
+ %3324 = OpFMul %float %3323 %3322
+ %3325 = OpFDiv %float %3318 %3324
+ %3330 = OpFSub %float %float_1 %3318
+ %3331 = OpFMul %float %3088 %3330
+ %3332 = OpFAdd %float %3331 %3318
+ %3333 = OpExtInst %float %1 Sqrt %3332
+ %3334 = OpFMul %float %3309 %3333
+ %3335 = OpFMul %float %3309 %3309
+ %3337 = OpFMul %float %3335 %3330
+ %3338 = OpFAdd %float %3337 %3318
+ %3339 = OpExtInst %float %1 Sqrt %3338
+ %3340 = OpFMul %float %2939 %3339
+ %3341 = OpFAdd %float %3334 %3340
+ %3342 = OpFOrdGreaterThan %bool %3341 %float_0
+ OpSelectionMerge %3346 None
+ OpBranchConditional %3342 %3343 %3345
+ %3345 = OpLabel
+ OpBranch %3346
+ %3343 = OpLabel
+ %3344 = OpFDiv %float %float_0_5 %3341
+ OpBranch %3346
+ %3346 = OpLabel
+ %3347 = OpPhi %float %3344 %3343 %float_0 %3345
+ %3410 = OpFSub %float %float_1 %3265
+ %3411 = OpExtInst %float %1 Pow %3410 %float_5
+ %3412 = OpFMul %float %3045 %3411
+ %3413 = OpFMul %float %3048 %3411
+ %3414 = OpFMul %float %3051 %3411
+ %3415 = OpCompositeConstruct %v3float %3412 %3413 %3414
+ %3416 = OpFAdd %v3float %3023 %3415
+ %3179 = OpCompositeExtract %float %3416 0
+ %3180 = OpFSub %float %float_1 %3179
+ %3181 = OpCompositeExtract %float %3416 1
+ %3182 = OpFSub %float %float_1 %3181
+ %3183 = OpCompositeExtract %float %3416 2
+ %3184 = OpFSub %float %float_1 %3183
+ %3185 = OpFMul %float %3180 %3325
+ %3186 = OpFMul %float %3182 %3325
+ %3187 = OpFMul %float %3184 %3325
+ %3188 = OpFMul %float %3185 %3347
+ %3189 = OpFMul %float %3186 %3347
+ %3190 = OpFMul %float %3187 %3347
+ %3192 = OpCompositeConstruct %v3float %3188 %3189 %3190
+ %3193 = OpFMul %v3float %3192 %700
+ %739 = OpFMul %v3float %730 %3193
+ OpBranch %741
+ %741 = OpLabel
+ %742 = OpPhi %uint %uint_0 %3346 %743 %744
+ %745 = OpPhi %v3float %739 %3346 %746 %744
+ %747 = OpPhi %_struct_154 %2872 %3346 %3749 %744
+ OpLoopMerge %751 %744 None
+ OpBranch %752
+ %752 = OpLabel
+ %753 = OpULessThan %bool %742 %486
+ OpSelectionMerge %754 None
+ OpBranchConditional %753 %755 %756
+ %756 = OpLabel
+ %795 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_12
+ %796 = OpLoad %float %795
+ %798 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %482 %uint_4 %uint_6
+ %799 = OpLoad %int %798
+ %800 = OpIEqual %bool %799 %int_n1
+ OpSelectionMerge %801 None
+ OpBranchConditional %800 %802 %803
+ %803 = OpLabel
+ %806 = OpLoad %int %798
+ %807 = OpBitcast %uint %806
+ %808 = OpAccessChain %_ptr_UniformConstant_238 %157 %807
+ %4053 = OpLoad %238 %808
+ %4054 = OpSampledImage %303 %4053 %490
+ %4055 = OpImageSampleImplicitLod %v4float %4054 %481
+ %810 = OpCompositeExtract %float %4055 1
+ %811 = OpFMul %float %796 %810
+ OpBranch %801
+ %802 = OpLabel
+ OpBranch %801
+ %801 = OpLabel
+ %812 = OpPhi %float %796 %802 %811 %803
+ %813 = OpAccessChain %_ptr_PushConstant__struct_133 %155 %uint_0 %uint_0
+ %814 = OpLoad %_struct_133 %813
+ %816 = OpAccessChain %_ptr_PushConstant_uint %155 %uint_0 %uint_4 %uint_0
+ %817 = OpLoad %uint %816
+ %818 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %482 %uint_13
+ %819 = OpLoad %float %818
+ %820 = OpAccessChain %_ptr_StorageBuffer_v3float %158 %uint_0 %482 %uint_2
+ %821 = OpLoad %v3float %820
+ %4067 = OpFNegate %v3float %548
+ %4096 = OpFDiv %float %float_1 %702
+ %4098 = OpCompositeExtract %float %4067 0
+ %4099 = OpFMul %float %2906 %4098
+ %4101 = OpCompositeExtract %float %4067 1
+ %4102 = OpFMul %float %2909 %4101
+ %4103 = OpFAdd %float %4099 %4102
+ %4105 = OpCompositeExtract %float %4067 2
+ %4106 = OpFMul %float %2913 %4105
+ %4107 = OpFAdd %float %4103 %4106
+ %4108 = OpFMul %float %4096 %4096
+ %4109 = OpFMul %float %4107 %4107
+ %4110 = OpFSub %float %float_1 %4109
+ %4111 = OpFMul %float %4108 %4110
+ %4112 = OpFSub %float %float_1 %4111
+ %4114 = OpFMul %float %4096 %4098
+ %4116 = OpFMul %float %4096 %4101
+ %4118 = OpFMul %float %4096 %4105
+ %4119 = OpFMul %float %4096 %4107
+ %4120 = OpExtInst %float %1 Sqrt %4112
+ %4121 = OpFAdd %float %4119 %4120
+ %4123 = OpFMul %float %4121 %2906
+ %4125 = OpFMul %float %4121 %2909
+ %4127 = OpFMul %float %4121 %2913
+ %4128 = OpFSub %float %4114 %4123
+ %4129 = OpFSub %float %4116 %4125
+ %4130 = OpFSub %float %4118 %4127
+ %4069 = OpFMul %float %812 %483
+ %4072 = OpFMul %float %4128 %4128
+ %4075 = OpFMul %float %4129 %4129
+ %4076 = OpFAdd %float %4072 %4075
+ %4079 = OpFMul %float %4130 %4130
+ %4080 = OpFAdd %float %4076 %4079
+ %4081 = OpExtInst %float %1 Sqrt %4080
+ %4082 = OpFDiv %float %float_1 %4081
+ %4084 = OpFMul %float %4128 %4082
+ %4086 = OpFMul %float %4129 %4082
+ %4088 = OpFMul %float %4130 %4082
+ %4089 = OpFMul %float %4084 %4069
+ %4090 = OpFMul %float %4086 %4069
+ %4091 = OpFMul %float %4088 %4069
+ %832 = OpFAdd %float %530 %4089
+ %835 = OpFAdd %float %533 %4090
+ %838 = OpFAdd %float %536 %4091
+ %839 = OpCompositeExtract %v4float %814 0 0
%840 = OpCompositeExtract %float %839 0
- %841 = OpFMul %float %840 %821
- %842 = OpFAdd %float %841 %832
- %843 = OpCompositeExtract %float %839 1
- %844 = OpFMul %float %843 %821
- %845 = OpFAdd %float %844 %835
- %846 = OpCompositeExtract %float %839 3
- %847 = OpFMul %float %846 %821
- %848 = OpFAdd %float %847 %838
- %849 = OpCompositeExtract %v4float %797 0 3
- %850 = OpCompositeExtract %float %849 0
- %852 = OpFAdd %float %850 %842
- %853 = OpCompositeExtract %float %849 1
- %855 = OpFAdd %float %853 %845
- %856 = OpCompositeExtract %float %849 3
- %858 = OpFAdd %float %856 %848
- %859 = OpFDiv %float %852 %858
- %860 = OpFDiv %float %855 %858
- %861 = OpFAdd %float %859 %float_1
- %862 = OpFAdd %float %860 %float_1
- %863 = OpFMul %float %861 %float_0_5
- %864 = OpFMul %float %862 %float_0_5
- %865 = OpCompositeConstruct %v2float %863 %864
- %866 = OpConvertUToF %float %800
- %867 = OpExtInst %float %1 Log2 %866
- %4062 = OpFMul %float %638 %3128
- %869 = OpFMul %float %867 %4062
- %870 = OpLoad %238 %156
- %4069 = OpLoad %236 %157
- %4070 = OpSampledImage %298 %4069 %870
- %4071 = OpImageSampleExplicitLod %v4float %4070 %865 Lod %869
- %872 = OpCompositeExtract %float %4071 0
- %873 = OpCompositeExtract %float %4071 1
- %874 = OpCompositeExtract %float %4071 2
- %875 = OpCompositeConstruct %v3float %872 %873 %874
- %4074 = OpFOrdEqual %bool %802 %float_0x1p_128
- OpSelectionMerge %4098 None
- OpBranchConditional %4074 %4075 %4076
- %4076 = OpLabel
- %4108 = OpExtInst %v3float %1 Log %804
- %4078 = OpCompositeExtract %float %4108 0
- %4079 = OpFNegate %float %4078
- %4080 = OpCompositeExtract %float %4108 1
- %4081 = OpFNegate %float %4080
- %4082 = OpCompositeExtract %float %4108 2
- %4083 = OpFNegate %float %4082
- %4084 = OpFDiv %float %4079 %802
- %4085 = OpFDiv %float %4081 %802
- %4086 = OpFDiv %float %4083 %802
- %4087 = OpFNegate %float %4084
- %4088 = OpFNegate %float %4085
- %4089 = OpFNegate %float %4086
- %4090 = OpFMul %float %4087 %3994
- %4091 = OpFMul %float %4088 %3994
- %4092 = OpFMul %float %4089 %3994
- %4093 = OpExtInst %float %1 Exp %4090
- %4094 = OpExtInst %float %1 Exp %4091
- %4095 = OpExtInst %float %1 Exp %4092
- %4096 = OpCompositeConstruct %v3float %4093 %4094 %4095
- %4097 = OpFMul %v3float %4096 %875
- OpBranch %4098
- %4075 = OpLabel
- OpBranch %4098
- %4098 = OpLabel
- %4099 = OpPhi %v3float %875 %4075 %4097 %4076
- %888 = OpCompositeConstruct %v2float %2863 %638
- %889 = OpAccessChain %_ptr_PushConstant_uint %150 %uint_0 %uint_6
- %890 = OpLoad %uint %889
- %891 = OpAccessChain %_ptr_UniformConstant_236 %152 %890
- %4111 = OpLoad %236 %891
- %4112 = OpSampledImage %298 %4111 %870
- %4113 = OpImageSampleImplicitLod %v4float %4112 %888
- %894 = OpCompositeExtract %float %4113 0
- %895 = OpCompositeExtract %float %4113 1
- %899 = OpFMul %float %2945 %894
- %901 = OpFMul %float %2946 %894
- %903 = OpFMul %float %2947 %894
- %905 = OpFMul %float %2962 %895
- %910 = OpFAdd %float %899 %905
- %911 = OpFAdd %float %901 %905
- %912 = OpFAdd %float %903 %905
- %913 = OpFSub %float %float_1 %910
- %914 = OpFSub %float %float_1 %911
- %915 = OpFSub %float %float_1 %912
- %916 = OpCompositeExtract %float %4099 0
- %917 = OpFMul %float %913 %916
- %918 = OpCompositeExtract %float %4099 1
- %919 = OpFMul %float %914 %918
- %920 = OpCompositeExtract %float %4099 2
- %921 = OpFMul %float %915 %920
- %923 = OpFMul %float %917 %680
- %925 = OpFMul %float %919 %681
- %927 = OpFMul %float %921 %682
- %928 = OpCompositeExtract %float %728 0
- %929 = OpFAdd %float %928 %923
- %930 = OpCompositeExtract %float %728 1
- %931 = OpFAdd %float %930 %925
- %932 = OpCompositeExtract %float %728 2
- %933 = OpFAdd %float %932 %927
- %934 = OpFMul %float %508 %929
- %935 = OpFMul %float %508 %931
- %936 = OpFMul %float %508 %933
- %937 = OpCompositeExtract %v3float %730 0
- %938 = OpCompositeExtract %float %937 0
- %939 = OpFSub %float %934 %938
- %940 = OpCompositeExtract %float %937 1
- %941 = OpFSub %float %935 %940
- %942 = OpCompositeExtract %float %937 2
- %943 = OpFSub %float %936 %942
- %944 = OpFMul %float %939 %508
- %945 = OpFMul %float %941 %508
- %946 = OpFMul %float %943 %508
- %948 = OpFAdd %float %938 %944
- %950 = OpFAdd %float %940 %945
- %952 = OpFAdd %float %942 %946
- %953 = OpCompositeExtract %v3float %730 1
- %954 = OpCompositeExtract %float %953 0
- %955 = OpFAdd %float %948 %954
- %956 = OpCompositeExtract %float %953 1
- %957 = OpFAdd %float %950 %956
- %958 = OpCompositeExtract %float %953 2
- %959 = OpFAdd %float %952 %958
- %960 = OpCompositeExtract %float %708 0
- %961 = OpFAdd %float %955 %960
- %962 = OpCompositeExtract %float %708 1
- %963 = OpFAdd %float %957 %962
- %964 = OpCompositeExtract %float %708 2
- %965 = OpFAdd %float %959 %964
- %966 = OpCompositeConstruct %v4float %961 %963 %965 %float_1
- OpStore %8 %966
- OpBranch %734
- %738 = OpLabel
- %741 = OpAccessChain %_ptr_StorageBuffer_v3float %151 %uint_0 %725 %uint_0
- %742 = OpLoad %v3float %741
- %3354 = OpCompositeExtract %float %742 0
- %3356 = OpFSub %float %3354 %513
- %3357 = OpCompositeExtract %float %742 1
- %3359 = OpFSub %float %3357 %516
- %3360 = OpCompositeExtract %float %742 2
- %3362 = OpFSub %float %3360 %519
- %3363 = OpFMul %float %3356 %3356
- %3364 = OpFMul %float %3359 %3359
- %3365 = OpFAdd %float %3363 %3364
- %3366 = OpFMul %float %3362 %3362
- %3367 = OpFAdd %float %3365 %3366
- %3368 = OpExtInst %float %1 Sqrt %3367
- %3369 = OpFDiv %float %3356 %3368
- %3370 = OpFDiv %float %3359 %3368
- %3371 = OpFDiv %float %3362 %3368
- %3373 = OpFDiv %float %float_1 %3367
- %747 = OpAccessChain %_ptr_StorageBuffer_v4float %151 %uint_0 %725 %uint_1
- %748 = OpLoad %v4float %747
- %749 = OpCompositeExtract %float %748 0
- %750 = OpCompositeExtract %float %748 1
- %751 = OpCompositeExtract %float %748 2
- %753 = OpAccessChain %_ptr_StorageBuffer_float %151 %uint_0 %725 %uint_1 %uint_3
- %754 = OpLoad %float %753
- %755 = OpFMul %float %749 %754
- %756 = OpFMul %float %750 %754
- %757 = OpFMul %float %751 %754
- %758 = OpFMul %float %755 %3373
- %759 = OpFMul %float %756 %3373
- %760 = OpFMul %float %757 %3373
- %3443 = OpFAdd %float %528 %3369
- %3446 = OpFAdd %float %529 %3370
- %3449 = OpFAdd %float %530 %3371
- %3450 = OpFMul %float %3443 %3443
- %3451 = OpFMul %float %3446 %3446
- %3452 = OpFAdd %float %3450 %3451
- %3453 = OpFMul %float %3449 %3449
- %3454 = OpFAdd %float %3452 %3453
- %3455 = OpExtInst %float %1 Sqrt %3454
- %3456 = OpFDiv %float %float_1 %3455
- %3457 = OpFMul %float %3443 %3456
- %3458 = OpFMul %float %3446 %3456
- %3459 = OpFMul %float %3449 %3456
- %3467 = OpFMul %float %2831 %3457
- %3470 = OpFMul %float %2834 %3458
- %3471 = OpFAdd %float %3467 %3470
- %3474 = OpFMul %float %2838 %3459
- %3475 = OpFAdd %float %3471 %3474
- %3476 = OpExtInst %float %1 FMax %3475 %float_1_1920929en07
- %3511 = OpFMul %float %2831 %3369
- %3514 = OpFMul %float %2834 %3370
- %3515 = OpFAdd %float %3511 %3514
- %3518 = OpFMul %float %2838 %3371
- %3519 = OpFAdd %float %3515 %3518
- %3520 = OpExtInst %float %1 FMax %3519 %float_1_1920929en07
- %3533 = OpFMul %float %528 %3457
- %3536 = OpFMul %float %529 %3458
- %3537 = OpFAdd %float %3533 %3536
- %3540 = OpFMul %float %530 %3459
- %3541 = OpFAdd %float %3537 %3540
- %3542 = OpExtInst %float %1 FMax %3541 %float_1_1920929en07
- %3611 = OpFSub %float %float_1 %3542
- %3612 = OpExtInst %float %1 Pow %3611 %float_5
- %3613 = OpFMul %float %2970 %3612
- %3614 = OpFMul %float %2973 %3612
- %3615 = OpFMul %float %2976 %3612
- %3616 = OpCompositeConstruct %v3float %3613 %3614 %3615
- %3617 = OpFAdd %v3float %2948 %3616
- %3414 = OpFMul %float %758 %3520
- %3416 = OpFMul %float %759 %3520
- %3418 = OpFMul %float %760 %3520
- %3620 = OpCompositeExtract %float %3617 0
- %3621 = OpCompositeExtract %float %3617 1
- %3622 = OpCompositeExtract %float %3617 2
- %3623 = OpExtInst %float %1 FMax %3621 %3622
- %3624 = OpExtInst %float %1 FMax %3620 %3623
- %3625 = OpFSub %float %float_1 %3624
- %3626 = OpFMul %float %3625 %float_0_318309873
- %3627 = OpVectorTimesScalar %v3float %2775 %3626
- %3420 = OpCompositeConstruct %v3float %3414 %3416 %3418
- %3421 = OpFMul %v3float %3420 %3627
- %3637 = OpFMul %float %3476 %3476
- %3639 = OpFMul %float %3637 %3004
- %3640 = OpFAdd %float %3639 %float_1
- %3641 = OpFMul %float %float_3_14159274 %3640
- %3642 = OpFMul %float %3641 %3640
- %3643 = OpFDiv %float %3002 %3642
- %3652 = OpFMul %float %3520 %3017
- %3653 = OpFMul %float %3520 %3520
- %3655 = OpFMul %float %3653 %3014
- %3656 = OpFAdd %float %3655 %3002
- %3657 = OpExtInst %float %1 Sqrt %3656
- %3658 = OpFMul %float %2864 %3657
- %3659 = OpFAdd %float %3652 %3658
- %3660 = OpFOrdGreaterThan %bool %3659 %float_0
- OpSelectionMerge %3664 None
- OpBranchConditional %3660 %3661 %3663
- %3663 = OpLabel
- OpBranch %3664
- %3661 = OpLabel
- %3662 = OpFDiv %float %float_0_5 %3659
- OpBranch %3664
- %3664 = OpLabel
- %3665 = OpPhi %float %3662 %3661 %float_0 %3663
- %3632 = OpFMul %float %3643 %3665
- %3633 = OpVectorTimesScalar %v3float %3617 %3632
- %3430 = OpFMul %v3float %3420 %3633
- %3668 = OpCompositeExtract %v3float %730 0
- %3670 = OpFAdd %v3float %3668 %3421
- %3671 = OpCompositeExtract %v3float %730 1
- %3673 = OpFAdd %v3float %3671 %3430
- %3674 = OpCompositeConstruct %_struct_149 %3670 %3673
- %3694 = OpFNegate %float %3369
- %3696 = OpFNegate %float %3370
- %3698 = OpFNegate %float %3371
- %3701 = OpFMul %float %3694 %2831
- %3703 = OpFMul %float %3696 %2834
- %3704 = OpFAdd %float %3701 %3703
- %3706 = OpFMul %float %3698 %2838
- %3707 = OpFAdd %float %3704 %3706
- %3708 = OpFMul %float %3054 %3707
- %3709 = OpFMul %float %3056 %3707
- %3710 = OpFMul %float %3058 %3707
- %3712 = OpFAdd %float %3369 %3708
- %3714 = OpFAdd %float %3370 %3709
- %3716 = OpFAdd %float %3371 %3710
- %3717 = OpFMul %float %3712 %3712
- %3718 = OpFMul %float %3714 %3714
- %3719 = OpFAdd %float %3717 %3718
- %3720 = OpFMul %float %3716 %3716
- %3721 = OpFAdd %float %3719 %3720
- %3722 = OpExtInst %float %1 Sqrt %3721
- %3723 = OpFDiv %float %float_1 %3722
- %3724 = OpFMul %float %3712 %3723
- %3725 = OpFMul %float %3714 %3723
- %3726 = OpFMul %float %3716 %3723
- %3769 = OpFAdd %float %528 %3724
- %3772 = OpFAdd %float %529 %3725
- %3775 = OpFAdd %float %530 %3726
- %3776 = OpFMul %float %3769 %3769
- %3777 = OpFMul %float %3772 %3772
- %3778 = OpFAdd %float %3776 %3777
- %3779 = OpFMul %float %3775 %3775
- %3780 = OpFAdd %float %3778 %3779
- %3781 = OpExtInst %float %1 Sqrt %3780
- %3782 = OpFDiv %float %float_1 %3781
- %3783 = OpFMul %float %3769 %3782
- %3784 = OpFMul %float %3772 %3782
- %3785 = OpFMul %float %3775 %3782
- %3793 = OpFMul %float %2831 %3783
- %3796 = OpFMul %float %2834 %3784
- %3797 = OpFAdd %float %3793 %3796
- %3800 = OpFMul %float %2838 %3785
- %3801 = OpFAdd %float %3797 %3800
- %3802 = OpExtInst %float %1 FMax %3801 %float_1_1920929en07
- %3815 = OpFMul %float %528 %3783
- %3818 = OpFMul %float %529 %3784
- %3819 = OpFAdd %float %3815 %3818
- %3822 = OpFMul %float %530 %3785
- %3823 = OpFAdd %float %3819 %3822
- %3824 = OpExtInst %float %1 FMax %3823 %float_1_1920929en07
- %3859 = OpFMul %float %2831 %3724
- %3862 = OpFMul %float %2834 %3725
- %3863 = OpFAdd %float %3859 %3862
- %3866 = OpFMul %float %2838 %3726
- %3867 = OpFAdd %float %3863 %3866
- %3868 = OpExtInst %float %1 FMax %3867 %float_1_1920929en07
- %3878 = OpFMul %float %3802 %3802
- %3880 = OpFMul %float %3878 %3245
- %3881 = OpFAdd %float %3880 %float_1
- %3882 = OpFMul %float %float_3_14159274 %3881
- %3883 = OpFMul %float %3882 %3881
- %3884 = OpFDiv %float %3243 %3883
- %3893 = OpFMul %float %3868 %3258
- %3894 = OpFMul %float %3868 %3868
- %3896 = OpFMul %float %3894 %3255
- %3897 = OpFAdd %float %3896 %3243
- %3898 = OpExtInst %float %1 Sqrt %3897
- %3899 = OpFMul %float %2864 %3898
- %3900 = OpFAdd %float %3893 %3899
- %3901 = OpFOrdGreaterThan %bool %3900 %float_0
- OpSelectionMerge %3905 None
- OpBranchConditional %3901 %3902 %3904
- %3904 = OpLabel
- OpBranch %3905
- %3902 = OpLabel
- %3903 = OpFDiv %float %float_0_5 %3900
- OpBranch %3905
- %3905 = OpLabel
- %3906 = OpPhi %float %3903 %3902 %float_0 %3904
- %3969 = OpFSub %float %float_1 %3824
- %3970 = OpExtInst %float %1 Pow %3969 %float_5
- %3971 = OpFMul %float %2970 %3970
- %3972 = OpFMul %float %2973 %3970
- %3973 = OpFMul %float %2976 %3970
- %3974 = OpCompositeConstruct %v3float %3971 %3972 %3973
- %3975 = OpFAdd %v3float %2948 %3974
- %3738 = OpCompositeExtract %float %3975 0
- %3739 = OpFSub %float %float_1 %3738
- %3740 = OpCompositeExtract %float %3975 1
- %3741 = OpFSub %float %float_1 %3740
- %3742 = OpCompositeExtract %float %3975 2
- %3743 = OpFSub %float %float_1 %3742
- %3744 = OpFMul %float %3739 %3884
- %3745 = OpFMul %float %3741 %3884
- %3746 = OpFMul %float %3743 %3884
- %3747 = OpFMul %float %3744 %3906
- %3748 = OpFMul %float %3745 %3906
- %3749 = OpFMul %float %3746 %3906
- %3751 = OpCompositeConstruct %v3float %3747 %3748 %3749
- %3752 = OpFMul %v3float %3751 %683
- %771 = OpCompositeExtract %float %3752 0
- %772 = OpFMul %float %758 %771
- %773 = OpCompositeExtract %float %3752 1
- %774 = OpFMul %float %759 %773
- %775 = OpCompositeExtract %float %3752 2
- %776 = OpFMul %float %760 %775
- %777 = OpCompositeConstruct %v3float %772 %774 %776
- %729 = OpFAdd %v3float %728 %777
- %726 = OpIAdd %uint %725 %uint_1
- OpBranch %737
- %737 = OpLabel
- OpBranch %727
- %727 = OpLabel
- OpBranch %724
- %734 = OpLabel
+ %841 = OpFMul %float %840 %832
+ %842 = OpCompositeExtract %float %839 1
+ %843 = OpFMul %float %842 %832
+ %844 = OpCompositeExtract %float %839 3
+ %845 = OpFMul %float %844 %832
+ %846 = OpCompositeExtract %v4float %814 0 1
+ %847 = OpCompositeExtract %float %846 0
+ %848 = OpFMul %float %847 %835
+ %849 = OpFAdd %float %848 %841
+ %850 = OpCompositeExtract %float %846 1
+ %851 = OpFMul %float %850 %835
+ %852 = OpFAdd %float %851 %843
+ %853 = OpCompositeExtract %float %846 3
+ %854 = OpFMul %float %853 %835
+ %855 = OpFAdd %float %854 %845
+ %856 = OpCompositeExtract %v4float %814 0 2
+ %857 = OpCompositeExtract %float %856 0
+ %858 = OpFMul %float %857 %838
+ %859 = OpFAdd %float %858 %849
+ %860 = OpCompositeExtract %float %856 1
+ %861 = OpFMul %float %860 %838
+ %862 = OpFAdd %float %861 %852
+ %863 = OpCompositeExtract %float %856 3
+ %864 = OpFMul %float %863 %838
+ %865 = OpFAdd %float %864 %855
+ %866 = OpCompositeExtract %v4float %814 0 3
+ %867 = OpCompositeExtract %float %866 0
+ %869 = OpFAdd %float %867 %859
+ %870 = OpCompositeExtract %float %866 1
+ %872 = OpFAdd %float %870 %862
+ %873 = OpCompositeExtract %float %866 3
+ %875 = OpFAdd %float %873 %865
+ %876 = OpFDiv %float %869 %875
+ %877 = OpFDiv %float %872 %875
+ %878 = OpFAdd %float %876 %float_1
+ %879 = OpFAdd %float %877 %float_1
+ %880 = OpFMul %float %878 %float_0_5
+ %881 = OpFMul %float %879 %float_0_5
+ %882 = OpCompositeConstruct %v2float %880 %881
+ %883 = OpConvertUToF %float %817
+ %884 = OpExtInst %float %1 Log2 %883
+ %4137 = OpFMul %float %655 %3203
+ %886 = OpFMul %float %884 %4137
+ %887 = OpLoad %240 %160
+ %4144 = OpLoad %238 %161
+ %4145 = OpSampledImage %303 %4144 %887
+ %4146 = OpImageSampleExplicitLod %v4float %4145 %882 Lod %886
+ %889 = OpCompositeExtract %float %4146 0
+ %890 = OpCompositeExtract %float %4146 1
+ %891 = OpCompositeExtract %float %4146 2
+ %892 = OpCompositeConstruct %v3float %889 %890 %891
+ %4149 = OpFOrdEqual %bool %819 %float_0x1p_128
+ OpSelectionMerge %4173 None
+ OpBranchConditional %4149 %4150 %4151
+ %4151 = OpLabel
+ %4183 = OpExtInst %v3float %1 Log %821
+ %4153 = OpCompositeExtract %float %4183 0
+ %4154 = OpFNegate %float %4153
+ %4155 = OpCompositeExtract %float %4183 1
+ %4156 = OpFNegate %float %4155
+ %4157 = OpCompositeExtract %float %4183 2
+ %4158 = OpFNegate %float %4157
+ %4159 = OpFDiv %float %4154 %819
+ %4160 = OpFDiv %float %4156 %819
+ %4161 = OpFDiv %float %4158 %819
+ %4162 = OpFNegate %float %4159
+ %4163 = OpFNegate %float %4160
+ %4164 = OpFNegate %float %4161
+ %4165 = OpFMul %float %4162 %4069
+ %4166 = OpFMul %float %4163 %4069
+ %4167 = OpFMul %float %4164 %4069
+ %4168 = OpExtInst %float %1 Exp %4165
+ %4169 = OpExtInst %float %1 Exp %4166
+ %4170 = OpExtInst %float %1 Exp %4167
+ %4171 = OpCompositeConstruct %v3float %4168 %4169 %4170
+ %4172 = OpFMul %v3float %4171 %892
+ OpBranch %4173
+ %4150 = OpLabel
+ OpBranch %4173
+ %4173 = OpLabel
+ %4174 = OpPhi %v3float %892 %4150 %4172 %4151
+ %905 = OpCompositeConstruct %v2float %2938 %655
+ %906 = OpAccessChain %_ptr_PushConstant_uint %155 %uint_0 %uint_6
+ %907 = OpLoad %uint %906
+ %908 = OpAccessChain %_ptr_UniformConstant_238 %157 %907
+ %4186 = OpLoad %238 %908
+ %4187 = OpSampledImage %303 %4186 %887
+ %4188 = OpImageSampleImplicitLod %v4float %4187 %905
+ %911 = OpCompositeExtract %float %4188 0
+ %912 = OpCompositeExtract %float %4188 1
+ %916 = OpFMul %float %3020 %911
+ %918 = OpFMul %float %3021 %911
+ %920 = OpFMul %float %3022 %911
+ %922 = OpFMul %float %3037 %912
+ %927 = OpFAdd %float %916 %922
+ %928 = OpFAdd %float %918 %922
+ %929 = OpFAdd %float %920 %922
+ %930 = OpFSub %float %float_1 %927
+ %931 = OpFSub %float %float_1 %928
+ %932 = OpFSub %float %float_1 %929
+ %933 = OpCompositeExtract %float %4174 0
+ %934 = OpFMul %float %930 %933
+ %935 = OpCompositeExtract %float %4174 1
+ %936 = OpFMul %float %931 %935
+ %937 = OpCompositeExtract %float %4174 2
+ %938 = OpFMul %float %932 %937
+ %940 = OpFMul %float %934 %697
+ %942 = OpFMul %float %936 %698
+ %944 = OpFMul %float %938 %699
+ %945 = OpCompositeExtract %float %745 0
+ %946 = OpFAdd %float %945 %940
+ %947 = OpCompositeExtract %float %745 1
+ %948 = OpFAdd %float %947 %942
+ %949 = OpCompositeExtract %float %745 2
+ %950 = OpFAdd %float %949 %944
+ %951 = OpFMul %float %525 %946
+ %952 = OpFMul %float %525 %948
+ %953 = OpFMul %float %525 %950
+ %954 = OpCompositeExtract %v3float %747 0
+ %955 = OpCompositeExtract %float %954 0
+ %956 = OpFSub %float %951 %955
+ %957 = OpCompositeExtract %float %954 1
+ %958 = OpFSub %float %952 %957
+ %959 = OpCompositeExtract %float %954 2
+ %960 = OpFSub %float %953 %959
+ %961 = OpFMul %float %956 %525
+ %962 = OpFMul %float %958 %525
+ %963 = OpFMul %float %960 %525
+ %965 = OpFAdd %float %955 %961
+ %967 = OpFAdd %float %957 %962
+ %969 = OpFAdd %float %959 %963
+ %970 = OpCompositeExtract %v3float %747 1
+ %971 = OpCompositeExtract %float %970 0
+ %972 = OpFAdd %float %965 %971
+ %973 = OpCompositeExtract %float %970 1
+ %974 = OpFAdd %float %967 %973
+ %975 = OpCompositeExtract %float %970 2
+ %976 = OpFAdd %float %969 %975
+ %977 = OpCompositeExtract %float %725 0
+ %978 = OpFAdd %float %972 %977
+ %979 = OpCompositeExtract %float %725 1
+ %980 = OpFAdd %float %974 %979
+ %981 = OpCompositeExtract %float %725 2
+ %982 = OpFAdd %float %976 %981
+ %983 = OpCompositeConstruct %v4float %978 %980 %982 %float_1
+ OpStore %4 %983
+ OpBranch %751
+ %755 = OpLabel
+ %758 = OpAccessChain %_ptr_StorageBuffer_v3float %156 %uint_0 %742 %uint_0
+ %759 = OpLoad %v3float %758
+ %3429 = OpCompositeExtract %float %759 0
+ %3431 = OpFSub %float %3429 %530
+ %3432 = OpCompositeExtract %float %759 1
+ %3434 = OpFSub %float %3432 %533
+ %3435 = OpCompositeExtract %float %759 2
+ %3437 = OpFSub %float %3435 %536
+ %3438 = OpFMul %float %3431 %3431
+ %3439 = OpFMul %float %3434 %3434
+ %3440 = OpFAdd %float %3438 %3439
+ %3441 = OpFMul %float %3437 %3437
+ %3442 = OpFAdd %float %3440 %3441
+ %3443 = OpExtInst %float %1 Sqrt %3442
+ %3444 = OpFDiv %float %3431 %3443
+ %3445 = OpFDiv %float %3434 %3443
+ %3446 = OpFDiv %float %3437 %3443
+ %3448 = OpFDiv %float %float_1 %3442
+ %764 = OpAccessChain %_ptr_StorageBuffer_v4float %156 %uint_0 %742 %uint_1
+ %765 = OpLoad %v4float %764
+ %766 = OpCompositeExtract %float %765 0
+ %767 = OpCompositeExtract %float %765 1
+ %768 = OpCompositeExtract %float %765 2
+ %770 = OpAccessChain %_ptr_StorageBuffer_float %156 %uint_0 %742 %uint_1 %uint_3
+ %771 = OpLoad %float %770
+ %772 = OpFMul %float %766 %771
+ %773 = OpFMul %float %767 %771
+ %774 = OpFMul %float %768 %771
+ %775 = OpFMul %float %772 %3448
+ %776 = OpFMul %float %773 %3448
+ %777 = OpFMul %float %774 %3448
+ %3518 = OpFAdd %float %545 %3444
+ %3521 = OpFAdd %float %546 %3445
+ %3524 = OpFAdd %float %547 %3446
+ %3525 = OpFMul %float %3518 %3518
+ %3526 = OpFMul %float %3521 %3521
+ %3527 = OpFAdd %float %3525 %3526
+ %3528 = OpFMul %float %3524 %3524
+ %3529 = OpFAdd %float %3527 %3528
+ %3530 = OpExtInst %float %1 Sqrt %3529
+ %3531 = OpFDiv %float %float_1 %3530
+ %3532 = OpFMul %float %3518 %3531
+ %3533 = OpFMul %float %3521 %3531
+ %3534 = OpFMul %float %3524 %3531
+ %3542 = OpFMul %float %2906 %3532
+ %3545 = OpFMul %float %2909 %3533
+ %3546 = OpFAdd %float %3542 %3545
+ %3549 = OpFMul %float %2913 %3534
+ %3550 = OpFAdd %float %3546 %3549
+ %3551 = OpExtInst %float %1 FMax %3550 %float_1_1920929en07
+ %3586 = OpFMul %float %2906 %3444
+ %3589 = OpFMul %float %2909 %3445
+ %3590 = OpFAdd %float %3586 %3589
+ %3593 = OpFMul %float %2913 %3446
+ %3594 = OpFAdd %float %3590 %3593
+ %3595 = OpExtInst %float %1 FMax %3594 %float_1_1920929en07
+ %3608 = OpFMul %float %545 %3532
+ %3611 = OpFMul %float %546 %3533
+ %3612 = OpFAdd %float %3608 %3611
+ %3615 = OpFMul %float %547 %3534
+ %3616 = OpFAdd %float %3612 %3615
+ %3617 = OpExtInst %float %1 FMax %3616 %float_1_1920929en07
+ %3686 = OpFSub %float %float_1 %3617
+ %3687 = OpExtInst %float %1 Pow %3686 %float_5
+ %3688 = OpFMul %float %3045 %3687
+ %3689 = OpFMul %float %3048 %3687
+ %3690 = OpFMul %float %3051 %3687
+ %3691 = OpCompositeConstruct %v3float %3688 %3689 %3690
+ %3692 = OpFAdd %v3float %3023 %3691
+ %3489 = OpFMul %float %775 %3595
+ %3491 = OpFMul %float %776 %3595
+ %3493 = OpFMul %float %777 %3595
+ %3695 = OpCompositeExtract %float %3692 0
+ %3696 = OpCompositeExtract %float %3692 1
+ %3697 = OpCompositeExtract %float %3692 2
+ %3698 = OpExtInst %float %1 FMax %3696 %3697
+ %3699 = OpExtInst %float %1 FMax %3695 %3698
+ %3700 = OpFSub %float %float_1 %3699
+ %3701 = OpFMul %float %3700 %float_0_318309873
+ %3702 = OpVectorTimesScalar %v3float %2850 %3701
+ %3495 = OpCompositeConstruct %v3float %3489 %3491 %3493
+ %3496 = OpFMul %v3float %3495 %3702
+ %3712 = OpFMul %float %3551 %3551
+ %3714 = OpFMul %float %3712 %3079
+ %3715 = OpFAdd %float %3714 %float_1
+ %3716 = OpFMul %float %float_3_14159274 %3715
+ %3717 = OpFMul %float %3716 %3715
+ %3718 = OpFDiv %float %3077 %3717
+ %3727 = OpFMul %float %3595 %3092
+ %3728 = OpFMul %float %3595 %3595
+ %3730 = OpFMul %float %3728 %3089
+ %3731 = OpFAdd %float %3730 %3077
+ %3732 = OpExtInst %float %1 Sqrt %3731
+ %3733 = OpFMul %float %2939 %3732
+ %3734 = OpFAdd %float %3727 %3733
+ %3735 = OpFOrdGreaterThan %bool %3734 %float_0
+ OpSelectionMerge %3739 None
+ OpBranchConditional %3735 %3736 %3738
+ %3738 = OpLabel
+ OpBranch %3739
+ %3736 = OpLabel
+ %3737 = OpFDiv %float %float_0_5 %3734
+ OpBranch %3739
+ %3739 = OpLabel
+ %3740 = OpPhi %float %3737 %3736 %float_0 %3738
+ %3707 = OpFMul %float %3718 %3740
+ %3708 = OpVectorTimesScalar %v3float %3692 %3707
+ %3505 = OpFMul %v3float %3495 %3708
+ %3743 = OpCompositeExtract %v3float %747 0
+ %3745 = OpFAdd %v3float %3743 %3496
+ %3746 = OpCompositeExtract %v3float %747 1
+ %3748 = OpFAdd %v3float %3746 %3505
+ %3749 = OpCompositeConstruct %_struct_154 %3745 %3748
+ %3769 = OpFNegate %float %3444
+ %3771 = OpFNegate %float %3445
+ %3773 = OpFNegate %float %3446
+ %3776 = OpFMul %float %3769 %2906
+ %3778 = OpFMul %float %3771 %2909
+ %3779 = OpFAdd %float %3776 %3778
+ %3781 = OpFMul %float %3773 %2913
+ %3782 = OpFAdd %float %3779 %3781
+ %3783 = OpFMul %float %3129 %3782
+ %3784 = OpFMul %float %3131 %3782
+ %3785 = OpFMul %float %3133 %3782
+ %3787 = OpFAdd %float %3444 %3783
+ %3789 = OpFAdd %float %3445 %3784
+ %3791 = OpFAdd %float %3446 %3785
+ %3792 = OpFMul %float %3787 %3787
+ %3793 = OpFMul %float %3789 %3789
+ %3794 = OpFAdd %float %3792 %3793
+ %3795 = OpFMul %float %3791 %3791
+ %3796 = OpFAdd %float %3794 %3795
+ %3797 = OpExtInst %float %1 Sqrt %3796
+ %3798 = OpFDiv %float %float_1 %3797
+ %3799 = OpFMul %float %3787 %3798
+ %3800 = OpFMul %float %3789 %3798
+ %3801 = OpFMul %float %3791 %3798
+ %3844 = OpFAdd %float %545 %3799
+ %3847 = OpFAdd %float %546 %3800
+ %3850 = OpFAdd %float %547 %3801
+ %3851 = OpFMul %float %3844 %3844
+ %3852 = OpFMul %float %3847 %3847
+ %3853 = OpFAdd %float %3851 %3852
+ %3854 = OpFMul %float %3850 %3850
+ %3855 = OpFAdd %float %3853 %3854
+ %3856 = OpExtInst %float %1 Sqrt %3855
+ %3857 = OpFDiv %float %float_1 %3856
+ %3858 = OpFMul %float %3844 %3857
+ %3859 = OpFMul %float %3847 %3857
+ %3860 = OpFMul %float %3850 %3857
+ %3868 = OpFMul %float %2906 %3858
+ %3871 = OpFMul %float %2909 %3859
+ %3872 = OpFAdd %float %3868 %3871
+ %3875 = OpFMul %float %2913 %3860
+ %3876 = OpFAdd %float %3872 %3875
+ %3877 = OpExtInst %float %1 FMax %3876 %float_1_1920929en07
+ %3890 = OpFMul %float %545 %3858
+ %3893 = OpFMul %float %546 %3859
+ %3894 = OpFAdd %float %3890 %3893
+ %3897 = OpFMul %float %547 %3860
+ %3898 = OpFAdd %float %3894 %3897
+ %3899 = OpExtInst %float %1 FMax %3898 %float_1_1920929en07
+ %3934 = OpFMul %float %2906 %3799
+ %3937 = OpFMul %float %2909 %3800
+ %3938 = OpFAdd %float %3934 %3937
+ %3941 = OpFMul %float %2913 %3801
+ %3942 = OpFAdd %float %3938 %3941
+ %3943 = OpExtInst %float %1 FMax %3942 %float_1_1920929en07
+ %3953 = OpFMul %float %3877 %3877
+ %3955 = OpFMul %float %3953 %3320
+ %3956 = OpFAdd %float %3955 %float_1
+ %3957 = OpFMul %float %float_3_14159274 %3956
+ %3958 = OpFMul %float %3957 %3956
+ %3959 = OpFDiv %float %3318 %3958
+ %3968 = OpFMul %float %3943 %3333
+ %3969 = OpFMul %float %3943 %3943
+ %3971 = OpFMul %float %3969 %3330
+ %3972 = OpFAdd %float %3971 %3318
+ %3973 = OpExtInst %float %1 Sqrt %3972
+ %3974 = OpFMul %float %2939 %3973
+ %3975 = OpFAdd %float %3968 %3974
+ %3976 = OpFOrdGreaterThan %bool %3975 %float_0
+ OpSelectionMerge %3980 None
+ OpBranchConditional %3976 %3977 %3979
+ %3979 = OpLabel
+ OpBranch %3980
+ %3977 = OpLabel
+ %3978 = OpFDiv %float %float_0_5 %3975
+ OpBranch %3980
+ %3980 = OpLabel
+ %3981 = OpPhi %float %3978 %3977 %float_0 %3979
+ %4044 = OpFSub %float %float_1 %3899
+ %4045 = OpExtInst %float %1 Pow %4044 %float_5
+ %4046 = OpFMul %float %3045 %4045
+ %4047 = OpFMul %float %3048 %4045
+ %4048 = OpFMul %float %3051 %4045
+ %4049 = OpCompositeConstruct %v3float %4046 %4047 %4048
+ %4050 = OpFAdd %v3float %3023 %4049
+ %3813 = OpCompositeExtract %float %4050 0
+ %3814 = OpFSub %float %float_1 %3813
+ %3815 = OpCompositeExtract %float %4050 1
+ %3816 = OpFSub %float %float_1 %3815
+ %3817 = OpCompositeExtract %float %4050 2
+ %3818 = OpFSub %float %float_1 %3817
+ %3819 = OpFMul %float %3814 %3959
+ %3820 = OpFMul %float %3816 %3959
+ %3821 = OpFMul %float %3818 %3959
+ %3822 = OpFMul %float %3819 %3981
+ %3823 = OpFMul %float %3820 %3981
+ %3824 = OpFMul %float %3821 %3981
+ %3826 = OpCompositeConstruct %v3float %3822 %3823 %3824
+ %3827 = OpFMul %v3float %3826 %700
+ %788 = OpCompositeExtract %float %3827 0
+ %789 = OpFMul %float %775 %788
+ %790 = OpCompositeExtract %float %3827 1
+ %791 = OpFMul %float %776 %790
+ %792 = OpCompositeExtract %float %3827 2
+ %793 = OpFMul %float %777 %792
+ %794 = OpCompositeConstruct %v3float %789 %791 %793
+ %746 = OpFAdd %v3float %745 %794
+ %743 = OpIAdd %uint %742 %uint_1
+ OpBranch %754
+ %754 = OpLabel
+ OpBranch %744
+ %744 = OpLabel
+ OpBranch %741
+ %751 = OpLabel
OpReturn
OpFunctionEnd
- ; Function 9
- %9 = OpFunction %void None %308
- %967 = OpLabel
- %968 = OpLoad %v3float %3
- %969 = OpLoad %v3float %4
- %970 = OpLoad %v2float %5
- %971 = OpLoad %uint %6
- %974 = OpArrayLength %uint %151 0
- %978 = OpLoad %238 %153
- %979 = OpAccessChain %_ptr_StorageBuffer_v4float %154 %uint_0 %971 %uint_0
- %980 = OpLoad %v4float %979
- %982 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_0
- %983 = OpLoad %int %982
- %984 = OpIEqual %bool %983 %int_n1
- OpSelectionMerge %985 None
- OpBranchConditional %984 %986 %987
- %987 = OpLabel
- %990 = OpLoad %int %982
- %991 = OpBitcast %uint %990
- %992 = OpAccessChain %_ptr_UniformConstant_236 %152 %991
- %4167 = OpLoad %236 %992
- %4168 = OpSampledImage %298 %4167 %978
- %4169 = OpImageSampleImplicitLod %v4float %4168 %970
- %994 = OpFMul %v4float %980 %4169
- OpBranch %985
- %986 = OpLabel
- OpBranch %985
- %985 = OpLabel
- %995 = OpPhi %v4float %980 %986 %994 %987
- %996 = OpAccessChain %_ptr_PushConstant_v3float %150 %uint_0 %uint_1
- %997 = OpLoad %v3float %996
- %999 = OpCompositeExtract %float %997 0
- %1000 = OpCompositeExtract %float %968 0
- %1001 = OpFSub %float %999 %1000
- %1002 = OpCompositeExtract %float %997 1
- %1003 = OpCompositeExtract %float %968 1
- %1004 = OpFSub %float %1002 %1003
- %1005 = OpCompositeExtract %float %997 2
- %1006 = OpCompositeExtract %float %968 2
- %1007 = OpFSub %float %1005 %1006
- %1008 = OpFMul %float %1001 %1001
- %1009 = OpFMul %float %1004 %1004
- %1010 = OpFAdd %float %1008 %1009
- %1011 = OpFMul %float %1007 %1007
- %1012 = OpFAdd %float %1010 %1011
- %1013 = OpExtInst %float %1 Sqrt %1012
- %1014 = OpFDiv %float %float_1 %1013
- %1015 = OpFMul %float %1001 %1014
- %1016 = OpFMul %float %1004 %1014
- %1017 = OpFMul %float %1007 %1014
- %1019 = OpCompositeExtract %float %969 0
- %1021 = OpFMul %float %1019 %1019
- %1022 = OpCompositeExtract %float %969 1
- %1024 = OpFMul %float %1022 %1022
- %1025 = OpFAdd %float %1021 %1024
- %1026 = OpCompositeExtract %float %969 2
- %1028 = OpFMul %float %1026 %1026
- %1029 = OpFAdd %float %1025 %1028
+ ; Function 11
+ %11 = OpFunction %void None %288
+ %984 = OpLabel
+ %985 = OpLoad %v3float %6
+ %986 = OpLoad %v3float %7
+ %987 = OpLoad %v2float %8
+ %988 = OpLoad %uint %9
+ %991 = OpArrayLength %uint %156 0
+ %995 = OpLoad %240 %140
+ %996 = OpAccessChain %_ptr_StorageBuffer_v4float %158 %uint_0 %988 %uint_0
+ %997 = OpLoad %v4float %996
+ %999 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_0
+ %1000 = OpLoad %int %999
+ %1001 = OpIEqual %bool %1000 %int_n1
+ OpSelectionMerge %1002 None
+ OpBranchConditional %1001 %1003 %1004
+ %1004 = OpLabel
+ %1007 = OpLoad %int %999
+ %1008 = OpBitcast %uint %1007
+ %1009 = OpAccessChain %_ptr_UniformConstant_238 %157 %1008
+ %4242 = OpLoad %238 %1009
+ %4243 = OpSampledImage %303 %4242 %995
+ %4244 = OpImageSampleImplicitLod %v4float %4243 %987
+ %1011 = OpFMul %v4float %997 %4244
+ OpBranch %1002
+ %1003 = OpLabel
+ OpBranch %1002
+ %1002 = OpLabel
+ %1012 = OpPhi %v4float %997 %1003 %1011 %1004
+ %1013 = OpAccessChain %_ptr_PushConstant_v3float %155 %uint_0 %uint_1
+ %1014 = OpLoad %v3float %1013
+ %1016 = OpCompositeExtract %float %1014 0
+ %1017 = OpCompositeExtract %float %985 0
+ %1018 = OpFSub %float %1016 %1017
+ %1019 = OpCompositeExtract %float %1014 1
+ %1020 = OpCompositeExtract %float %985 1
+ %1021 = OpFSub %float %1019 %1020
+ %1022 = OpCompositeExtract %float %1014 2
+ %1023 = OpCompositeExtract %float %985 2
+ %1024 = OpFSub %float %1022 %1023
+ %1025 = OpFMul %float %1018 %1018
+ %1026 = OpFMul %float %1021 %1021
+ %1027 = OpFAdd %float %1025 %1026
+ %1028 = OpFMul %float %1024 %1024
+ %1029 = OpFAdd %float %1027 %1028
%1030 = OpExtInst %float %1 Sqrt %1029
%1031 = OpFDiv %float %float_1 %1030
- %1032 = OpVectorTimesScalar %v3float %969 %1031
- %1034 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_2
- %1035 = OpLoad %int %1034
- %1036 = OpIEqual %bool %1035 %int_n1
- OpSelectionMerge %1037 None
- OpBranchConditional %1036 %1038 %1039
- %1039 = OpLabel
- %1042 = OpLoad %int %1034
- %1043 = OpBitcast %uint %1042
- %1044 = OpAccessChain %_ptr_UniformConstant_236 %152 %1043
- %4178 = OpLoad %236 %1044
- %4179 = OpSampledImage %298 %4178 %978
- %4180 = OpImageSampleImplicitLod %v4float %4179 %970
- %1046 = OpCompositeExtract %float %4180 0
- %1047 = OpCompositeExtract %float %4180 1
- %1048 = OpCompositeExtract %float %4180 2
- %1052 = OpFMul %float %1046 %float_2_00787401
- %1053 = OpFMul %float %1047 %float_2_00787401
- %1054 = OpFMul %float %1048 %float_2_00787401
- %1055 = OpCompositeConstruct %v3float %1052 %1053 %1054
- %4184 = OpFSub %v3float %1055 %5462
- %1057 = OpFNegate %float %1001
- %1058 = OpFNegate %float %1004
- %1059 = OpFNegate %float %1007
- %1060 = OpCompositeConstruct %v3float %1057 %1058 %1059
- %4280 = OpDPdx %v3float %1060
- %4283 = OpDPdy %v3float %1060
- %4286 = OpDPdx %v2float %970
- %4289 = OpDPdy %v2float %970
- %4191 = OpCompositeExtract %float %4283 1
- %4192 = OpCompositeExtract %float %1032 2
- %4193 = OpFMul %float %4191 %4192
- %4194 = OpCompositeExtract %float %1032 1
- %4195 = OpCompositeExtract %float %4283 2
- %4196 = OpFMul %float %4194 %4195
- %4197 = OpFSub %float %4193 %4196
- %4199 = OpCompositeExtract %float %1032 0
- %4200 = OpFMul %float %4195 %4199
- %4202 = OpCompositeExtract %float %4283 0
- %4203 = OpFMul %float %4192 %4202
- %4204 = OpFSub %float %4200 %4203
- %4207 = OpFMul %float %4202 %4194
- %4210 = OpFMul %float %4199 %4191
- %4211 = OpFSub %float %4207 %4210
- %4213 = OpCompositeExtract %float %4280 2
- %4214 = OpFMul %float %4194 %4213
- %4215 = OpCompositeExtract %float %4280 1
- %4217 = OpFMul %float %4215 %4192
- %4218 = OpFSub %float %4214 %4217
- %4220 = OpCompositeExtract %float %4280 0
- %4221 = OpFMul %float %4192 %4220
- %4224 = OpFMul %float %4213 %4199
- %4225 = OpFSub %float %4221 %4224
- %4228 = OpFMul %float %4199 %4215
- %4231 = OpFMul %float %4220 %4194
- %4232 = OpFSub %float %4228 %4231
- %4233 = OpCompositeExtract %float %4286 0
- %4234 = OpFMul %float %4197 %4233
- %4235 = OpFMul %float %4204 %4233
- %4236 = OpFMul %float %4211 %4233
- %4237 = OpCompositeExtract %float %4289 0
- %4238 = OpFMul %float %4218 %4237
- %4239 = OpFMul %float %4225 %4237
- %4240 = OpFMul %float %4232 %4237
- %4241 = OpFAdd %float %4234 %4238
- %4242 = OpFAdd %float %4235 %4239
- %4243 = OpFAdd %float %4236 %4240
- %4244 = OpCompositeExtract %float %4286 1
- %4245 = OpFMul %float %4197 %4244
- %4246 = OpFMul %float %4204 %4244
- %4247 = OpFMul %float %4211 %4244
- %4248 = OpCompositeExtract %float %4289 1
- %4249 = OpFMul %float %4218 %4248
- %4250 = OpFMul %float %4225 %4248
- %4251 = OpFMul %float %4232 %4248
- %4252 = OpFAdd %float %4245 %4249
- %4253 = OpFAdd %float %4246 %4250
- %4254 = OpFAdd %float %4247 %4251
- %4255 = OpFMul %float %4241 %4241
- %4256 = OpFMul %float %4242 %4242
- %4257 = OpFAdd %float %4255 %4256
- %4258 = OpFMul %float %4243 %4243
- %4259 = OpFAdd %float %4257 %4258
- %4260 = OpFMul %float %4252 %4252
- %4261 = OpFMul %float %4253 %4253
- %4262 = OpFAdd %float %4260 %4261
- %4263 = OpFMul %float %4254 %4254
- %4264 = OpFAdd %float %4262 %4263
- %4265 = OpExtInst %float %1 FMax %4259 %4264
- %4266 = OpExtInst %float %1 Sqrt %4265
- %4267 = OpFDiv %float %float_1 %4266
- %4268 = OpFMul %float %4241 %4267
- %4269 = OpFMul %float %4242 %4267
- %4270 = OpFMul %float %4243 %4267
- %4272 = OpFMul %float %4252 %4267
- %4273 = OpFMul %float %4253 %4267
- %4274 = OpFMul %float %4254 %4267
- %1063 = OpCompositeExtract %float %4184 0
- %1065 = OpFMul %float %4268 %1063
- %1067 = OpFMul %float %4269 %1063
- %1069 = OpFMul %float %4270 %1063
- %1071 = OpCompositeExtract %float %4184 1
- %1073 = OpFMul %float %4272 %1071
- %1075 = OpFMul %float %4273 %1071
- %1077 = OpFMul %float %4274 %1071
- %1078 = OpFAdd %float %1073 %1065
- %1079 = OpFAdd %float %1075 %1067
- %1080 = OpFAdd %float %1077 %1069
- %1082 = OpCompositeExtract %float %4184 2
- %1084 = OpFMul %float %4199 %1082
- %1086 = OpFMul %float %4194 %1082
- %1088 = OpFMul %float %4192 %1082
- %1089 = OpFAdd %float %1084 %1078
- %1090 = OpFAdd %float %1086 %1079
- %1091 = OpFAdd %float %1088 %1080
- %1092 = OpFMul %float %1089 %1089
- %1093 = OpFMul %float %1090 %1090
- %1094 = OpFAdd %float %1092 %1093
- %1095 = OpFMul %float %1091 %1091
- %1096 = OpFAdd %float %1094 %1095
- %1097 = OpExtInst %float %1 Sqrt %1096
- %1098 = OpFDiv %float %float_1 %1097
- %1099 = OpFMul %float %1089 %1098
- %1100 = OpFMul %float %1090 %1098
- %1101 = OpFMul %float %1091 %1098
- %1102 = OpCompositeConstruct %v3float %1099 %1100 %1101
- OpBranch %1037
- %1038 = OpLabel
- OpBranch %1037
- %1037 = OpLabel
- %1103 = OpPhi %v3float %1032 %1038 %1102 %1039
- %1104 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %971 %uint_5
- %1105 = OpLoad %float %1104
- %1106 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %971 %uint_6
- %1107 = OpLoad %float %1106
- %1109 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_1
- %1110 = OpLoad %int %1109
- %1111 = OpIEqual %bool %1110 %int_n1
- OpSelectionMerge %1112 None
- OpBranchConditional %1111 %1113 %1114
- %1114 = OpLabel
- %1117 = OpLoad %int %1109
- %1118 = OpBitcast %uint %1117
- %1119 = OpAccessChain %_ptr_UniformConstant_236 %152 %1118
- %4292 = OpLoad %236 %1119
- %4293 = OpSampledImage %298 %4292 %978
- %4294 = OpImageSampleImplicitLod %v4float %4293 %970
- %1121 = OpCompositeExtract %float %4294 2
- %1122 = OpFMul %float %1105 %1121
- %1123 = OpCompositeExtract %float %4294 1
- %1124 = OpFMul %float %1107 %1123
- OpBranch %1112
- %1113 = OpLabel
- OpBranch %1112
- %1112 = OpLabel
- %1125 = OpPhi %float %1107 %1113 %1124 %1114
- %1126 = OpPhi %float %1105 %1113 %1122 %1114
- %1127 = OpAccessChain %_ptr_StorageBuffer_v3float %154 %uint_0 %971 %uint_3
- %1128 = OpLoad %v3float %1127
- %1131 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_8
- %1132 = OpLoad %int %1131
- %1133 = OpIEqual %bool %1132 %int_n1
- OpSelectionMerge %1134 None
- OpBranchConditional %1133 %1135 %1136
- %1136 = OpLabel
- %1139 = OpLoad %int %1131
- %1140 = OpBitcast %uint %1139
- %1141 = OpAccessChain %_ptr_UniformConstant_236 %152 %1140
- %4303 = OpLoad %236 %1141
- %4304 = OpSampledImage %298 %4303 %978
- %4305 = OpImageSampleImplicitLod %v4float %4304 %970
- %1143 = OpCompositeExtract %float %4305 0
- %1144 = OpCompositeExtract %float %4305 1
- %1145 = OpCompositeExtract %float %4305 2
- %1146 = OpCompositeConstruct %v3float %1143 %1144 %1145
- %1147 = OpFMul %v3float %1128 %1146
- OpBranch %1134
- %1135 = OpLabel
- OpBranch %1134
- %1134 = OpLabel
- %1148 = OpPhi %v3float %1128 %1135 %1147 %1136
- %1149 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %971 %uint_14
- %1150 = OpLoad %float %1149
- %1152 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_7
- %1153 = OpLoad %int %1152
- %1154 = OpIEqual %bool %1153 %int_n1
- OpSelectionMerge %1155 None
- OpBranchConditional %1154 %1156 %1157
- %1157 = OpLabel
- %1160 = OpLoad %int %1152
- %1161 = OpBitcast %uint %1160
- %1162 = OpAccessChain %_ptr_UniformConstant_236 %152 %1161
- %4308 = OpLoad %236 %1162
- %4309 = OpSampledImage %298 %4308 %978
- %4310 = OpImageSampleImplicitLod %v4float %4309 %970
- %1164 = OpCompositeExtract %float %4310 3
- %1165 = OpFMul %float %1150 %1164
- OpBranch %1155
- %1156 = OpLabel
- OpBranch %1155
- %1155 = OpLabel
- %1166 = OpPhi %float %1150 %1156 %1165 %1157
- %1167 = OpCompositeExtract %float %995 0
- %1168 = OpCompositeExtract %float %995 1
- %1169 = OpCompositeExtract %float %995 2
- %1170 = OpCompositeConstruct %v3float %1167 %1168 %1169
- %1171 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %971 %uint_10
- %1172 = OpLoad %float %1171
- %1174 = OpAccessChain %_ptr_StorageBuffer_v3float %154 %uint_0 %971 %uint_1
- %1175 = OpLoad %v3float %1174
- %1178 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %971 %uint_4 %uint_3
- %1179 = OpLoad %int %1178
- %1180 = OpIEqual %bool %1179 %int_n1
- OpSelectionMerge %1181 None
- OpBranchConditional %1180 %1182 %1183
- %1183 = OpLabel
- %1186 = OpLoad %int %1178
- %1187 = OpBitcast %uint %1186
- %1188 = OpAccessChain %_ptr_UniformConstant_236 %152 %1187
- %4319 = OpLoad %236 %1188
- %4320 = OpSampledImage %298 %4319 %978
- %4321 = OpImageSampleImplicitLod %v4float %4320 %970
- %1190 = OpCompositeExtract %float %4321 0
- %1191 = OpCompositeExtract %float %4321 1
- %1192 = OpCompositeExtract %float %4321 2
- %1193 = OpCompositeConstruct %v3float %1190 %1191 %1192
- %1194 = OpFMul %v3float %1175 %1193
- OpBranch %1181
- %1182 = OpLabel
- OpBranch %1181
- %1181 = OpLabel
- %1195 = OpPhi %v3float %1175 %1182 %1194 %1183
- %1196 = OpAccessChain %_ptr_Uniform_v3float %155 %uint_0 %uint_0
- %1197 = OpLoad %v3float %1196
- %1199 = OpAccessChain %_ptr_Uniform_v3float %155 %uint_0 %uint_1
- %1200 = OpLoad %v3float %1199
- %4392 = OpFMul %float %1125 %1125
- %4398 = OpCompositeExtract %float %1197 0
- %4399 = OpFAdd %float %1015 %4398
- %4401 = OpCompositeExtract %float %1197 1
- %4402 = OpFAdd %float %1016 %4401
- %4404 = OpCompositeExtract %float %1197 2
- %4405 = OpFAdd %float %1017 %4404
- %4406 = OpFMul %float %4399 %4399
- %4407 = OpFMul %float %4402 %4402
- %4408 = OpFAdd %float %4406 %4407
- %4409 = OpFMul %float %4405 %4405
- %4410 = OpFAdd %float %4408 %4409
- %4411 = OpExtInst %float %1 Sqrt %4410
- %4412 = OpFDiv %float %float_1 %4411
- %4413 = OpFMul %float %4399 %4412
- %4414 = OpFMul %float %4402 %4412
- %4415 = OpFMul %float %4405 %4412
- %4421 = OpCompositeExtract %float %1103 0
- %4423 = OpFMul %float %4421 %4413
- %4424 = OpCompositeExtract %float %1103 1
- %4426 = OpFMul %float %4424 %4414
- %4427 = OpFAdd %float %4423 %4426
- %4428 = OpCompositeExtract %float %1103 2
- %4430 = OpFMul %float %4428 %4415
- %4431 = OpFAdd %float %4427 %4430
- %4432 = OpExtInst %float %1 FMax %4431 %float_1_1920929en07
- %4445 = OpFMul %float %4421 %1015
- %4448 = OpFMul %float %4424 %1016
- %4449 = OpFAdd %float %4445 %4448
- %4452 = OpFMul %float %4428 %1017
- %4453 = OpFAdd %float %4449 %4452
- %4454 = OpExtInst %float %1 FMax %4453 %float_1_1920929en07
- %4467 = OpFMul %float %4421 %4398
- %4470 = OpFMul %float %4424 %4401
- %4471 = OpFAdd %float %4467 %4470
- %4474 = OpFMul %float %4428 %4404
- %4475 = OpFAdd %float %4471 %4474
- %4476 = OpExtInst %float %1 FMax %4475 %float_1_1920929en07
- %4489 = OpFMul %float %1015 %4413
- %4492 = OpFMul %float %1016 %4414
- %4493 = OpFAdd %float %4489 %4492
- %4496 = OpFMul %float %1017 %4415
- %4497 = OpFAdd %float %4493 %4496
- %4498 = OpExtInst %float %1 FMax %4497 %float_1_1920929en07
- %4354 = OpFNegate %float %1167
- %4357 = OpFNegate %float %1168
- %4360 = OpFNegate %float %1169
- %4361 = OpFMul %float %4354 %1126
- %4362 = OpFMul %float %4357 %1126
- %4363 = OpFMul %float %4360 %1126
- %4364 = OpCompositeConstruct %v3float %4361 %4362 %4363
- %4365 = OpFAdd %v3float %1170 %4364
- %4508 = OpFSub %float %1172 %float_1
- %4510 = OpFAdd %float %1172 %float_1
- %4511 = OpFDiv %float %4508 %4510
- %4512 = OpFMul %float %4511 %4511
- %4514 = OpCompositeExtract %float %1148 0
- %4515 = OpFMul %float %4512 %4514
- %4516 = OpCompositeExtract %float %1148 1
- %4517 = OpFMul %float %4512 %4516
- %4518 = OpCompositeExtract %float %1148 2
- %4519 = OpFMul %float %4512 %4518
- %4521 = OpFMul %float %4515 %1166
- %4522 = OpFMul %float %4517 %1166
- %4523 = OpFMul %float %4519 %1166
- %4527 = OpFSub %float %1167 %4521
- %4529 = OpFSub %float %1168 %4522
- %4531 = OpFSub %float %1169 %4523
- %4532 = OpFMul %float %4527 %1126
- %4533 = OpFMul %float %4529 %1126
- %4534 = OpFMul %float %4531 %1126
- %4535 = OpFAdd %float %4521 %4532
- %4536 = OpFAdd %float %4522 %4533
- %4537 = OpFAdd %float %4523 %4534
- %4538 = OpCompositeConstruct %v3float %4535 %4536 %4537
- %4544 = OpFSub %float %float_1 %1166
- %4549 = OpFMul %float %4544 %1126
- %4552 = OpFAdd %float %1166 %4549
- %4560 = OpFSub %float %4552 %4535
- %4563 = OpFSub %float %4552 %4536
- %4566 = OpFSub %float %4552 %4537
- %4567 = OpFSub %float %float_1 %4498
- %4568 = OpExtInst %float %1 Pow %4567 %float_5
- %4569 = OpFMul %float %4560 %4568
- %4570 = OpFMul %float %4563 %4568
- %4571 = OpFMul %float %4566 %4568
- %4572 = OpCompositeConstruct %v3float %4569 %4570 %4571
- %4573 = OpFAdd %v3float %4538 %4572
- %4369 = OpCompositeExtract %float %1200 0
- %4370 = OpFMul %float %4369 %4476
- %4371 = OpCompositeExtract %float %1200 1
- %4372 = OpFMul %float %4371 %4476
- %4373 = OpCompositeExtract %float %1200 2
- %4374 = OpFMul %float %4373 %4476
- %4576 = OpCompositeExtract %float %4573 0
- %4577 = OpCompositeExtract %float %4573 1
- %4578 = OpCompositeExtract %float %4573 2
- %4579 = OpExtInst %float %1 FMax %4577 %4578
- %4580 = OpExtInst %float %1 FMax %4576 %4579
- %4581 = OpFSub %float %float_1 %4580
- %4582 = OpFMul %float %4581 %float_0_318309873
- %4583 = OpVectorTimesScalar %v3float %4365 %4582
- %4376 = OpCompositeConstruct %v3float %4370 %4372 %4374
- %4377 = OpFMul %v3float %4376 %4583
- %4592 = OpFMul %float %4392 %4392
- %4593 = OpFMul %float %4432 %4432
- %4594 = OpFSub %float %4592 %float_1
- %4595 = OpFMul %float %4593 %4594
- %4596 = OpFAdd %float %4595 %float_1
- %4597 = OpFMul %float %float_3_14159274 %4596
- %4598 = OpFMul %float %4597 %4596
- %4599 = OpFDiv %float %4592 %4598
- %4603 = OpFMul %float %4454 %4454
- %4604 = OpFSub %float %float_1 %4592
- %4605 = OpFMul %float %4603 %4604
- %4606 = OpFAdd %float %4605 %4592
- %4607 = OpExtInst %float %1 Sqrt %4606
- %4608 = OpFMul %float %4476 %4607
- %4609 = OpFMul %float %4476 %4476
- %4611 = OpFMul %float %4609 %4604
- %4612 = OpFAdd %float %4611 %4592
- %4613 = OpExtInst %float %1 Sqrt %4612
- %4614 = OpFMul %float %4454 %4613
- %4615 = OpFAdd %float %4608 %4614
- %4616 = OpFOrdGreaterThan %bool %4615 %float_0
- OpSelectionMerge %4620 None
- OpBranchConditional %4616 %4617 %4619
- %4619 = OpLabel
- OpBranch %4620
- %4617 = OpLabel
- %4618 = OpFDiv %float %float_0_5 %4615
- OpBranch %4620
- %4620 = OpLabel
- %4621 = OpPhi %float %4618 %4617 %float_0 %4619
- %4588 = OpFMul %float %4599 %4621
- %4589 = OpVectorTimesScalar %v3float %4573 %4588
- %4386 = OpFMul %v3float %4376 %4589
- %4387 = OpCompositeConstruct %_struct_149 %4377 %4386
- OpBranch %1204
- %1204 = OpLabel
- %1205 = OpPhi %uint %uint_0 %4620 %1206 %1207
- %1208 = OpPhi %_struct_149 %4387 %4620 %4953 %1207
- OpLoopMerge %1217 %1207 None
- OpBranch %1213
- %1213 = OpLabel
- %1214 = OpULessThan %bool %1205 %974
- OpSelectionMerge %1215 None
- OpBranchConditional %1214 %1216 %1217
- %1217 = OpLabel
- %1242 = OpCompositeExtract %v3float %1208 0
- %1243 = OpCompositeExtract %v3float %1208 1
- %1244 = OpCompositeExtract %float %1242 0
- %1245 = OpCompositeExtract %float %1243 0
- %1246 = OpFAdd %float %1244 %1245
- %1247 = OpCompositeExtract %float %1242 1
- %1248 = OpCompositeExtract %float %1243 1
- %1249 = OpFAdd %float %1247 %1248
- %1250 = OpCompositeExtract %float %1242 2
- %1251 = OpCompositeExtract %float %1243 2
- %1252 = OpFAdd %float %1250 %1251
- %1253 = OpCompositeExtract %float %1195 0
- %1254 = OpFAdd %float %1246 %1253
- %1255 = OpCompositeExtract %float %1195 1
- %1256 = OpFAdd %float %1249 %1255
- %1257 = OpCompositeExtract %float %1195 2
- %1258 = OpFAdd %float %1252 %1257
- %1259 = OpCompositeConstruct %v4float %1254 %1256 %1258 %float_1
- OpStore %10 %1259
- OpStore %11 %1259
+ %1032 = OpFMul %float %1018 %1031
+ %1033 = OpFMul %float %1021 %1031
+ %1034 = OpFMul %float %1024 %1031
+ %1036 = OpCompositeExtract %float %986 0
+ %1038 = OpFMul %float %1036 %1036
+ %1039 = OpCompositeExtract %float %986 1
+ %1041 = OpFMul %float %1039 %1039
+ %1042 = OpFAdd %float %1038 %1041
+ %1043 = OpCompositeExtract %float %986 2
+ %1045 = OpFMul %float %1043 %1043
+ %1046 = OpFAdd %float %1042 %1045
+ %1047 = OpExtInst %float %1 Sqrt %1046
+ %1048 = OpFDiv %float %float_1 %1047
+ %1049 = OpVectorTimesScalar %v3float %986 %1048
+ %1051 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_2
+ %1052 = OpLoad %int %1051
+ %1053 = OpIEqual %bool %1052 %int_n1
+ OpSelectionMerge %1054 None
+ OpBranchConditional %1053 %1055 %1056
+ %1056 = OpLabel
+ %1059 = OpLoad %int %1051
+ %1060 = OpBitcast %uint %1059
+ %1061 = OpAccessChain %_ptr_UniformConstant_238 %157 %1060
+ %4253 = OpLoad %238 %1061
+ %4254 = OpSampledImage %303 %4253 %995
+ %4255 = OpImageSampleImplicitLod %v4float %4254 %987
+ %1063 = OpCompositeExtract %float %4255 0
+ %1064 = OpCompositeExtract %float %4255 1
+ %1065 = OpCompositeExtract %float %4255 2
+ %1069 = OpFMul %float %1063 %float_2_00787401
+ %1070 = OpFMul %float %1064 %float_2_00787401
+ %1071 = OpFMul %float %1065 %float_2_00787401
+ %1072 = OpCompositeConstruct %v3float %1069 %1070 %1071
+ %4259 = OpFSub %v3float %1072 %5464
+ %1074 = OpFNegate %float %1018
+ %1075 = OpFNegate %float %1021
+ %1076 = OpFNegate %float %1024
+ %1077 = OpCompositeConstruct %v3float %1074 %1075 %1076
+ %4355 = OpDPdx %v3float %1077
+ %4358 = OpDPdy %v3float %1077
+ %4361 = OpDPdx %v2float %987
+ %4364 = OpDPdy %v2float %987
+ %4266 = OpCompositeExtract %float %4358 1
+ %4267 = OpCompositeExtract %float %1049 2
+ %4268 = OpFMul %float %4266 %4267
+ %4269 = OpCompositeExtract %float %1049 1
+ %4270 = OpCompositeExtract %float %4358 2
+ %4271 = OpFMul %float %4269 %4270
+ %4272 = OpFSub %float %4268 %4271
+ %4274 = OpCompositeExtract %float %1049 0
+ %4275 = OpFMul %float %4270 %4274
+ %4277 = OpCompositeExtract %float %4358 0
+ %4278 = OpFMul %float %4267 %4277
+ %4279 = OpFSub %float %4275 %4278
+ %4282 = OpFMul %float %4277 %4269
+ %4285 = OpFMul %float %4274 %4266
+ %4286 = OpFSub %float %4282 %4285
+ %4288 = OpCompositeExtract %float %4355 2
+ %4289 = OpFMul %float %4269 %4288
+ %4290 = OpCompositeExtract %float %4355 1
+ %4292 = OpFMul %float %4290 %4267
+ %4293 = OpFSub %float %4289 %4292
+ %4295 = OpCompositeExtract %float %4355 0
+ %4296 = OpFMul %float %4267 %4295
+ %4299 = OpFMul %float %4288 %4274
+ %4300 = OpFSub %float %4296 %4299
+ %4303 = OpFMul %float %4274 %4290
+ %4306 = OpFMul %float %4295 %4269
+ %4307 = OpFSub %float %4303 %4306
+ %4308 = OpCompositeExtract %float %4361 0
+ %4309 = OpFMul %float %4272 %4308
+ %4310 = OpFMul %float %4279 %4308
+ %4311 = OpFMul %float %4286 %4308
+ %4312 = OpCompositeExtract %float %4364 0
+ %4313 = OpFMul %float %4293 %4312
+ %4314 = OpFMul %float %4300 %4312
+ %4315 = OpFMul %float %4307 %4312
+ %4316 = OpFAdd %float %4309 %4313
+ %4317 = OpFAdd %float %4310 %4314
+ %4318 = OpFAdd %float %4311 %4315
+ %4319 = OpCompositeExtract %float %4361 1
+ %4320 = OpFMul %float %4272 %4319
+ %4321 = OpFMul %float %4279 %4319
+ %4322 = OpFMul %float %4286 %4319
+ %4323 = OpCompositeExtract %float %4364 1
+ %4324 = OpFMul %float %4293 %4323
+ %4325 = OpFMul %float %4300 %4323
+ %4326 = OpFMul %float %4307 %4323
+ %4327 = OpFAdd %float %4320 %4324
+ %4328 = OpFAdd %float %4321 %4325
+ %4329 = OpFAdd %float %4322 %4326
+ %4330 = OpFMul %float %4316 %4316
+ %4331 = OpFMul %float %4317 %4317
+ %4332 = OpFAdd %float %4330 %4331
+ %4333 = OpFMul %float %4318 %4318
+ %4334 = OpFAdd %float %4332 %4333
+ %4335 = OpFMul %float %4327 %4327
+ %4336 = OpFMul %float %4328 %4328
+ %4337 = OpFAdd %float %4335 %4336
+ %4338 = OpFMul %float %4329 %4329
+ %4339 = OpFAdd %float %4337 %4338
+ %4340 = OpExtInst %float %1 FMax %4334 %4339
+ %4341 = OpExtInst %float %1 Sqrt %4340
+ %4342 = OpFDiv %float %float_1 %4341
+ %4343 = OpFMul %float %4316 %4342
+ %4344 = OpFMul %float %4317 %4342
+ %4345 = OpFMul %float %4318 %4342
+ %4347 = OpFMul %float %4327 %4342
+ %4348 = OpFMul %float %4328 %4342
+ %4349 = OpFMul %float %4329 %4342
+ %1080 = OpCompositeExtract %float %4259 0
+ %1082 = OpFMul %float %4343 %1080
+ %1084 = OpFMul %float %4344 %1080
+ %1086 = OpFMul %float %4345 %1080
+ %1088 = OpCompositeExtract %float %4259 1
+ %1090 = OpFMul %float %4347 %1088
+ %1092 = OpFMul %float %4348 %1088
+ %1094 = OpFMul %float %4349 %1088
+ %1095 = OpFAdd %float %1090 %1082
+ %1096 = OpFAdd %float %1092 %1084
+ %1097 = OpFAdd %float %1094 %1086
+ %1099 = OpCompositeExtract %float %4259 2
+ %1101 = OpFMul %float %4274 %1099
+ %1103 = OpFMul %float %4269 %1099
+ %1105 = OpFMul %float %4267 %1099
+ %1106 = OpFAdd %float %1101 %1095
+ %1107 = OpFAdd %float %1103 %1096
+ %1108 = OpFAdd %float %1105 %1097
+ %1109 = OpFMul %float %1106 %1106
+ %1110 = OpFMul %float %1107 %1107
+ %1111 = OpFAdd %float %1109 %1110
+ %1112 = OpFMul %float %1108 %1108
+ %1113 = OpFAdd %float %1111 %1112
+ %1114 = OpExtInst %float %1 Sqrt %1113
+ %1115 = OpFDiv %float %float_1 %1114
+ %1116 = OpFMul %float %1106 %1115
+ %1117 = OpFMul %float %1107 %1115
+ %1118 = OpFMul %float %1108 %1115
+ %1119 = OpCompositeConstruct %v3float %1116 %1117 %1118
+ OpBranch %1054
+ %1055 = OpLabel
+ OpBranch %1054
+ %1054 = OpLabel
+ %1120 = OpPhi %v3float %1049 %1055 %1119 %1056
+ %1121 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %988 %uint_5
+ %1122 = OpLoad %float %1121
+ %1123 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %988 %uint_6
+ %1124 = OpLoad %float %1123
+ %1126 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_1
+ %1127 = OpLoad %int %1126
+ %1128 = OpIEqual %bool %1127 %int_n1
+ OpSelectionMerge %1129 None
+ OpBranchConditional %1128 %1130 %1131
+ %1131 = OpLabel
+ %1134 = OpLoad %int %1126
+ %1135 = OpBitcast %uint %1134
+ %1136 = OpAccessChain %_ptr_UniformConstant_238 %157 %1135
+ %4367 = OpLoad %238 %1136
+ %4368 = OpSampledImage %303 %4367 %995
+ %4369 = OpImageSampleImplicitLod %v4float %4368 %987
+ %1138 = OpCompositeExtract %float %4369 2
+ %1139 = OpFMul %float %1122 %1138
+ %1140 = OpCompositeExtract %float %4369 1
+ %1141 = OpFMul %float %1124 %1140
+ OpBranch %1129
+ %1130 = OpLabel
+ OpBranch %1129
+ %1129 = OpLabel
+ %1142 = OpPhi %float %1124 %1130 %1141 %1131
+ %1143 = OpPhi %float %1122 %1130 %1139 %1131
+ %1144 = OpAccessChain %_ptr_StorageBuffer_v3float %158 %uint_0 %988 %uint_3
+ %1145 = OpLoad %v3float %1144
+ %1148 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_8
+ %1149 = OpLoad %int %1148
+ %1150 = OpIEqual %bool %1149 %int_n1
+ OpSelectionMerge %1151 None
+ OpBranchConditional %1150 %1152 %1153
+ %1153 = OpLabel
+ %1156 = OpLoad %int %1148
+ %1157 = OpBitcast %uint %1156
+ %1158 = OpAccessChain %_ptr_UniformConstant_238 %157 %1157
+ %4378 = OpLoad %238 %1158
+ %4379 = OpSampledImage %303 %4378 %995
+ %4380 = OpImageSampleImplicitLod %v4float %4379 %987
+ %1160 = OpCompositeExtract %float %4380 0
+ %1161 = OpCompositeExtract %float %4380 1
+ %1162 = OpCompositeExtract %float %4380 2
+ %1163 = OpCompositeConstruct %v3float %1160 %1161 %1162
+ %1164 = OpFMul %v3float %1145 %1163
+ OpBranch %1151
+ %1152 = OpLabel
+ OpBranch %1151
+ %1151 = OpLabel
+ %1165 = OpPhi %v3float %1145 %1152 %1164 %1153
+ %1166 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %988 %uint_14
+ %1167 = OpLoad %float %1166
+ %1169 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_7
+ %1170 = OpLoad %int %1169
+ %1171 = OpIEqual %bool %1170 %int_n1
+ OpSelectionMerge %1172 None
+ OpBranchConditional %1171 %1173 %1174
+ %1174 = OpLabel
+ %1177 = OpLoad %int %1169
+ %1178 = OpBitcast %uint %1177
+ %1179 = OpAccessChain %_ptr_UniformConstant_238 %157 %1178
+ %4383 = OpLoad %238 %1179
+ %4384 = OpSampledImage %303 %4383 %995
+ %4385 = OpImageSampleImplicitLod %v4float %4384 %987
+ %1181 = OpCompositeExtract %float %4385 3
+ %1182 = OpFMul %float %1167 %1181
+ OpBranch %1172
+ %1173 = OpLabel
+ OpBranch %1172
+ %1172 = OpLabel
+ %1183 = OpPhi %float %1167 %1173 %1182 %1174
+ %1184 = OpCompositeExtract %float %1012 0
+ %1185 = OpCompositeExtract %float %1012 1
+ %1186 = OpCompositeExtract %float %1012 2
+ %1187 = OpCompositeConstruct %v3float %1184 %1185 %1186
+ %1188 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %988 %uint_10
+ %1189 = OpLoad %float %1188
+ %1191 = OpAccessChain %_ptr_StorageBuffer_v3float %158 %uint_0 %988 %uint_1
+ %1192 = OpLoad %v3float %1191
+ %1195 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %988 %uint_4 %uint_3
+ %1196 = OpLoad %int %1195
+ %1197 = OpIEqual %bool %1196 %int_n1
+ OpSelectionMerge %1198 None
+ OpBranchConditional %1197 %1199 %1200
+ %1200 = OpLabel
+ %1203 = OpLoad %int %1195
+ %1204 = OpBitcast %uint %1203
+ %1205 = OpAccessChain %_ptr_UniformConstant_238 %157 %1204
+ %4394 = OpLoad %238 %1205
+ %4395 = OpSampledImage %303 %4394 %995
+ %4396 = OpImageSampleImplicitLod %v4float %4395 %987
+ %1207 = OpCompositeExtract %float %4396 0
+ %1208 = OpCompositeExtract %float %4396 1
+ %1209 = OpCompositeExtract %float %4396 2
+ %1210 = OpCompositeConstruct %v3float %1207 %1208 %1209
+ %1211 = OpFMul %v3float %1192 %1210
+ OpBranch %1198
+ %1199 = OpLabel
+ OpBranch %1198
+ %1198 = OpLabel
+ %1212 = OpPhi %v3float %1192 %1199 %1211 %1200
+ %1213 = OpAccessChain %_ptr_Uniform_v3float %159 %uint_0 %uint_0
+ %1214 = OpLoad %v3float %1213
+ %1216 = OpAccessChain %_ptr_Uniform_v3float %159 %uint_0 %uint_1
+ %1217 = OpLoad %v3float %1216
+ %4467 = OpFMul %float %1142 %1142
+ %4473 = OpCompositeExtract %float %1214 0
+ %4474 = OpFAdd %float %1032 %4473
+ %4476 = OpCompositeExtract %float %1214 1
+ %4477 = OpFAdd %float %1033 %4476
+ %4479 = OpCompositeExtract %float %1214 2
+ %4480 = OpFAdd %float %1034 %4479
+ %4481 = OpFMul %float %4474 %4474
+ %4482 = OpFMul %float %4477 %4477
+ %4483 = OpFAdd %float %4481 %4482
+ %4484 = OpFMul %float %4480 %4480
+ %4485 = OpFAdd %float %4483 %4484
+ %4486 = OpExtInst %float %1 Sqrt %4485
+ %4487 = OpFDiv %float %float_1 %4486
+ %4488 = OpFMul %float %4474 %4487
+ %4489 = OpFMul %float %4477 %4487
+ %4490 = OpFMul %float %4480 %4487
+ %4496 = OpCompositeExtract %float %1120 0
+ %4498 = OpFMul %float %4496 %4488
+ %4499 = OpCompositeExtract %float %1120 1
+ %4501 = OpFMul %float %4499 %4489
+ %4502 = OpFAdd %float %4498 %4501
+ %4503 = OpCompositeExtract %float %1120 2
+ %4505 = OpFMul %float %4503 %4490
+ %4506 = OpFAdd %float %4502 %4505
+ %4507 = OpExtInst %float %1 FMax %4506 %float_1_1920929en07
+ %4520 = OpFMul %float %4496 %1032
+ %4523 = OpFMul %float %4499 %1033
+ %4524 = OpFAdd %float %4520 %4523
+ %4527 = OpFMul %float %4503 %1034
+ %4528 = OpFAdd %float %4524 %4527
+ %4529 = OpExtInst %float %1 FMax %4528 %float_1_1920929en07
+ %4542 = OpFMul %float %4496 %4473
+ %4545 = OpFMul %float %4499 %4476
+ %4546 = OpFAdd %float %4542 %4545
+ %4549 = OpFMul %float %4503 %4479
+ %4550 = OpFAdd %float %4546 %4549
+ %4551 = OpExtInst %float %1 FMax %4550 %float_1_1920929en07
+ %4564 = OpFMul %float %1032 %4488
+ %4567 = OpFMul %float %1033 %4489
+ %4568 = OpFAdd %float %4564 %4567
+ %4571 = OpFMul %float %1034 %4490
+ %4572 = OpFAdd %float %4568 %4571
+ %4573 = OpExtInst %float %1 FMax %4572 %float_1_1920929en07
+ %4429 = OpFNegate %float %1184
+ %4432 = OpFNegate %float %1185
+ %4435 = OpFNegate %float %1186
+ %4436 = OpFMul %float %4429 %1143
+ %4437 = OpFMul %float %4432 %1143
+ %4438 = OpFMul %float %4435 %1143
+ %4439 = OpCompositeConstruct %v3float %4436 %4437 %4438
+ %4440 = OpFAdd %v3float %1187 %4439
+ %4583 = OpFSub %float %1189 %float_1
+ %4585 = OpFAdd %float %1189 %float_1
+ %4586 = OpFDiv %float %4583 %4585
+ %4587 = OpFMul %float %4586 %4586
+ %4589 = OpCompositeExtract %float %1165 0
+ %4590 = OpFMul %float %4587 %4589
+ %4591 = OpCompositeExtract %float %1165 1
+ %4592 = OpFMul %float %4587 %4591
+ %4593 = OpCompositeExtract %float %1165 2
+ %4594 = OpFMul %float %4587 %4593
+ %4596 = OpFMul %float %4590 %1183
+ %4597 = OpFMul %float %4592 %1183
+ %4598 = OpFMul %float %4594 %1183
+ %4602 = OpFSub %float %1184 %4596
+ %4604 = OpFSub %float %1185 %4597
+ %4606 = OpFSub %float %1186 %4598
+ %4607 = OpFMul %float %4602 %1143
+ %4608 = OpFMul %float %4604 %1143
+ %4609 = OpFMul %float %4606 %1143
+ %4610 = OpFAdd %float %4596 %4607
+ %4611 = OpFAdd %float %4597 %4608
+ %4612 = OpFAdd %float %4598 %4609
+ %4613 = OpCompositeConstruct %v3float %4610 %4611 %4612
+ %4619 = OpFSub %float %float_1 %1183
+ %4624 = OpFMul %float %4619 %1143
+ %4627 = OpFAdd %float %1183 %4624
+ %4635 = OpFSub %float %4627 %4610
+ %4638 = OpFSub %float %4627 %4611
+ %4641 = OpFSub %float %4627 %4612
+ %4642 = OpFSub %float %float_1 %4573
+ %4643 = OpExtInst %float %1 Pow %4642 %float_5
+ %4644 = OpFMul %float %4635 %4643
+ %4645 = OpFMul %float %4638 %4643
+ %4646 = OpFMul %float %4641 %4643
+ %4647 = OpCompositeConstruct %v3float %4644 %4645 %4646
+ %4648 = OpFAdd %v3float %4613 %4647
+ %4444 = OpCompositeExtract %float %1217 0
+ %4445 = OpFMul %float %4444 %4551
+ %4446 = OpCompositeExtract %float %1217 1
+ %4447 = OpFMul %float %4446 %4551
+ %4448 = OpCompositeExtract %float %1217 2
+ %4449 = OpFMul %float %4448 %4551
+ %4651 = OpCompositeExtract %float %4648 0
+ %4652 = OpCompositeExtract %float %4648 1
+ %4653 = OpCompositeExtract %float %4648 2
+ %4654 = OpExtInst %float %1 FMax %4652 %4653
+ %4655 = OpExtInst %float %1 FMax %4651 %4654
+ %4656 = OpFSub %float %float_1 %4655
+ %4657 = OpFMul %float %4656 %float_0_318309873
+ %4658 = OpVectorTimesScalar %v3float %4440 %4657
+ %4451 = OpCompositeConstruct %v3float %4445 %4447 %4449
+ %4452 = OpFMul %v3float %4451 %4658
+ %4667 = OpFMul %float %4467 %4467
+ %4668 = OpFMul %float %4507 %4507
+ %4669 = OpFSub %float %4667 %float_1
+ %4670 = OpFMul %float %4668 %4669
+ %4671 = OpFAdd %float %4670 %float_1
+ %4672 = OpFMul %float %float_3_14159274 %4671
+ %4673 = OpFMul %float %4672 %4671
+ %4674 = OpFDiv %float %4667 %4673
+ %4678 = OpFMul %float %4529 %4529
+ %4679 = OpFSub %float %float_1 %4667
+ %4680 = OpFMul %float %4678 %4679
+ %4681 = OpFAdd %float %4680 %4667
+ %4682 = OpExtInst %float %1 Sqrt %4681
+ %4683 = OpFMul %float %4551 %4682
+ %4684 = OpFMul %float %4551 %4551
+ %4686 = OpFMul %float %4684 %4679
+ %4687 = OpFAdd %float %4686 %4667
+ %4688 = OpExtInst %float %1 Sqrt %4687
+ %4689 = OpFMul %float %4529 %4688
+ %4690 = OpFAdd %float %4683 %4689
+ %4691 = OpFOrdGreaterThan %bool %4690 %float_0
+ OpSelectionMerge %4695 None
+ OpBranchConditional %4691 %4692 %4694
+ %4694 = OpLabel
+ OpBranch %4695
+ %4692 = OpLabel
+ %4693 = OpFDiv %float %float_0_5 %4690
+ OpBranch %4695
+ %4695 = OpLabel
+ %4696 = OpPhi %float %4693 %4692 %float_0 %4694
+ %4663 = OpFMul %float %4674 %4696
+ %4664 = OpVectorTimesScalar %v3float %4648 %4663
+ %4461 = OpFMul %v3float %4451 %4664
+ %4462 = OpCompositeConstruct %_struct_154 %4452 %4461
+ OpBranch %1221
+ %1221 = OpLabel
+ %1222 = OpPhi %uint %uint_0 %4695 %1223 %1224
+ %1225 = OpPhi %_struct_154 %4462 %4695 %5028 %1224
+ OpLoopMerge %1234 %1224 None
+ OpBranch %1230
+ %1230 = OpLabel
+ %1231 = OpULessThan %bool %1222 %991
+ OpSelectionMerge %1232 None
+ OpBranchConditional %1231 %1233 %1234
+ %1234 = OpLabel
+ %1259 = OpCompositeExtract %v3float %1225 0
+ %1260 = OpCompositeExtract %v3float %1225 1
+ %1261 = OpCompositeExtract %float %1259 0
+ %1262 = OpCompositeExtract %float %1260 0
+ %1263 = OpFAdd %float %1261 %1262
+ %1264 = OpCompositeExtract %float %1259 1
+ %1265 = OpCompositeExtract %float %1260 1
+ %1266 = OpFAdd %float %1264 %1265
+ %1267 = OpCompositeExtract %float %1259 2
+ %1268 = OpCompositeExtract %float %1260 2
+ %1269 = OpFAdd %float %1267 %1268
+ %1270 = OpCompositeExtract %float %1212 0
+ %1271 = OpFAdd %float %1263 %1270
+ %1272 = OpCompositeExtract %float %1212 1
+ %1273 = OpFAdd %float %1266 %1272
+ %1274 = OpCompositeExtract %float %1212 2
+ %1275 = OpFAdd %float %1269 %1274
+ %1276 = OpCompositeConstruct %v4float %1271 %1273 %1275 %float_1
+ OpStore %12 %1276
+ OpStore %13 %1276
OpReturn
- %1216 = OpLabel
- %1219 = OpAccessChain %_ptr_StorageBuffer_v3float %151 %uint_0 %1205 %uint_0
- %1220 = OpLoad %v3float %1219
- %4633 = OpCompositeExtract %float %1220 0
- %4635 = OpFSub %float %4633 %1000
- %4636 = OpCompositeExtract %float %1220 1
- %4638 = OpFSub %float %4636 %1003
- %4639 = OpCompositeExtract %float %1220 2
- %4641 = OpFSub %float %4639 %1006
- %4642 = OpFMul %float %4635 %4635
- %4643 = OpFMul %float %4638 %4638
- %4644 = OpFAdd %float %4642 %4643
- %4645 = OpFMul %float %4641 %4641
- %4646 = OpFAdd %float %4644 %4645
- %4647 = OpExtInst %float %1 Sqrt %4646
- %4648 = OpFDiv %float %4635 %4647
- %4649 = OpFDiv %float %4638 %4647
- %4650 = OpFDiv %float %4641 %4647
- %4652 = OpFDiv %float %float_1 %4646
- %1225 = OpAccessChain %_ptr_StorageBuffer_v4float %151 %uint_0 %1205 %uint_1
- %1226 = OpLoad %v4float %1225
- %1227 = OpCompositeExtract %float %1226 0
- %1228 = OpCompositeExtract %float %1226 1
- %1229 = OpCompositeExtract %float %1226 2
- %1231 = OpAccessChain %_ptr_StorageBuffer_float %151 %uint_0 %1205 %uint_1 %uint_3
- %1232 = OpLoad %float %1231
- %1233 = OpFMul %float %1227 %1232
- %1234 = OpFMul %float %1228 %1232
- %1235 = OpFMul %float %1229 %1232
- %1236 = OpFMul %float %1233 %4652
- %1237 = OpFMul %float %1234 %4652
- %1238 = OpFMul %float %1235 %4652
- %4722 = OpFAdd %float %1015 %4648
- %4725 = OpFAdd %float %1016 %4649
- %4728 = OpFAdd %float %1017 %4650
- %4729 = OpFMul %float %4722 %4722
- %4730 = OpFMul %float %4725 %4725
- %4731 = OpFAdd %float %4729 %4730
- %4732 = OpFMul %float %4728 %4728
- %4733 = OpFAdd %float %4731 %4732
- %4734 = OpExtInst %float %1 Sqrt %4733
- %4735 = OpFDiv %float %float_1 %4734
- %4736 = OpFMul %float %4722 %4735
- %4737 = OpFMul %float %4725 %4735
- %4738 = OpFMul %float %4728 %4735
- %4746 = OpFMul %float %4421 %4736
- %4749 = OpFMul %float %4424 %4737
- %4750 = OpFAdd %float %4746 %4749
- %4753 = OpFMul %float %4428 %4738
- %4754 = OpFAdd %float %4750 %4753
- %4755 = OpExtInst %float %1 FMax %4754 %float_1_1920929en07
- %4790 = OpFMul %float %4421 %4648
- %4793 = OpFMul %float %4424 %4649
- %4794 = OpFAdd %float %4790 %4793
- %4797 = OpFMul %float %4428 %4650
- %4798 = OpFAdd %float %4794 %4797
- %4799 = OpExtInst %float %1 FMax %4798 %float_1_1920929en07
- %4812 = OpFMul %float %1015 %4736
- %4815 = OpFMul %float %1016 %4737
- %4816 = OpFAdd %float %4812 %4815
- %4819 = OpFMul %float %1017 %4738
- %4820 = OpFAdd %float %4816 %4819
- %4821 = OpExtInst %float %1 FMax %4820 %float_1_1920929en07
- %4890 = OpFSub %float %float_1 %4821
- %4891 = OpExtInst %float %1 Pow %4890 %float_5
- %4892 = OpFMul %float %4560 %4891
- %4893 = OpFMul %float %4563 %4891
- %4894 = OpFMul %float %4566 %4891
- %4895 = OpCompositeConstruct %v3float %4892 %4893 %4894
- %4896 = OpFAdd %v3float %4538 %4895
- %4693 = OpFMul %float %1236 %4799
- %4695 = OpFMul %float %1237 %4799
- %4697 = OpFMul %float %1238 %4799
- %4899 = OpCompositeExtract %float %4896 0
- %4900 = OpCompositeExtract %float %4896 1
- %4901 = OpCompositeExtract %float %4896 2
- %4902 = OpExtInst %float %1 FMax %4900 %4901
- %4903 = OpExtInst %float %1 FMax %4899 %4902
- %4904 = OpFSub %float %float_1 %4903
- %4905 = OpFMul %float %4904 %float_0_318309873
- %4906 = OpVectorTimesScalar %v3float %4365 %4905
- %4699 = OpCompositeConstruct %v3float %4693 %4695 %4697
- %4700 = OpFMul %v3float %4699 %4906
- %4916 = OpFMul %float %4755 %4755
- %4918 = OpFMul %float %4916 %4594
- %4919 = OpFAdd %float %4918 %float_1
- %4920 = OpFMul %float %float_3_14159274 %4919
- %4921 = OpFMul %float %4920 %4919
- %4922 = OpFDiv %float %4592 %4921
- %4931 = OpFMul %float %4799 %4607
- %4932 = OpFMul %float %4799 %4799
- %4934 = OpFMul %float %4932 %4604
- %4935 = OpFAdd %float %4934 %4592
- %4936 = OpExtInst %float %1 Sqrt %4935
- %4937 = OpFMul %float %4454 %4936
- %4938 = OpFAdd %float %4931 %4937
- %4939 = OpFOrdGreaterThan %bool %4938 %float_0
- OpSelectionMerge %4943 None
- OpBranchConditional %4939 %4940 %4942
- %4942 = OpLabel
- OpBranch %4943
- %4940 = OpLabel
- %4941 = OpFDiv %float %float_0_5 %4938
- OpBranch %4943
- %4943 = OpLabel
- %4944 = OpPhi %float %4941 %4940 %float_0 %4942
- %4911 = OpFMul %float %4922 %4944
- %4912 = OpVectorTimesScalar %v3float %4896 %4911
- %4709 = OpFMul %v3float %4699 %4912
- %4947 = OpCompositeExtract %v3float %1208 0
- %4949 = OpFAdd %v3float %4947 %4700
- %4950 = OpCompositeExtract %v3float %1208 1
- %4952 = OpFAdd %v3float %4950 %4709
- %4953 = OpCompositeConstruct %_struct_149 %4949 %4952
- %1206 = OpIAdd %uint %1205 %uint_1
- OpBranch %1215
- %1215 = OpLabel
- OpBranch %1207
- %1207 = OpLabel
- OpBranch %1204
+ %1233 = OpLabel
+ %1236 = OpAccessChain %_ptr_StorageBuffer_v3float %156 %uint_0 %1222 %uint_0
+ %1237 = OpLoad %v3float %1236
+ %4708 = OpCompositeExtract %float %1237 0
+ %4710 = OpFSub %float %4708 %1017
+ %4711 = OpCompositeExtract %float %1237 1
+ %4713 = OpFSub %float %4711 %1020
+ %4714 = OpCompositeExtract %float %1237 2
+ %4716 = OpFSub %float %4714 %1023
+ %4717 = OpFMul %float %4710 %4710
+ %4718 = OpFMul %float %4713 %4713
+ %4719 = OpFAdd %float %4717 %4718
+ %4720 = OpFMul %float %4716 %4716
+ %4721 = OpFAdd %float %4719 %4720
+ %4722 = OpExtInst %float %1 Sqrt %4721
+ %4723 = OpFDiv %float %4710 %4722
+ %4724 = OpFDiv %float %4713 %4722
+ %4725 = OpFDiv %float %4716 %4722
+ %4727 = OpFDiv %float %float_1 %4721
+ %1242 = OpAccessChain %_ptr_StorageBuffer_v4float %156 %uint_0 %1222 %uint_1
+ %1243 = OpLoad %v4float %1242
+ %1244 = OpCompositeExtract %float %1243 0
+ %1245 = OpCompositeExtract %float %1243 1
+ %1246 = OpCompositeExtract %float %1243 2
+ %1248 = OpAccessChain %_ptr_StorageBuffer_float %156 %uint_0 %1222 %uint_1 %uint_3
+ %1249 = OpLoad %float %1248
+ %1250 = OpFMul %float %1244 %1249
+ %1251 = OpFMul %float %1245 %1249
+ %1252 = OpFMul %float %1246 %1249
+ %1253 = OpFMul %float %1250 %4727
+ %1254 = OpFMul %float %1251 %4727
+ %1255 = OpFMul %float %1252 %4727
+ %4797 = OpFAdd %float %1032 %4723
+ %4800 = OpFAdd %float %1033 %4724
+ %4803 = OpFAdd %float %1034 %4725
+ %4804 = OpFMul %float %4797 %4797
+ %4805 = OpFMul %float %4800 %4800
+ %4806 = OpFAdd %float %4804 %4805
+ %4807 = OpFMul %float %4803 %4803
+ %4808 = OpFAdd %float %4806 %4807
+ %4809 = OpExtInst %float %1 Sqrt %4808
+ %4810 = OpFDiv %float %float_1 %4809
+ %4811 = OpFMul %float %4797 %4810
+ %4812 = OpFMul %float %4800 %4810
+ %4813 = OpFMul %float %4803 %4810
+ %4821 = OpFMul %float %4496 %4811
+ %4824 = OpFMul %float %4499 %4812
+ %4825 = OpFAdd %float %4821 %4824
+ %4828 = OpFMul %float %4503 %4813
+ %4829 = OpFAdd %float %4825 %4828
+ %4830 = OpExtInst %float %1 FMax %4829 %float_1_1920929en07
+ %4865 = OpFMul %float %4496 %4723
+ %4868 = OpFMul %float %4499 %4724
+ %4869 = OpFAdd %float %4865 %4868
+ %4872 = OpFMul %float %4503 %4725
+ %4873 = OpFAdd %float %4869 %4872
+ %4874 = OpExtInst %float %1 FMax %4873 %float_1_1920929en07
+ %4887 = OpFMul %float %1032 %4811
+ %4890 = OpFMul %float %1033 %4812
+ %4891 = OpFAdd %float %4887 %4890
+ %4894 = OpFMul %float %1034 %4813
+ %4895 = OpFAdd %float %4891 %4894
+ %4896 = OpExtInst %float %1 FMax %4895 %float_1_1920929en07
+ %4965 = OpFSub %float %float_1 %4896
+ %4966 = OpExtInst %float %1 Pow %4965 %float_5
+ %4967 = OpFMul %float %4635 %4966
+ %4968 = OpFMul %float %4638 %4966
+ %4969 = OpFMul %float %4641 %4966
+ %4970 = OpCompositeConstruct %v3float %4967 %4968 %4969
+ %4971 = OpFAdd %v3float %4613 %4970
+ %4768 = OpFMul %float %1253 %4874
+ %4770 = OpFMul %float %1254 %4874
+ %4772 = OpFMul %float %1255 %4874
+ %4974 = OpCompositeExtract %float %4971 0
+ %4975 = OpCompositeExtract %float %4971 1
+ %4976 = OpCompositeExtract %float %4971 2
+ %4977 = OpExtInst %float %1 FMax %4975 %4976
+ %4978 = OpExtInst %float %1 FMax %4974 %4977
+ %4979 = OpFSub %float %float_1 %4978
+ %4980 = OpFMul %float %4979 %float_0_318309873
+ %4981 = OpVectorTimesScalar %v3float %4440 %4980
+ %4774 = OpCompositeConstruct %v3float %4768 %4770 %4772
+ %4775 = OpFMul %v3float %4774 %4981
+ %4991 = OpFMul %float %4830 %4830
+ %4993 = OpFMul %float %4991 %4669
+ %4994 = OpFAdd %float %4993 %float_1
+ %4995 = OpFMul %float %float_3_14159274 %4994
+ %4996 = OpFMul %float %4995 %4994
+ %4997 = OpFDiv %float %4667 %4996
+ %5006 = OpFMul %float %4874 %4682
+ %5007 = OpFMul %float %4874 %4874
+ %5009 = OpFMul %float %5007 %4679
+ %5010 = OpFAdd %float %5009 %4667
+ %5011 = OpExtInst %float %1 Sqrt %5010
+ %5012 = OpFMul %float %4529 %5011
+ %5013 = OpFAdd %float %5006 %5012
+ %5014 = OpFOrdGreaterThan %bool %5013 %float_0
+ OpSelectionMerge %5018 None
+ OpBranchConditional %5014 %5015 %5017
+ %5017 = OpLabel
+ OpBranch %5018
+ %5015 = OpLabel
+ %5016 = OpFDiv %float %float_0_5 %5013
+ OpBranch %5018
+ %5018 = OpLabel
+ %5019 = OpPhi %float %5016 %5015 %float_0 %5017
+ %4986 = OpFMul %float %4997 %5019
+ %4987 = OpVectorTimesScalar %v3float %4971 %4986
+ %4784 = OpFMul %v3float %4774 %4987
+ %5022 = OpCompositeExtract %v3float %1225 0
+ %5024 = OpFAdd %v3float %5022 %4775
+ %5025 = OpCompositeExtract %v3float %1225 1
+ %5027 = OpFAdd %v3float %5025 %4784
+ %5028 = OpCompositeConstruct %_struct_154 %5024 %5027
+ %1223 = OpIAdd %uint %1222 %uint_1
+ OpBranch %1232
+ %1232 = OpLabel
+ OpBranch %1224
+ %1224 = OpLabel
+ OpBranch %1221
OpFunctionEnd
- ; Function 12
- %12 = OpFunction %void None %308
- %1260 = OpLabel
+ ; Function 14
+ %14 = OpFunction %void None %288
+ %1277 = OpLabel
+ OpSelectionMerge %1306 None
+ OpSwitch %uint_0 %2566
+ %2566 = OpLabel
+ %1278 = OpLoad %v2float %3
+ %1279 = OpLoad %uint %15
+ %1282 = OpLoad %240 %140
+ %1283 = OpAccessChain %_ptr_StorageBuffer_v4float %158 %uint_0 %1279 %uint_0
+ %1284 = OpLoad %v4float %1283
+ %1286 = OpAccessChain %_ptr_StorageBuffer_int %158 %uint_0 %1279 %uint_4 %uint_0
+ %1287 = OpLoad %int %1286
+ %1288 = OpIEqual %bool %1287 %int_n1
OpSelectionMerge %1289 None
- OpSwitch %uint_0 %2564
- %2564 = OpLabel
- %1261 = OpLoad %v2float %13
- %1262 = OpLoad %uint %14
- %1265 = OpLoad %238 %153
- %1266 = OpAccessChain %_ptr_StorageBuffer_v4float %154 %uint_0 %1262 %uint_0
- %1267 = OpLoad %v4float %1266
- %1269 = OpAccessChain %_ptr_StorageBuffer_int %154 %uint_0 %1262 %uint_4 %uint_0
- %1270 = OpLoad %int %1269
- %1271 = OpIEqual %bool %1270 %int_n1
- OpSelectionMerge %1272 None
- OpBranchConditional %1271 %1273 %1274
- %1274 = OpLabel
- %1277 = OpLoad %int %1269
- %1278 = OpBitcast %uint %1277
- %1279 = OpAccessChain %_ptr_UniformConstant_236 %152 %1278
- %4956 = OpLoad %236 %1279
- %4957 = OpSampledImage %298 %4956 %1265
- %4958 = OpImageSampleImplicitLod %v4float %4957 %1261
- %1281 = OpFMul %v4float %1267 %4958
- OpBranch %1272
- %1273 = OpLabel
- OpBranch %1272
- %1272 = OpLabel
- %1282 = OpPhi %v4float %1267 %1273 %1281 %1274
- %1283 = OpCompositeExtract %float %1282 3
- %1284 = OpAccessChain %_ptr_StorageBuffer_float %154 %uint_0 %1262 %uint_7
- %1285 = OpLoad %float %1284
- %1286 = OpFOrdLessThan %bool %1283 %1285
- OpSelectionMerge %1287 None
- OpBranchConditional %1286 %1288 %1289
+ OpBranchConditional %1288 %1290 %1291
+ %1291 = OpLabel
+ %1294 = OpLoad %int %1286
+ %1295 = OpBitcast %uint %1294
+ %1296 = OpAccessChain %_ptr_UniformConstant_238 %157 %1295
+ %5031 = OpLoad %238 %1296
+ %5032 = OpSampledImage %303 %5031 %1282
+ %5033 = OpImageSampleImplicitLod %v4float %5032 %1278
+ %1298 = OpFMul %v4float %1284 %5033
+ OpBranch %1289
+ %1290 = OpLabel
+ OpBranch %1289
%1289 = OpLabel
+ %1299 = OpPhi %v4float %1284 %1290 %1298 %1291
+ %1300 = OpCompositeExtract %float %1299 3
+ %1301 = OpAccessChain %_ptr_StorageBuffer_float %158 %uint_0 %1279 %uint_7
+ %1302 = OpLoad %float %1301
+ %1303 = OpFOrdLessThan %bool %1300 %1302
+ OpSelectionMerge %1304 None
+ OpBranchConditional %1303 %1305 %1306
+ %1306 = OpLabel
OpReturn
- %1288 = OpLabel
+ %1305 = OpLabel
OpKill
- %1287 = OpLabel
+ %1304 = OpLabel
OpUnreachable
OpFunctionEnd
- ; Function 15
- %15 = OpFunction %void None %308
- %1291 = OpLabel
- %1292 = OpLoad %v3float %3
- %1293 = OpLoad %v2float %16
- %1294 = OpLoad %uint %17
- %1296 = OpLoad %uint %gl_InstanceIndex
- %1299 = OpAccessChain %_ptr_StorageBuffer__struct_144 %158 %uint_0 %1296 %uint_0
- %1300 = OpLoad %_struct_144 %1299
- %4964 = OpCompositeExtract %v4float %1300 0
- %4965 = OpCompositeExtract %float %4964 0
- %4966 = OpCompositeExtract %float %4964 1
- %4967 = OpCompositeExtract %float %4964 2
- %4968 = OpCompositeConstruct %v3float %4965 %4966 %4967
- %4969 = OpCompositeExtract %float %1300 0 3
- %4970 = OpCompositeExtract %v4float %1300 1
- %4977 = OpCompositeExtract %float %4970 3
- %4978 = OpCompositeExtract %float %4970 0
- %4979 = OpCompositeExtract %float %4970 1
- %4980 = OpCompositeExtract %float %4970 2
- %4981 = OpFMul %float %4978 %4978
- %4982 = OpFMul %float %4979 %4979
- %4983 = OpFAdd %float %4981 %4982
- %4984 = OpFMul %float %4980 %4980
- %4985 = OpFAdd %float %4983 %4984
- %4986 = OpFMul %float %4977 %4977
- %4987 = OpFSub %float %4986 %4985
- %4988 = OpCompositeExtract %float %1292 0
- %4989 = OpFMul %float %4988 %4987
- %4990 = OpCompositeExtract %float %1292 1
- %4991 = OpFMul %float %4990 %4987
- %4992 = OpCompositeExtract %float %1292 2
- %4993 = OpFMul %float %4992 %4987
- %4995 = OpFMul %float %4988 %4978
- %4997 = OpFMul %float %4990 %4979
- %4998 = OpFAdd %float %4995 %4997
- %5000 = OpFMul %float %4992 %4980
- %5001 = OpFAdd %float %4998 %5000
- %5002 = OpFMul %float %5001 %float_2
- %5003 = OpFMul %float %4978 %5002
- %5004 = OpFMul %float %4979 %5002
- %5005 = OpFMul %float %4980 %5002
- %5006 = OpFAdd %float %4989 %5003
- %5007 = OpFAdd %float %4991 %5004
- %5008 = OpFAdd %float %4993 %5005
- %5010 = OpFMul %float %4979 %4992
- %5012 = OpFMul %float %4990 %4980
- %5013 = OpFSub %float %5010 %5012
- %5015 = OpFMul %float %4980 %4988
- %5017 = OpFMul %float %4992 %4978
- %5018 = OpFSub %float %5015 %5017
- %5020 = OpFMul %float %4978 %4990
- %5022 = OpFMul %float %4988 %4979
- %5023 = OpFSub %float %5020 %5022
- %5024 = OpFMul %float %4977 %float_2
- %5025 = OpFMul %float %5013 %5024
- %5026 = OpFMul %float %5018 %5024
- %5027 = OpFMul %float %5023 %5024
- %5028 = OpFAdd %float %5006 %5025
- %5029 = OpFAdd %float %5007 %5026
- %5030 = OpFAdd %float %5008 %5027
- %5031 = OpFMul %float %4969 %5028
- %5032 = OpFMul %float %4969 %5029
- %5033 = OpFMul %float %4969 %5030
- %5034 = OpCompositeConstruct %v3float %5031 %5032 %5033
- %5035 = OpFAdd %v3float %4968 %5034
- OpStore %20 %1293
- OpStore %21 %1294
- %1303 = OpAccessChain %_ptr_PushConstant__struct_131 %150 %uint_0 %uint_0
- %1304 = OpLoad %_struct_131 %1303
- %1305 = OpCompositeExtract %float %5035 0
- %1306 = OpCompositeExtract %float %5035 1
- %1307 = OpCompositeExtract %float %5035 2
- %1308 = OpCompositeExtract %v4float %1304 0 0
- %1309 = OpCompositeExtract %float %1308 0
- %1310 = OpFMul %float %1309 %1305
- %1311 = OpCompositeExtract %float %1308 1
- %1312 = OpFMul %float %1311 %1305
- %1313 = OpCompositeExtract %float %1308 2
- %1314 = OpFMul %float %1313 %1305
- %1315 = OpCompositeExtract %float %1308 3
- %1316 = OpFMul %float %1315 %1305
- %1317 = OpCompositeExtract %v4float %1304 0 1
- %1318 = OpCompositeExtract %float %1317 0
- %1319 = OpFMul %float %1318 %1306
- %1320 = OpFAdd %float %1319 %1310
- %1321 = OpCompositeExtract %float %1317 1
- %1322 = OpFMul %float %1321 %1306
- %1323 = OpFAdd %float %1322 %1312
- %1324 = OpCompositeExtract %float %1317 2
- %1325 = OpFMul %float %1324 %1306
- %1326 = OpFAdd %float %1325 %1314
- %1327 = OpCompositeExtract %float %1317 3
- %1328 = OpFMul %float %1327 %1306
- %1329 = OpFAdd %float %1328 %1316
- %1330 = OpCompositeExtract %v4float %1304 0 2
- %1331 = OpCompositeExtract %float %1330 0
- %1332 = OpFMul %float %1331 %1307
- %1333 = OpFAdd %float %1332 %1320
- %1334 = OpCompositeExtract %float %1330 1
- %1335 = OpFMul %float %1334 %1307
- %1336 = OpFAdd %float %1335 %1323
- %1337 = OpCompositeExtract %float %1330 2
- %1338 = OpFMul %float %1337 %1307
- %1339 = OpFAdd %float %1338 %1326
- %1340 = OpCompositeExtract %float %1330 3
- %1341 = OpFMul %float %1340 %1307
- %1342 = OpFAdd %float %1341 %1329
- %1343 = OpCompositeExtract %v4float %1304 0 3
- %1344 = OpCompositeExtract %float %1343 0
- %1346 = OpFAdd %float %1344 %1333
- %1347 = OpCompositeExtract %float %1343 1
- %1349 = OpFAdd %float %1347 %1336
- %1350 = OpCompositeExtract %float %1343 2
- %1352 = OpFAdd %float %1350 %1339
- %1353 = OpCompositeExtract %float %1343 3
- %1355 = OpFAdd %float %1353 %1342
- %1356 = OpCompositeConstruct %v4float %1346 %1349 %1352 %1355
- OpStore %gl_Position %1356
- OpReturn
- OpFunctionEnd
-
- ; Function 22
- %22 = OpFunction %void None %308
- %1357 = OpLabel
- %1358 = OpLoad %v3float %3
- %1360 = OpLoad %uint %gl_InstanceIndex
- %1363 = OpAccessChain %_ptr_StorageBuffer__struct_144 %158 %uint_0 %1360 %uint_0
- %1364 = OpLoad %_struct_144 %1363
- %5038 = OpCompositeExtract %v4float %1364 0
- %5039 = OpCompositeExtract %float %5038 0
- %5040 = OpCompositeExtract %float %5038 1
- %5041 = OpCompositeExtract %float %5038 2
- %5042 = OpCompositeConstruct %v3float %5039 %5040 %5041
- %5043 = OpCompositeExtract %float %1364 0 3
- %5044 = OpCompositeExtract %v4float %1364 1
- %5051 = OpCompositeExtract %float %5044 3
- %5052 = OpCompositeExtract %float %5044 0
- %5053 = OpCompositeExtract %float %5044 1
- %5054 = OpCompositeExtract %float %5044 2
- %5055 = OpFMul %float %5052 %5052
+ ; Function 16
+ %16 = OpFunction %void None %288
+ %1308 = OpLabel
+ %1309 = OpLoad %v3float %6
+ %1310 = OpLoad %v2float %17
+ %1311 = OpLoad %uint %18
+ %1313 = OpLoad %uint %gl_InstanceIndex
+ %1316 = OpAccessChain %_ptr_StorageBuffer__struct_149 %162 %uint_0 %1313 %uint_0
+ %1317 = OpLoad %_struct_149 %1316
+ %5039 = OpCompositeExtract %v4float %1317 0
+ %5040 = OpCompositeExtract %float %5039 0
+ %5041 = OpCompositeExtract %float %5039 1
+ %5042 = OpCompositeExtract %float %5039 2
+ %5043 = OpCompositeConstruct %v3float %5040 %5041 %5042
+ %5044 = OpCompositeExtract %float %1317 0 3
+ %5045 = OpCompositeExtract %v4float %1317 1
+ %5052 = OpCompositeExtract %float %5045 3
+ %5053 = OpCompositeExtract %float %5045 0
+ %5054 = OpCompositeExtract %float %5045 1
+ %5055 = OpCompositeExtract %float %5045 2
%5056 = OpFMul %float %5053 %5053
- %5057 = OpFAdd %float %5055 %5056
- %5058 = OpFMul %float %5054 %5054
- %5059 = OpFAdd %float %5057 %5058
- %5060 = OpFMul %float %5051 %5051
- %5061 = OpFSub %float %5060 %5059
- %5062 = OpCompositeExtract %float %1358 0
- %5063 = OpFMul %float %5062 %5061
- %5064 = OpCompositeExtract %float %1358 1
- %5065 = OpFMul %float %5064 %5061
- %5066 = OpCompositeExtract %float %1358 2
- %5067 = OpFMul %float %5066 %5061
- %5069 = OpFMul %float %5062 %5052
- %5071 = OpFMul %float %5064 %5053
- %5072 = OpFAdd %float %5069 %5071
- %5074 = OpFMul %float %5066 %5054
- %5075 = OpFAdd %float %5072 %5074
- %5076 = OpFMul %float %5075 %float_2
- %5077 = OpFMul %float %5052 %5076
- %5078 = OpFMul %float %5053 %5076
- %5079 = OpFMul %float %5054 %5076
- %5080 = OpFAdd %float %5063 %5077
- %5081 = OpFAdd %float %5065 %5078
- %5082 = OpFAdd %float %5067 %5079
- %5084 = OpFMul %float %5053 %5066
- %5086 = OpFMul %float %5064 %5054
- %5087 = OpFSub %float %5084 %5086
- %5089 = OpFMul %float %5054 %5062
- %5091 = OpFMul %float %5066 %5052
- %5092 = OpFSub %float %5089 %5091
- %5094 = OpFMul %float %5052 %5064
- %5096 = OpFMul %float %5062 %5053
- %5097 = OpFSub %float %5094 %5096
- %5098 = OpFMul %float %5051 %float_2
- %5099 = OpFMul %float %5087 %5098
- %5100 = OpFMul %float %5092 %5098
- %5101 = OpFMul %float %5097 %5098
- %5102 = OpFAdd %float %5080 %5099
+ %5057 = OpFMul %float %5054 %5054
+ %5058 = OpFAdd %float %5056 %5057
+ %5059 = OpFMul %float %5055 %5055
+ %5060 = OpFAdd %float %5058 %5059
+ %5061 = OpFMul %float %5052 %5052
+ %5062 = OpFSub %float %5061 %5060
+ %5063 = OpCompositeExtract %float %1309 0
+ %5064 = OpFMul %float %5063 %5062
+ %5065 = OpCompositeExtract %float %1309 1
+ %5066 = OpFMul %float %5065 %5062
+ %5067 = OpCompositeExtract %float %1309 2
+ %5068 = OpFMul %float %5067 %5062
+ %5070 = OpFMul %float %5063 %5053
+ %5072 = OpFMul %float %5065 %5054
+ %5073 = OpFAdd %float %5070 %5072
+ %5075 = OpFMul %float %5067 %5055
+ %5076 = OpFAdd %float %5073 %5075
+ %5077 = OpFMul %float %5076 %float_2
+ %5078 = OpFMul %float %5053 %5077
+ %5079 = OpFMul %float %5054 %5077
+ %5080 = OpFMul %float %5055 %5077
+ %5081 = OpFAdd %float %5064 %5078
+ %5082 = OpFAdd %float %5066 %5079
+ %5083 = OpFAdd %float %5068 %5080
+ %5085 = OpFMul %float %5054 %5067
+ %5087 = OpFMul %float %5065 %5055
+ %5088 = OpFSub %float %5085 %5087
+ %5090 = OpFMul %float %5055 %5063
+ %5092 = OpFMul %float %5067 %5053
+ %5093 = OpFSub %float %5090 %5092
+ %5095 = OpFMul %float %5053 %5065
+ %5097 = OpFMul %float %5063 %5054
+ %5098 = OpFSub %float %5095 %5097
+ %5099 = OpFMul %float %5052 %float_2
+ %5100 = OpFMul %float %5088 %5099
+ %5101 = OpFMul %float %5093 %5099
+ %5102 = OpFMul %float %5098 %5099
%5103 = OpFAdd %float %5081 %5100
%5104 = OpFAdd %float %5082 %5101
- %5105 = OpFMul %float %5043 %5102
- %5106 = OpFMul %float %5043 %5103
- %5107 = OpFMul %float %5043 %5104
- %5108 = OpCompositeConstruct %v3float %5105 %5106 %5107
- %5109 = OpFAdd %v3float %5042 %5108
- %1367 = OpAccessChain %_ptr_PushConstant__struct_131 %150 %uint_0 %uint_0
- %1368 = OpLoad %_struct_131 %1367
- %1369 = OpCompositeExtract %float %5109 0
- %1370 = OpCompositeExtract %float %5109 1
- %1371 = OpCompositeExtract %float %5109 2
- %1372 = OpCompositeExtract %v4float %1368 0 0
- %1373 = OpCompositeExtract %float %1372 0
- %1374 = OpFMul %float %1373 %1369
- %1375 = OpCompositeExtract %float %1372 1
- %1376 = OpFMul %float %1375 %1369
- %1377 = OpCompositeExtract %float %1372 2
- %1378 = OpFMul %float %1377 %1369
- %1379 = OpCompositeExtract %float %1372 3
- %1380 = OpFMul %float %1379 %1369
- %1381 = OpCompositeExtract %v4float %1368 0 1
- %1382 = OpCompositeExtract %float %1381 0
- %1383 = OpFMul %float %1382 %1370
- %1384 = OpFAdd %float %1383 %1374
- %1385 = OpCompositeExtract %float %1381 1
- %1386 = OpFMul %float %1385 %1370
- %1387 = OpFAdd %float %1386 %1376
- %1388 = OpCompositeExtract %float %1381 2
- %1389 = OpFMul %float %1388 %1370
- %1390 = OpFAdd %float %1389 %1378
- %1391 = OpCompositeExtract %float %1381 3
- %1392 = OpFMul %float %1391 %1370
- %1393 = OpFAdd %float %1392 %1380
- %1394 = OpCompositeExtract %v4float %1368 0 2
- %1395 = OpCompositeExtract %float %1394 0
- %1396 = OpFMul %float %1395 %1371
- %1397 = OpFAdd %float %1396 %1384
- %1398 = OpCompositeExtract %float %1394 1
- %1399 = OpFMul %float %1398 %1371
- %1400 = OpFAdd %float %1399 %1387
- %1401 = OpCompositeExtract %float %1394 2
- %1402 = OpFMul %float %1401 %1371
- %1403 = OpFAdd %float %1402 %1390
- %1404 = OpCompositeExtract %float %1394 3
- %1405 = OpFMul %float %1404 %1371
- %1406 = OpFAdd %float %1405 %1393
- %1407 = OpCompositeExtract %v4float %1368 0 3
- %1408 = OpCompositeExtract %float %1407 0
- %1410 = OpFAdd %float %1408 %1397
- %1411 = OpCompositeExtract %float %1407 1
- %1413 = OpFAdd %float %1411 %1400
- %1414 = OpCompositeExtract %float %1407 2
- %1416 = OpFAdd %float %1414 %1403
- %1417 = OpCompositeExtract %float %1407 3
- %1419 = OpFAdd %float %1417 %1406
- %1420 = OpCompositeConstruct %v4float %1410 %1413 %1416 %1419
- OpStore %gl_Position %1420
+ %5105 = OpFAdd %float %5083 %5102
+ %5106 = OpFMul %float %5044 %5103
+ %5107 = OpFMul %float %5044 %5104
+ %5108 = OpFMul %float %5044 %5105
+ %5109 = OpCompositeConstruct %v3float %5106 %5107 %5108
+ %5110 = OpFAdd %v3float %5043 %5109
+ OpStore %21 %1310
+ OpStore %22 %1311
+ %1320 = OpAccessChain %_ptr_PushConstant__struct_133 %155 %uint_0 %uint_0
+ %1321 = OpLoad %_struct_133 %1320
+ %1322 = OpCompositeExtract %float %5110 0
+ %1323 = OpCompositeExtract %float %5110 1
+ %1324 = OpCompositeExtract %float %5110 2
+ %1325 = OpCompositeExtract %v4float %1321 0 0
+ %1326 = OpCompositeExtract %float %1325 0
+ %1327 = OpFMul %float %1326 %1322
+ %1328 = OpCompositeExtract %float %1325 1
+ %1329 = OpFMul %float %1328 %1322
+ %1330 = OpCompositeExtract %float %1325 2
+ %1331 = OpFMul %float %1330 %1322
+ %1332 = OpCompositeExtract %float %1325 3
+ %1333 = OpFMul %float %1332 %1322
+ %1334 = OpCompositeExtract %v4float %1321 0 1
+ %1335 = OpCompositeExtract %float %1334 0
+ %1336 = OpFMul %float %1335 %1323
+ %1337 = OpFAdd %float %1336 %1327
+ %1338 = OpCompositeExtract %float %1334 1
+ %1339 = OpFMul %float %1338 %1323
+ %1340 = OpFAdd %float %1339 %1329
+ %1341 = OpCompositeExtract %float %1334 2
+ %1342 = OpFMul %float %1341 %1323
+ %1343 = OpFAdd %float %1342 %1331
+ %1344 = OpCompositeExtract %float %1334 3
+ %1345 = OpFMul %float %1344 %1323
+ %1346 = OpFAdd %float %1345 %1333
+ %1347 = OpCompositeExtract %v4float %1321 0 2
+ %1348 = OpCompositeExtract %float %1347 0
+ %1349 = OpFMul %float %1348 %1324
+ %1350 = OpFAdd %float %1349 %1337
+ %1351 = OpCompositeExtract %float %1347 1
+ %1352 = OpFMul %float %1351 %1324
+ %1353 = OpFAdd %float %1352 %1340
+ %1354 = OpCompositeExtract %float %1347 2
+ %1355 = OpFMul %float %1354 %1324
+ %1356 = OpFAdd %float %1355 %1343
+ %1357 = OpCompositeExtract %float %1347 3
+ %1358 = OpFMul %float %1357 %1324
+ %1359 = OpFAdd %float %1358 %1346
+ %1360 = OpCompositeExtract %v4float %1321 0 3
+ %1361 = OpCompositeExtract %float %1360 0
+ %1363 = OpFAdd %float %1361 %1350
+ %1364 = OpCompositeExtract %float %1360 1
+ %1366 = OpFAdd %float %1364 %1353
+ %1367 = OpCompositeExtract %float %1360 2
+ %1369 = OpFAdd %float %1367 %1356
+ %1370 = OpCompositeExtract %float %1360 3
+ %1372 = OpFAdd %float %1370 %1359
+ %1373 = OpCompositeConstruct %v4float %1363 %1366 %1369 %1372
+ OpStore %gl_Position %1373
OpReturn
OpFunctionEnd
; Function 23
- %23 = OpFunction %void None %308
- %1421 = OpLabel
- %1422 = OpLoad %v3float %3
- %1423 = OpLoad %v3float %4
- %1424 = OpLoad %v2float %5
- %1425 = OpLoad %uint %24
- %1427 = OpLoad %uint %gl_InstanceIndex
- %1430 = OpAccessChain %_ptr_StorageBuffer__struct_144 %158 %uint_0 %1427 %uint_0
- %1431 = OpLoad %_struct_144 %1430
- %5112 = OpCompositeExtract %v4float %1431 0
- %5113 = OpCompositeExtract %float %5112 0
- %5114 = OpCompositeExtract %float %5112 1
- %5115 = OpCompositeExtract %float %5112 2
- %5116 = OpCompositeConstruct %v3float %5113 %5114 %5115
- %5117 = OpCompositeExtract %float %1431 0 3
- %5118 = OpCompositeExtract %v4float %1431 1
- %5125 = OpCompositeExtract %float %5118 3
- %5126 = OpCompositeExtract %float %5118 0
- %5127 = OpCompositeExtract %float %5118 1
- %5128 = OpCompositeExtract %float %5118 2
- %5129 = OpFMul %float %5126 %5126
+ %23 = OpFunction %void None %288
+ %1374 = OpLabel
+ %1375 = OpLoad %v3float %6
+ %1377 = OpLoad %uint %gl_InstanceIndex
+ %1380 = OpAccessChain %_ptr_StorageBuffer__struct_149 %162 %uint_0 %1377 %uint_0
+ %1381 = OpLoad %_struct_149 %1380
+ %5113 = OpCompositeExtract %v4float %1381 0
+ %5114 = OpCompositeExtract %float %5113 0
+ %5115 = OpCompositeExtract %float %5113 1
+ %5116 = OpCompositeExtract %float %5113 2
+ %5117 = OpCompositeConstruct %v3float %5114 %5115 %5116
+ %5118 = OpCompositeExtract %float %1381 0 3
+ %5119 = OpCompositeExtract %v4float %1381 1
+ %5126 = OpCompositeExtract %float %5119 3
+ %5127 = OpCompositeExtract %float %5119 0
+ %5128 = OpCompositeExtract %float %5119 1
+ %5129 = OpCompositeExtract %float %5119 2
%5130 = OpFMul %float %5127 %5127
- %5131 = OpFAdd %float %5129 %5130
- %5132 = OpFMul %float %5128 %5128
- %5133 = OpFAdd %float %5131 %5132
- %5134 = OpFMul %float %5125 %5125
- %5135 = OpFSub %float %5134 %5133
- %5136 = OpCompositeExtract %float %1422 0
- %5137 = OpFMul %float %5136 %5135
- %5138 = OpCompositeExtract %float %1422 1
- %5139 = OpFMul %float %5138 %5135
- %5140 = OpCompositeExtract %float %1422 2
- %5141 = OpFMul %float %5140 %5135
- %5143 = OpFMul %float %5136 %5126
- %5145 = OpFMul %float %5138 %5127
- %5146 = OpFAdd %float %5143 %5145
- %5148 = OpFMul %float %5140 %5128
- %5149 = OpFAdd %float %5146 %5148
- %5150 = OpFMul %float %5149 %float_2
- %5151 = OpFMul %float %5126 %5150
- %5152 = OpFMul %float %5127 %5150
- %5153 = OpFMul %float %5128 %5150
- %5154 = OpFAdd %float %5137 %5151
- %5155 = OpFAdd %float %5139 %5152
- %5156 = OpFAdd %float %5141 %5153
- %5158 = OpFMul %float %5127 %5140
- %5160 = OpFMul %float %5138 %5128
- %5161 = OpFSub %float %5158 %5160
- %5163 = OpFMul %float %5128 %5136
- %5165 = OpFMul %float %5140 %5126
- %5166 = OpFSub %float %5163 %5165
- %5168 = OpFMul %float %5126 %5138
- %5170 = OpFMul %float %5136 %5127
- %5171 = OpFSub %float %5168 %5170
- %5172 = OpFMul %float %5125 %float_2
- %5173 = OpFMul %float %5161 %5172
- %5174 = OpFMul %float %5166 %5172
- %5175 = OpFMul %float %5171 %5172
- %5176 = OpFAdd %float %5154 %5173
+ %5131 = OpFMul %float %5128 %5128
+ %5132 = OpFAdd %float %5130 %5131
+ %5133 = OpFMul %float %5129 %5129
+ %5134 = OpFAdd %float %5132 %5133
+ %5135 = OpFMul %float %5126 %5126
+ %5136 = OpFSub %float %5135 %5134
+ %5137 = OpCompositeExtract %float %1375 0
+ %5138 = OpFMul %float %5137 %5136
+ %5139 = OpCompositeExtract %float %1375 1
+ %5140 = OpFMul %float %5139 %5136
+ %5141 = OpCompositeExtract %float %1375 2
+ %5142 = OpFMul %float %5141 %5136
+ %5144 = OpFMul %float %5137 %5127
+ %5146 = OpFMul %float %5139 %5128
+ %5147 = OpFAdd %float %5144 %5146
+ %5149 = OpFMul %float %5141 %5129
+ %5150 = OpFAdd %float %5147 %5149
+ %5151 = OpFMul %float %5150 %float_2
+ %5152 = OpFMul %float %5127 %5151
+ %5153 = OpFMul %float %5128 %5151
+ %5154 = OpFMul %float %5129 %5151
+ %5155 = OpFAdd %float %5138 %5152
+ %5156 = OpFAdd %float %5140 %5153
+ %5157 = OpFAdd %float %5142 %5154
+ %5159 = OpFMul %float %5128 %5141
+ %5161 = OpFMul %float %5139 %5129
+ %5162 = OpFSub %float %5159 %5161
+ %5164 = OpFMul %float %5129 %5137
+ %5166 = OpFMul %float %5141 %5127
+ %5167 = OpFSub %float %5164 %5166
+ %5169 = OpFMul %float %5127 %5139
+ %5171 = OpFMul %float %5137 %5128
+ %5172 = OpFSub %float %5169 %5171
+ %5173 = OpFMul %float %5126 %float_2
+ %5174 = OpFMul %float %5162 %5173
+ %5175 = OpFMul %float %5167 %5173
+ %5176 = OpFMul %float %5172 %5173
%5177 = OpFAdd %float %5155 %5174
%5178 = OpFAdd %float %5156 %5175
- %5179 = OpFMul %float %5117 %5176
- %5180 = OpFMul %float %5117 %5177
- %5181 = OpFMul %float %5117 %5178
- %5182 = OpCompositeConstruct %v3float %5179 %5180 %5181
- %5183 = OpFAdd %v3float %5116 %5182
- OpStore %25 %5183
- %1446 = OpCompositeExtract %float %1423 0
- %1447 = OpFMul %float %1446 %5135
- %1448 = OpCompositeExtract %float %1423 1
- %1449 = OpFMul %float %1448 %5135
- %1450 = OpCompositeExtract %float %1423 2
- %1451 = OpFMul %float %1450 %5135
- %1453 = OpFMul %float %1446 %5126
- %1455 = OpFMul %float %1448 %5127
- %1456 = OpFAdd %float %1453 %1455
- %1458 = OpFMul %float %1450 %5128
- %1459 = OpFAdd %float %1456 %1458
- %1460 = OpFMul %float %1459 %float_2
- %1461 = OpFMul %float %5126 %1460
- %1462 = OpFMul %float %5127 %1460
- %1463 = OpFMul %float %5128 %1460
- %1464 = OpFAdd %float %1447 %1461
- %1465 = OpFAdd %float %1449 %1462
- %1466 = OpFAdd %float %1451 %1463
- %1468 = OpFMul %float %5127 %1450
- %1470 = OpFMul %float %1448 %5128
- %1471 = OpFSub %float %1468 %1470
- %1473 = OpFMul %float %5128 %1446
- %1475 = OpFMul %float %1450 %5126
- %1476 = OpFSub %float %1473 %1475
- %1478 = OpFMul %float %5126 %1448
- %1480 = OpFMul %float %1446 %5127
- %1481 = OpFSub %float %1478 %1480
- %1483 = OpFMul %float %1471 %5172
- %1484 = OpFMul %float %1476 %5172
- %1485 = OpFMul %float %1481 %5172
- %1486 = OpFAdd %float %1464 %1483
- %1487 = OpFAdd %float %1465 %1484
- %1488 = OpFAdd %float %1466 %1485
- %1489 = OpCompositeConstruct %v3float %1486 %1487 %1488
- OpStore %26 %1489
- OpStore %27 %1424
- OpStore %28 %1425
- %1490 = OpAccessChain %_ptr_PushConstant__struct_131 %150 %uint_0 %uint_0
- %1491 = OpLoad %_struct_131 %1490
- %1492 = OpCompositeExtract %float %5183 0
- %1493 = OpCompositeExtract %float %5183 1
- %1494 = OpCompositeExtract %float %5183 2
- %1495 = OpCompositeExtract %v4float %1491 0 0
- %1496 = OpCompositeExtract %float %1495 0
- %1497 = OpFMul %float %1496 %1492
- %1498 = OpCompositeExtract %float %1495 1
- %1499 = OpFMul %float %1498 %1492
- %1500 = OpCompositeExtract %float %1495 2
- %1501 = OpFMul %float %1500 %1492
- %1502 = OpCompositeExtract %float %1495 3
- %1503 = OpFMul %float %1502 %1492
- %1504 = OpCompositeExtract %v4float %1491 0 1
- %1505 = OpCompositeExtract %float %1504 0
- %1506 = OpFMul %float %1505 %1493
- %1507 = OpFAdd %float %1506 %1497
- %1508 = OpCompositeExtract %float %1504 1
- %1509 = OpFMul %float %1508 %1493
- %1510 = OpFAdd %float %1509 %1499
- %1511 = OpCompositeExtract %float %1504 2
- %1512 = OpFMul %float %1511 %1493
- %1513 = OpFAdd %float %1512 %1501
- %1514 = OpCompositeExtract %float %1504 3
- %1515 = OpFMul %float %1514 %1493
- %1516 = OpFAdd %float %1515 %1503
- %1517 = OpCompositeExtract %v4float %1491 0 2
- %1518 = OpCompositeExtract %float %1517 0
- %1519 = OpFMul %float %1518 %1494
- %1520 = OpFAdd %float %1519 %1507
- %1521 = OpCompositeExtract %float %1517 1
- %1522 = OpFMul %float %1521 %1494
- %1523 = OpFAdd %float %1522 %1510
- %1524 = OpCompositeExtract %float %1517 2
- %1525 = OpFMul %float %1524 %1494
- %1526 = OpFAdd %float %1525 %1513
- %1527 = OpCompositeExtract %float %1517 3
- %1528 = OpFMul %float %1527 %1494
- %1529 = OpFAdd %float %1528 %1516
- %1530 = OpCompositeExtract %v4float %1491 0 3
- %1531 = OpCompositeExtract %float %1530 0
- %1533 = OpFAdd %float %1531 %1520
- %1534 = OpCompositeExtract %float %1530 1
- %1536 = OpFAdd %float %1534 %1523
- %1537 = OpCompositeExtract %float %1530 2
- %1539 = OpFAdd %float %1537 %1526
- %1540 = OpCompositeExtract %float %1530 3
- %1542 = OpFAdd %float %1540 %1529
- %1543 = OpCompositeConstruct %v4float %1533 %1536 %1539 %1542
- OpStore %gl_Position %1543
+ %5179 = OpFAdd %float %5157 %5176
+ %5180 = OpFMul %float %5118 %5177
+ %5181 = OpFMul %float %5118 %5178
+ %5182 = OpFMul %float %5118 %5179
+ %5183 = OpCompositeConstruct %v3float %5180 %5181 %5182
+ %5184 = OpFAdd %v3float %5117 %5183
+ %1384 = OpAccessChain %_ptr_PushConstant__struct_133 %155 %uint_0 %uint_0
+ %1385 = OpLoad %_struct_133 %1384
+ %1386 = OpCompositeExtract %float %5184 0
+ %1387 = OpCompositeExtract %float %5184 1
+ %1388 = OpCompositeExtract %float %5184 2
+ %1389 = OpCompositeExtract %v4float %1385 0 0
+ %1390 = OpCompositeExtract %float %1389 0
+ %1391 = OpFMul %float %1390 %1386
+ %1392 = OpCompositeExtract %float %1389 1
+ %1393 = OpFMul %float %1392 %1386
+ %1394 = OpCompositeExtract %float %1389 2
+ %1395 = OpFMul %float %1394 %1386
+ %1396 = OpCompositeExtract %float %1389 3
+ %1397 = OpFMul %float %1396 %1386
+ %1398 = OpCompositeExtract %v4float %1385 0 1
+ %1399 = OpCompositeExtract %float %1398 0
+ %1400 = OpFMul %float %1399 %1387
+ %1401 = OpFAdd %float %1400 %1391
+ %1402 = OpCompositeExtract %float %1398 1
+ %1403 = OpFMul %float %1402 %1387
+ %1404 = OpFAdd %float %1403 %1393
+ %1405 = OpCompositeExtract %float %1398 2
+ %1406 = OpFMul %float %1405 %1387
+ %1407 = OpFAdd %float %1406 %1395
+ %1408 = OpCompositeExtract %float %1398 3
+ %1409 = OpFMul %float %1408 %1387
+ %1410 = OpFAdd %float %1409 %1397
+ %1411 = OpCompositeExtract %v4float %1385 0 2
+ %1412 = OpCompositeExtract %float %1411 0
+ %1413 = OpFMul %float %1412 %1388
+ %1414 = OpFAdd %float %1413 %1401
+ %1415 = OpCompositeExtract %float %1411 1
+ %1416 = OpFMul %float %1415 %1388
+ %1417 = OpFAdd %float %1416 %1404
+ %1418 = OpCompositeExtract %float %1411 2
+ %1419 = OpFMul %float %1418 %1388
+ %1420 = OpFAdd %float %1419 %1407
+ %1421 = OpCompositeExtract %float %1411 3
+ %1422 = OpFMul %float %1421 %1388
+ %1423 = OpFAdd %float %1422 %1410
+ %1424 = OpCompositeExtract %v4float %1385 0 3
+ %1425 = OpCompositeExtract %float %1424 0
+ %1427 = OpFAdd %float %1425 %1414
+ %1428 = OpCompositeExtract %float %1424 1
+ %1430 = OpFAdd %float %1428 %1417
+ %1431 = OpCompositeExtract %float %1424 2
+ %1433 = OpFAdd %float %1431 %1420
+ %1434 = OpCompositeExtract %float %1424 3
+ %1436 = OpFAdd %float %1434 %1423
+ %1437 = OpCompositeConstruct %v4float %1427 %1430 %1433 %1436
+ OpStore %gl_Position %1437
OpReturn
OpFunctionEnd
- ; Function 29
- %29 = OpFunction %void None %308
- %1544 = OpLabel
- %1545 = OpLoad %v3float %3
- %1546 = OpLoad %v3float %4
- %1547 = OpLoad %v2float %5
- %1548 = OpLoad %uint %24
- %1550 = OpLoad %uint %gl_InstanceIndex
- %1553 = OpAccessChain %_ptr_StorageBuffer__struct_144 %158 %uint_0 %1550 %uint_0
- %1554 = OpLoad %_struct_144 %1553
- %5186 = OpCompositeExtract %v4float %1554 0
- %5187 = OpCompositeExtract %float %5186 0
- %5188 = OpCompositeExtract %float %5186 1
- %5189 = OpCompositeExtract %float %5186 2
- %5190 = OpCompositeConstruct %v3float %5187 %5188 %5189
- %5191 = OpCompositeExtract %float %1554 0 3
- %5192 = OpCompositeExtract %v4float %1554 1
- %5199 = OpCompositeExtract %float %5192 3
- %5200 = OpCompositeExtract %float %5192 0
- %5201 = OpCompositeExtract %float %5192 1
- %5202 = OpCompositeExtract %float %5192 2
- %5203 = OpFMul %float %5200 %5200
+ ; Function 24
+ %24 = OpFunction %void None %288
+ %1438 = OpLabel
+ %1439 = OpLoad %v3float %6
+ %1440 = OpLoad %v3float %7
+ %1441 = OpLoad %v2float %8
+ %1442 = OpLoad %uint %25
+ %1444 = OpLoad %uint %gl_InstanceIndex
+ %1447 = OpAccessChain %_ptr_StorageBuffer__struct_149 %162 %uint_0 %1444 %uint_0
+ %1448 = OpLoad %_struct_149 %1447
+ %5187 = OpCompositeExtract %v4float %1448 0
+ %5188 = OpCompositeExtract %float %5187 0
+ %5189 = OpCompositeExtract %float %5187 1
+ %5190 = OpCompositeExtract %float %5187 2
+ %5191 = OpCompositeConstruct %v3float %5188 %5189 %5190
+ %5192 = OpCompositeExtract %float %1448 0 3
+ %5193 = OpCompositeExtract %v4float %1448 1
+ %5200 = OpCompositeExtract %float %5193 3
+ %5201 = OpCompositeExtract %float %5193 0
+ %5202 = OpCompositeExtract %float %5193 1
+ %5203 = OpCompositeExtract %float %5193 2
%5204 = OpFMul %float %5201 %5201
- %5205 = OpFAdd %float %5203 %5204
- %5206 = OpFMul %float %5202 %5202
- %5207 = OpFAdd %float %5205 %5206
- %5208 = OpFMul %float %5199 %5199
- %5209 = OpFSub %float %5208 %5207
- %5210 = OpCompositeExtract %float %1545 0
- %5211 = OpFMul %float %5210 %5209
- %5212 = OpCompositeExtract %float %1545 1
- %5213 = OpFMul %float %5212 %5209
- %5214 = OpCompositeExtract %float %1545 2
- %5215 = OpFMul %float %5214 %5209
- %5217 = OpFMul %float %5210 %5200
- %5219 = OpFMul %float %5212 %5201
- %5220 = OpFAdd %float %5217 %5219
- %5222 = OpFMul %float %5214 %5202
- %5223 = OpFAdd %float %5220 %5222
- %5224 = OpFMul %float %5223 %float_2
- %5225 = OpFMul %float %5200 %5224
- %5226 = OpFMul %float %5201 %5224
- %5227 = OpFMul %float %5202 %5224
- %5228 = OpFAdd %float %5211 %5225
- %5229 = OpFAdd %float %5213 %5226
- %5230 = OpFAdd %float %5215 %5227
- %5232 = OpFMul %float %5201 %5214
- %5234 = OpFMul %float %5212 %5202
- %5235 = OpFSub %float %5232 %5234
- %5237 = OpFMul %float %5202 %5210
- %5239 = OpFMul %float %5214 %5200
- %5240 = OpFSub %float %5237 %5239
- %5242 = OpFMul %float %5200 %5212
- %5244 = OpFMul %float %5210 %5201
- %5245 = OpFSub %float %5242 %5244
- %5246 = OpFMul %float %5199 %float_2
- %5247 = OpFMul %float %5235 %5246
- %5248 = OpFMul %float %5240 %5246
- %5249 = OpFMul %float %5245 %5246
- %5250 = OpFAdd %float %5228 %5247
+ %5205 = OpFMul %float %5202 %5202
+ %5206 = OpFAdd %float %5204 %5205
+ %5207 = OpFMul %float %5203 %5203
+ %5208 = OpFAdd %float %5206 %5207
+ %5209 = OpFMul %float %5200 %5200
+ %5210 = OpFSub %float %5209 %5208
+ %5211 = OpCompositeExtract %float %1439 0
+ %5212 = OpFMul %float %5211 %5210
+ %5213 = OpCompositeExtract %float %1439 1
+ %5214 = OpFMul %float %5213 %5210
+ %5215 = OpCompositeExtract %float %1439 2
+ %5216 = OpFMul %float %5215 %5210
+ %5218 = OpFMul %float %5211 %5201
+ %5220 = OpFMul %float %5213 %5202
+ %5221 = OpFAdd %float %5218 %5220
+ %5223 = OpFMul %float %5215 %5203
+ %5224 = OpFAdd %float %5221 %5223
+ %5225 = OpFMul %float %5224 %float_2
+ %5226 = OpFMul %float %5201 %5225
+ %5227 = OpFMul %float %5202 %5225
+ %5228 = OpFMul %float %5203 %5225
+ %5229 = OpFAdd %float %5212 %5226
+ %5230 = OpFAdd %float %5214 %5227
+ %5231 = OpFAdd %float %5216 %5228
+ %5233 = OpFMul %float %5202 %5215
+ %5235 = OpFMul %float %5213 %5203
+ %5236 = OpFSub %float %5233 %5235
+ %5238 = OpFMul %float %5203 %5211
+ %5240 = OpFMul %float %5215 %5201
+ %5241 = OpFSub %float %5238 %5240
+ %5243 = OpFMul %float %5201 %5213
+ %5245 = OpFMul %float %5211 %5202
+ %5246 = OpFSub %float %5243 %5245
+ %5247 = OpFMul %float %5200 %float_2
+ %5248 = OpFMul %float %5236 %5247
+ %5249 = OpFMul %float %5241 %5247
+ %5250 = OpFMul %float %5246 %5247
%5251 = OpFAdd %float %5229 %5248
%5252 = OpFAdd %float %5230 %5249
- %5253 = OpFMul %float %5191 %5250
- %5254 = OpFMul %float %5191 %5251
- %5255 = OpFMul %float %5191 %5252
- %5256 = OpCompositeConstruct %v3float %5253 %5254 %5255
- %5257 = OpFAdd %v3float %5190 %5256
- OpStore %25 %5257
- %1569 = OpCompositeExtract %float %1546 0
- %1570 = OpFMul %float %1569 %5209
- %1571 = OpCompositeExtract %float %1546 1
- %1572 = OpFMul %float %1571 %5209
- %1573 = OpCompositeExtract %float %1546 2
- %1574 = OpFMul %float %1573 %5209
- %1576 = OpFMul %float %1569 %5200
- %1578 = OpFMul %float %1571 %5201
- %1579 = OpFAdd %float %1576 %1578
- %1581 = OpFMul %float %1573 %5202
- %1582 = OpFAdd %float %1579 %1581
- %1583 = OpFMul %float %1582 %float_2
- %1584 = OpFMul %float %5200 %1583
- %1585 = OpFMul %float %5201 %1583
- %1586 = OpFMul %float %5202 %1583
- %1587 = OpFAdd %float %1570 %1584
- %1588 = OpFAdd %float %1572 %1585
- %1589 = OpFAdd %float %1574 %1586
- %1591 = OpFMul %float %5201 %1573
- %1593 = OpFMul %float %1571 %5202
- %1594 = OpFSub %float %1591 %1593
- %1596 = OpFMul %float %5202 %1569
- %1598 = OpFMul %float %1573 %5200
- %1599 = OpFSub %float %1596 %1598
- %1601 = OpFMul %float %5200 %1571
- %1603 = OpFMul %float %1569 %5201
- %1604 = OpFSub %float %1601 %1603
- %1606 = OpFMul %float %1594 %5246
- %1607 = OpFMul %float %1599 %5246
- %1608 = OpFMul %float %1604 %5246
- %1609 = OpFAdd %float %1587 %1606
- %1610 = OpFAdd %float %1588 %1607
- %1611 = OpFAdd %float %1589 %1608
- %1612 = OpCompositeConstruct %v3float %1609 %1610 %1611
- OpStore %26 %1612
- OpStore %27 %1547
- OpStore %28 %1548
- OpStore %30 %5191
- %1614 = OpAccessChain %_ptr_PushConstant__struct_131 %150 %uint_0 %uint_0
- %1615 = OpLoad %_struct_131 %1614
- %1616 = OpCompositeExtract %float %5257 0
- %1617 = OpCompositeExtract %float %5257 1
- %1618 = OpCompositeExtract %float %5257 2
- %1619 = OpCompositeExtract %v4float %1615 0 0
- %1620 = OpCompositeExtract %float %1619 0
- %1621 = OpFMul %float %1620 %1616
- %1622 = OpCompositeExtract %float %1619 1
- %1623 = OpFMul %float %1622 %1616
- %1624 = OpCompositeExtract %float %1619 2
- %1625 = OpFMul %float %1624 %1616
- %1626 = OpCompositeExtract %float %1619 3
- %1627 = OpFMul %float %1626 %1616
- %1628 = OpCompositeExtract %v4float %1615 0 1
- %1629 = OpCompositeExtract %float %1628 0
- %1630 = OpFMul %float %1629 %1617
- %1631 = OpFAdd %float %1630 %1621
- %1632 = OpCompositeExtract %float %1628 1
- %1633 = OpFMul %float %1632 %1617
- %1634 = OpFAdd %float %1633 %1623
- %1635 = OpCompositeExtract %float %1628 2
- %1636 = OpFMul %float %1635 %1617
- %1637 = OpFAdd %float %1636 %1625
- %1638 = OpCompositeExtract %float %1628 3
- %1639 = OpFMul %float %1638 %1617
- %1640 = OpFAdd %float %1639 %1627
- %1641 = OpCompositeExtract %v4float %1615 0 2
- %1642 = OpCompositeExtract %float %1641 0
- %1643 = OpFMul %float %1642 %1618
- %1644 = OpFAdd %float %1643 %1631
- %1645 = OpCompositeExtract %float %1641 1
- %1646 = OpFMul %float %1645 %1618
- %1647 = OpFAdd %float %1646 %1634
- %1648 = OpCompositeExtract %float %1641 2
- %1649 = OpFMul %float %1648 %1618
- %1650 = OpFAdd %float %1649 %1637
- %1651 = OpCompositeExtract %float %1641 3
- %1652 = OpFMul %float %1651 %1618
- %1653 = OpFAdd %float %1652 %1640
- %1654 = OpCompositeExtract %v4float %1615 0 3
- %1655 = OpCompositeExtract %float %1654 0
- %1657 = OpFAdd %float %1655 %1644
- %1658 = OpCompositeExtract %float %1654 1
- %1660 = OpFAdd %float %1658 %1647
- %1661 = OpCompositeExtract %float %1654 2
- %1663 = OpFAdd %float %1661 %1650
- %1664 = OpCompositeExtract %float %1654 3
- %1666 = OpFAdd %float %1664 %1653
- %1667 = OpCompositeConstruct %v4float %1657 %1660 %1663 %1666
- OpStore %gl_Position %1667
+ %5253 = OpFAdd %float %5231 %5250
+ %5254 = OpFMul %float %5192 %5251
+ %5255 = OpFMul %float %5192 %5252
+ %5256 = OpFMul %float %5192 %5253
+ %5257 = OpCompositeConstruct %v3float %5254 %5255 %5256
+ %5258 = OpFAdd %v3float %5191 %5257
+ OpStore %26 %5258
+ %1463 = OpCompositeExtract %float %1440 0
+ %1464 = OpFMul %float %1463 %5210
+ %1465 = OpCompositeExtract %float %1440 1
+ %1466 = OpFMul %float %1465 %5210
+ %1467 = OpCompositeExtract %float %1440 2
+ %1468 = OpFMul %float %1467 %5210
+ %1470 = OpFMul %float %1463 %5201
+ %1472 = OpFMul %float %1465 %5202
+ %1473 = OpFAdd %float %1470 %1472
+ %1475 = OpFMul %float %1467 %5203
+ %1476 = OpFAdd %float %1473 %1475
+ %1477 = OpFMul %float %1476 %float_2
+ %1478 = OpFMul %float %5201 %1477
+ %1479 = OpFMul %float %5202 %1477
+ %1480 = OpFMul %float %5203 %1477
+ %1481 = OpFAdd %float %1464 %1478
+ %1482 = OpFAdd %float %1466 %1479
+ %1483 = OpFAdd %float %1468 %1480
+ %1485 = OpFMul %float %5202 %1467
+ %1487 = OpFMul %float %1465 %5203
+ %1488 = OpFSub %float %1485 %1487
+ %1490 = OpFMul %float %5203 %1463
+ %1492 = OpFMul %float %1467 %5201
+ %1493 = OpFSub %float %1490 %1492
+ %1495 = OpFMul %float %5201 %1465
+ %1497 = OpFMul %float %1463 %5202
+ %1498 = OpFSub %float %1495 %1497
+ %1500 = OpFMul %float %1488 %5247
+ %1501 = OpFMul %float %1493 %5247
+ %1502 = OpFMul %float %1498 %5247
+ %1503 = OpFAdd %float %1481 %1500
+ %1504 = OpFAdd %float %1482 %1501
+ %1505 = OpFAdd %float %1483 %1502
+ %1506 = OpCompositeConstruct %v3float %1503 %1504 %1505
+ OpStore %27 %1506
+ OpStore %28 %1441
+ OpStore %29 %1442
+ %1507 = OpAccessChain %_ptr_PushConstant__struct_133 %155 %uint_0 %uint_0
+ %1508 = OpLoad %_struct_133 %1507
+ %1509 = OpCompositeExtract %float %5258 0
+ %1510 = OpCompositeExtract %float %5258 1
+ %1511 = OpCompositeExtract %float %5258 2
+ %1512 = OpCompositeExtract %v4float %1508 0 0
+ %1513 = OpCompositeExtract %float %1512 0
+ %1514 = OpFMul %float %1513 %1509
+ %1515 = OpCompositeExtract %float %1512 1
+ %1516 = OpFMul %float %1515 %1509
+ %1517 = OpCompositeExtract %float %1512 2
+ %1518 = OpFMul %float %1517 %1509
+ %1519 = OpCompositeExtract %float %1512 3
+ %1520 = OpFMul %float %1519 %1509
+ %1521 = OpCompositeExtract %v4float %1508 0 1
+ %1522 = OpCompositeExtract %float %1521 0
+ %1523 = OpFMul %float %1522 %1510
+ %1524 = OpFAdd %float %1523 %1514
+ %1525 = OpCompositeExtract %float %1521 1
+ %1526 = OpFMul %float %1525 %1510
+ %1527 = OpFAdd %float %1526 %1516
+ %1528 = OpCompositeExtract %float %1521 2
+ %1529 = OpFMul %float %1528 %1510
+ %1530 = OpFAdd %float %1529 %1518
+ %1531 = OpCompositeExtract %float %1521 3
+ %1532 = OpFMul %float %1531 %1510
+ %1533 = OpFAdd %float %1532 %1520
+ %1534 = OpCompositeExtract %v4float %1508 0 2
+ %1535 = OpCompositeExtract %float %1534 0
+ %1536 = OpFMul %float %1535 %1511
+ %1537 = OpFAdd %float %1536 %1524
+ %1538 = OpCompositeExtract %float %1534 1
+ %1539 = OpFMul %float %1538 %1511
+ %1540 = OpFAdd %float %1539 %1527
+ %1541 = OpCompositeExtract %float %1534 2
+ %1542 = OpFMul %float %1541 %1511
+ %1543 = OpFAdd %float %1542 %1530
+ %1544 = OpCompositeExtract %float %1534 3
+ %1545 = OpFMul %float %1544 %1511
+ %1546 = OpFAdd %float %1545 %1533
+ %1547 = OpCompositeExtract %v4float %1508 0 3
+ %1548 = OpCompositeExtract %float %1547 0
+ %1550 = OpFAdd %float %1548 %1537
+ %1551 = OpCompositeExtract %float %1547 1
+ %1553 = OpFAdd %float %1551 %1540
+ %1554 = OpCompositeExtract %float %1547 2
+ %1556 = OpFAdd %float %1554 %1543
+ %1557 = OpCompositeExtract %float %1547 3
+ %1559 = OpFAdd %float %1557 %1546
+ %1560 = OpCompositeConstruct %v4float %1550 %1553 %1556 %1559
+ OpStore %gl_Position %1560
+ OpReturn
+ OpFunctionEnd
+
+ ; Function 30
+ %30 = OpFunction %void None %288
+ %1561 = OpLabel
+ %1562 = OpLoad %v3float %6
+ %1563 = OpLoad %v3float %7
+ %1564 = OpLoad %v2float %8
+ %1565 = OpLoad %uint %25
+ %1567 = OpLoad %uint %gl_InstanceIndex
+ %1570 = OpAccessChain %_ptr_StorageBuffer__struct_149 %162 %uint_0 %1567 %uint_0
+ %1571 = OpLoad %_struct_149 %1570
+ %5261 = OpCompositeExtract %v4float %1571 0
+ %5262 = OpCompositeExtract %float %5261 0
+ %5263 = OpCompositeExtract %float %5261 1
+ %5264 = OpCompositeExtract %float %5261 2
+ %5265 = OpCompositeConstruct %v3float %5262 %5263 %5264
+ %5266 = OpCompositeExtract %float %1571 0 3
+ %5267 = OpCompositeExtract %v4float %1571 1
+ %5274 = OpCompositeExtract %float %5267 3
+ %5275 = OpCompositeExtract %float %5267 0
+ %5276 = OpCompositeExtract %float %5267 1
+ %5277 = OpCompositeExtract %float %5267 2
+ %5278 = OpFMul %float %5275 %5275
+ %5279 = OpFMul %float %5276 %5276
+ %5280 = OpFAdd %float %5278 %5279
+ %5281 = OpFMul %float %5277 %5277
+ %5282 = OpFAdd %float %5280 %5281
+ %5283 = OpFMul %float %5274 %5274
+ %5284 = OpFSub %float %5283 %5282
+ %5285 = OpCompositeExtract %float %1562 0
+ %5286 = OpFMul %float %5285 %5284
+ %5287 = OpCompositeExtract %float %1562 1
+ %5288 = OpFMul %float %5287 %5284
+ %5289 = OpCompositeExtract %float %1562 2
+ %5290 = OpFMul %float %5289 %5284
+ %5292 = OpFMul %float %5285 %5275
+ %5294 = OpFMul %float %5287 %5276
+ %5295 = OpFAdd %float %5292 %5294
+ %5297 = OpFMul %float %5289 %5277
+ %5298 = OpFAdd %float %5295 %5297
+ %5299 = OpFMul %float %5298 %float_2
+ %5300 = OpFMul %float %5275 %5299
+ %5301 = OpFMul %float %5276 %5299
+ %5302 = OpFMul %float %5277 %5299
+ %5303 = OpFAdd %float %5286 %5300
+ %5304 = OpFAdd %float %5288 %5301
+ %5305 = OpFAdd %float %5290 %5302
+ %5307 = OpFMul %float %5276 %5289
+ %5309 = OpFMul %float %5287 %5277
+ %5310 = OpFSub %float %5307 %5309
+ %5312 = OpFMul %float %5277 %5285
+ %5314 = OpFMul %float %5289 %5275
+ %5315 = OpFSub %float %5312 %5314
+ %5317 = OpFMul %float %5275 %5287
+ %5319 = OpFMul %float %5285 %5276
+ %5320 = OpFSub %float %5317 %5319
+ %5321 = OpFMul %float %5274 %float_2
+ %5322 = OpFMul %float %5310 %5321
+ %5323 = OpFMul %float %5315 %5321
+ %5324 = OpFMul %float %5320 %5321
+ %5325 = OpFAdd %float %5303 %5322
+ %5326 = OpFAdd %float %5304 %5323
+ %5327 = OpFAdd %float %5305 %5324
+ %5328 = OpFMul %float %5266 %5325
+ %5329 = OpFMul %float %5266 %5326
+ %5330 = OpFMul %float %5266 %5327
+ %5331 = OpCompositeConstruct %v3float %5328 %5329 %5330
+ %5332 = OpFAdd %v3float %5265 %5331
+ OpStore %26 %5332
+ %1586 = OpCompositeExtract %float %1563 0
+ %1587 = OpFMul %float %1586 %5284
+ %1588 = OpCompositeExtract %float %1563 1
+ %1589 = OpFMul %float %1588 %5284
+ %1590 = OpCompositeExtract %float %1563 2
+ %1591 = OpFMul %float %1590 %5284
+ %1593 = OpFMul %float %1586 %5275
+ %1595 = OpFMul %float %1588 %5276
+ %1596 = OpFAdd %float %1593 %1595
+ %1598 = OpFMul %float %1590 %5277
+ %1599 = OpFAdd %float %1596 %1598
+ %1600 = OpFMul %float %1599 %float_2
+ %1601 = OpFMul %float %5275 %1600
+ %1602 = OpFMul %float %5276 %1600
+ %1603 = OpFMul %float %5277 %1600
+ %1604 = OpFAdd %float %1587 %1601
+ %1605 = OpFAdd %float %1589 %1602
+ %1606 = OpFAdd %float %1591 %1603
+ %1608 = OpFMul %float %5276 %1590
+ %1610 = OpFMul %float %1588 %5277
+ %1611 = OpFSub %float %1608 %1610
+ %1613 = OpFMul %float %5277 %1586
+ %1615 = OpFMul %float %1590 %5275
+ %1616 = OpFSub %float %1613 %1615
+ %1618 = OpFMul %float %5275 %1588
+ %1620 = OpFMul %float %1586 %5276
+ %1621 = OpFSub %float %1618 %1620
+ %1623 = OpFMul %float %1611 %5321
+ %1624 = OpFMul %float %1616 %5321
+ %1625 = OpFMul %float %1621 %5321
+ %1626 = OpFAdd %float %1604 %1623
+ %1627 = OpFAdd %float %1605 %1624
+ %1628 = OpFAdd %float %1606 %1625
+ %1629 = OpCompositeConstruct %v3float %1626 %1627 %1628
+ OpStore %27 %1629
+ OpStore %28 %1564
+ OpStore %29 %1565
+ OpStore %31 %5266
+ %1631 = OpAccessChain %_ptr_PushConstant__struct_133 %155 %uint_0 %uint_0
+ %1632 = OpLoad %_struct_133 %1631
+ %1633 = OpCompositeExtract %float %5332 0
+ %1634 = OpCompositeExtract %float %5332 1
+ %1635 = OpCompositeExtract %float %5332 2
+ %1636 = OpCompositeExtract %v4float %1632 0 0
+ %1637 = OpCompositeExtract %float %1636 0
+ %1638 = OpFMul %float %1637 %1633
+ %1639 = OpCompositeExtract %float %1636 1
+ %1640 = OpFMul %float %1639 %1633
+ %1641 = OpCompositeExtract %float %1636 2
+ %1642 = OpFMul %float %1641 %1633
+ %1643 = OpCompositeExtract %float %1636 3
+ %1644 = OpFMul %float %1643 %1633
+ %1645 = OpCompositeExtract %v4float %1632 0 1
+ %1646 = OpCompositeExtract %float %1645 0
+ %1647 = OpFMul %float %1646 %1634
+ %1648 = OpFAdd %float %1647 %1638
+ %1649 = OpCompositeExtract %float %1645 1
+ %1650 = OpFMul %float %1649 %1634
+ %1651 = OpFAdd %float %1650 %1640
+ %1652 = OpCompositeExtract %float %1645 2
+ %1653 = OpFMul %float %1652 %1634
+ %1654 = OpFAdd %float %1653 %1642
+ %1655 = OpCompositeExtract %float %1645 3
+ %1656 = OpFMul %float %1655 %1634
+ %1657 = OpFAdd %float %1656 %1644
+ %1658 = OpCompositeExtract %v4float %1632 0 2
+ %1659 = OpCompositeExtract %float %1658 0
+ %1660 = OpFMul %float %1659 %1635
+ %1661 = OpFAdd %float %1660 %1648
+ %1662 = OpCompositeExtract %float %1658 1
+ %1663 = OpFMul %float %1662 %1635
+ %1664 = OpFAdd %float %1663 %1651
+ %1665 = OpCompositeExtract %float %1658 2
+ %1666 = OpFMul %float %1665 %1635
+ %1667 = OpFAdd %float %1666 %1654
+ %1668 = OpCompositeExtract %float %1658 3
+ %1669 = OpFMul %float %1668 %1635
+ %1670 = OpFAdd %float %1669 %1657
+ %1671 = OpCompositeExtract %v4float %1632 0 3
+ %1672 = OpCompositeExtract %float %1671 0
+ %1674 = OpFAdd %float %1672 %1661
+ %1675 = OpCompositeExtract %float %1671 1
+ %1677 = OpFAdd %float %1675 %1664
+ %1678 = OpCompositeExtract %float %1671 2
+ %1680 = OpFAdd %float %1678 %1667
+ %1681 = OpCompositeExtract %float %1671 3
+ %1683 = OpFAdd %float %1681 %1670
+ %1684 = OpCompositeConstruct %v4float %1674 %1677 %1680 %1683
+ OpStore %gl_Position %1684
OpReturn
OpFunctionEnd
- ; Function 31
- %31 = OpFunction %void None %308
- %1668 = OpLabel
- %1670 = OpArrayLength %uint %160 0
- %1673 = OpAccessChain %_ptr_PushConstant__struct_159 %163 %uint_0
- %1674 = OpLoad %v3uint %gl_GlobalInvocationID
- %1675 = OpCompositeExtract %uint %1674 0
- %1676 = OpUGreaterThanEqual %bool %1675 %1670
- OpSelectionMerge %1677 None
- OpBranchConditional %1676 %1678 %1679
- %1679 = OpLabel
- %1681 = OpAccessChain %_ptr_StorageBuffer_uint %160 %uint_0 %1675 %uint_1
- %1682 = OpLoad %uint %1681
- %1684 = OpAccessChain %_ptr_StorageBuffer_v4float %161 %uint_0 %1682 %uint_0
- %1685 = OpLoad %v4float %1684
- %1686 = OpAccessChain %_ptr_StorageBuffer__struct_144 %160 %uint_0 %1675 %uint_0
- %1687 = OpLoad %_struct_144 %1686
- %5260 = OpCompositeExtract %v4float %1687 0
- %5261 = OpCompositeExtract %float %5260 0
- %5262 = OpCompositeExtract %float %5260 1
- %5263 = OpCompositeExtract %float %5260 2
- %5264 = OpCompositeConstruct %v3float %5261 %5262 %5263
- %5265 = OpCompositeExtract %float %1687 0 3
- %5266 = OpCompositeExtract %v4float %1687 1
- %1689 = OpLoad %_struct_159 %1673
- %5270 = OpCompositeExtract %float %1685 0
- %5271 = OpCompositeExtract %float %1685 1
- %5272 = OpCompositeExtract %float %1685 2
- %5307 = OpCompositeExtract %float %5266 3
- %5308 = OpCompositeExtract %float %5266 0
- %5309 = OpCompositeExtract %float %5266 1
- %5310 = OpCompositeExtract %float %5266 2
- %5311 = OpFMul %float %5308 %5308
- %5312 = OpFMul %float %5309 %5309
- %5313 = OpFAdd %float %5311 %5312
- %5314 = OpFMul %float %5310 %5310
- %5315 = OpFAdd %float %5313 %5314
- %5316 = OpFMul %float %5307 %5307
- %5317 = OpFSub %float %5316 %5315
- %5319 = OpFMul %float %5270 %5317
- %5321 = OpFMul %float %5271 %5317
- %5323 = OpFMul %float %5272 %5317
- %5325 = OpFMul %float %5270 %5308
- %5327 = OpFMul %float %5271 %5309
- %5328 = OpFAdd %float %5325 %5327
- %5330 = OpFMul %float %5272 %5310
- %5331 = OpFAdd %float %5328 %5330
- %5332 = OpFMul %float %5331 %float_2
- %5333 = OpFMul %float %5308 %5332
- %5334 = OpFMul %float %5309 %5332
- %5335 = OpFMul %float %5310 %5332
- %5336 = OpFAdd %float %5319 %5333
- %5337 = OpFAdd %float %5321 %5334
- %5338 = OpFAdd %float %5323 %5335
- %5340 = OpFMul %float %5309 %5272
- %5342 = OpFMul %float %5271 %5310
- %5343 = OpFSub %float %5340 %5342
- %5345 = OpFMul %float %5310 %5270
- %5347 = OpFMul %float %5272 %5308
- %5348 = OpFSub %float %5345 %5347
- %5350 = OpFMul %float %5308 %5271
- %5352 = OpFMul %float %5270 %5309
- %5353 = OpFSub %float %5350 %5352
- %5354 = OpFMul %float %5307 %float_2
- %5355 = OpFMul %float %5343 %5354
- %5356 = OpFMul %float %5348 %5354
- %5357 = OpFMul %float %5353 %5354
- %5358 = OpFAdd %float %5336 %5355
- %5359 = OpFAdd %float %5337 %5356
- %5360 = OpFAdd %float %5338 %5357
- %5361 = OpFMul %float %5265 %5358
- %5362 = OpFMul %float %5265 %5359
- %5363 = OpFMul %float %5265 %5360
- %5364 = OpCompositeConstruct %v3float %5361 %5362 %5363
- %5365 = OpFAdd %v3float %5264 %5364
- %5275 = OpCompositeExtract %_struct_131 %1689 0
- %5276 = OpCompositeExtract %float %5365 0
- %5277 = OpCompositeExtract %float %5365 1
- %5278 = OpCompositeExtract %float %5365 2
- %5279 = OpCompositeExtract %v4float %5275 0 0
- %5280 = OpCompositeExtract %float %5279 2
- %5281 = OpFMul %float %5280 %5276
- %5282 = OpCompositeExtract %v4float %5275 0 1
- %5283 = OpCompositeExtract %float %5282 2
- %5284 = OpFMul %float %5283 %5277
- %5285 = OpFAdd %float %5284 %5281
- %5286 = OpCompositeExtract %v4float %5275 0 2
- %5287 = OpCompositeExtract %float %5286 2
- %5288 = OpFMul %float %5287 %5278
- %5289 = OpFAdd %float %5288 %5285
- %5290 = OpCompositeExtract %v4float %5275 0 3
- %5291 = OpCompositeExtract %float %5290 2
- %5293 = OpFAdd %float %5291 %5289
- %5294 = OpCompositeExtract %float %1685 3
- %5296 = OpFMul %float %5294 %5265
- %5297 = OpFSub %float %5293 %5296
- %5298 = OpCompositeExtract %float %1689 1
- %5299 = OpFNegate %float %5298
- %5300 = OpFOrdLessThan %bool %5297 %5299
- %5301 = OpLogicalNotEqual %bool %5300 %true
- OpSelectionMerge %1691 None
- OpBranchConditional %5301 %1692 %1693
- %1693 = OpLabel
- %1695 = OpLoad %uint %1681
- %1696 = OpAccessChain %_ptr_StorageBuffer_uint %162 %uint_0 %1695
- %1697 = OpAtomicIIncrement %uint %1696 %uint_1 %uint_0
- OpBranch %1691
- %1692 = OpLabel
- OpBranch %1691
- %1691 = OpLabel
- OpBranch %1677
- %1678 = OpLabel
- OpBranch %1677
- %1677 = OpLabel
+ ; Function 32
+ %32 = OpFunction %void None %288
+ %1685 = OpLabel
+ %1687 = OpArrayLength %uint %164 0
+ %1690 = OpAccessChain %_ptr_PushConstant__struct_163 %167 %uint_0
+ %1691 = OpLoad %v3uint %gl_GlobalInvocationID
+ %1692 = OpCompositeExtract %uint %1691 0
+ %1693 = OpUGreaterThanEqual %bool %1692 %1687
+ OpSelectionMerge %1694 None
+ OpBranchConditional %1693 %1695 %1696
+ %1696 = OpLabel
+ %1698 = OpAccessChain %_ptr_StorageBuffer_uint %164 %uint_0 %1692 %uint_1
+ %1699 = OpLoad %uint %1698
+ %1701 = OpAccessChain %_ptr_StorageBuffer_v4float %165 %uint_0 %1699 %uint_0
+ %1702 = OpLoad %v4float %1701
+ %1703 = OpAccessChain %_ptr_StorageBuffer__struct_149 %164 %uint_0 %1692 %uint_0
+ %1704 = OpLoad %_struct_149 %1703
+ %5335 = OpCompositeExtract %v4float %1704 0
+ %5336 = OpCompositeExtract %float %5335 0
+ %5337 = OpCompositeExtract %float %5335 1
+ %5338 = OpCompositeExtract %float %5335 2
+ %5339 = OpCompositeConstruct %v3float %5336 %5337 %5338
+ %5340 = OpCompositeExtract %float %1704 0 3
+ %5341 = OpCompositeExtract %v4float %1704 1
+ %1706 = OpLoad %_struct_163 %1690
+ %5345 = OpCompositeExtract %float %1702 0
+ %5346 = OpCompositeExtract %float %1702 1
+ %5347 = OpCompositeExtract %float %1702 2
+ %5382 = OpCompositeExtract %float %5341 3
+ %5383 = OpCompositeExtract %float %5341 0
+ %5384 = OpCompositeExtract %float %5341 1
+ %5385 = OpCompositeExtract %float %5341 2
+ %5386 = OpFMul %float %5383 %5383
+ %5387 = OpFMul %float %5384 %5384
+ %5388 = OpFAdd %float %5386 %5387
+ %5389 = OpFMul %float %5385 %5385
+ %5390 = OpFAdd %float %5388 %5389
+ %5391 = OpFMul %float %5382 %5382
+ %5392 = OpFSub %float %5391 %5390
+ %5394 = OpFMul %float %5345 %5392
+ %5396 = OpFMul %float %5346 %5392
+ %5398 = OpFMul %float %5347 %5392
+ %5400 = OpFMul %float %5345 %5383
+ %5402 = OpFMul %float %5346 %5384
+ %5403 = OpFAdd %float %5400 %5402
+ %5405 = OpFMul %float %5347 %5385
+ %5406 = OpFAdd %float %5403 %5405
+ %5407 = OpFMul %float %5406 %float_2
+ %5408 = OpFMul %float %5383 %5407
+ %5409 = OpFMul %float %5384 %5407
+ %5410 = OpFMul %float %5385 %5407
+ %5411 = OpFAdd %float %5394 %5408
+ %5412 = OpFAdd %float %5396 %5409
+ %5413 = OpFAdd %float %5398 %5410
+ %5415 = OpFMul %float %5384 %5347
+ %5417 = OpFMul %float %5346 %5385
+ %5418 = OpFSub %float %5415 %5417
+ %5420 = OpFMul %float %5385 %5345
+ %5422 = OpFMul %float %5347 %5383
+ %5423 = OpFSub %float %5420 %5422
+ %5425 = OpFMul %float %5383 %5346
+ %5427 = OpFMul %float %5345 %5384
+ %5428 = OpFSub %float %5425 %5427
+ %5429 = OpFMul %float %5382 %float_2
+ %5430 = OpFMul %float %5418 %5429
+ %5431 = OpFMul %float %5423 %5429
+ %5432 = OpFMul %float %5428 %5429
+ %5433 = OpFAdd %float %5411 %5430
+ %5434 = OpFAdd %float %5412 %5431
+ %5435 = OpFAdd %float %5413 %5432
+ %5436 = OpFMul %float %5340 %5433
+ %5437 = OpFMul %float %5340 %5434
+ %5438 = OpFMul %float %5340 %5435
+ %5439 = OpCompositeConstruct %v3float %5436 %5437 %5438
+ %5440 = OpFAdd %v3float %5339 %5439
+ %5350 = OpCompositeExtract %_struct_133 %1706 0
+ %5351 = OpCompositeExtract %float %5440 0
+ %5352 = OpCompositeExtract %float %5440 1
+ %5353 = OpCompositeExtract %float %5440 2
+ %5354 = OpCompositeExtract %v4float %5350 0 0
+ %5355 = OpCompositeExtract %float %5354 2
+ %5356 = OpFMul %float %5355 %5351
+ %5357 = OpCompositeExtract %v4float %5350 0 1
+ %5358 = OpCompositeExtract %float %5357 2
+ %5359 = OpFMul %float %5358 %5352
+ %5360 = OpFAdd %float %5359 %5356
+ %5361 = OpCompositeExtract %v4float %5350 0 2
+ %5362 = OpCompositeExtract %float %5361 2
+ %5363 = OpFMul %float %5362 %5353
+ %5364 = OpFAdd %float %5363 %5360
+ %5365 = OpCompositeExtract %v4float %5350 0 3
+ %5366 = OpCompositeExtract %float %5365 2
+ %5368 = OpFAdd %float %5366 %5364
+ %5369 = OpCompositeExtract %float %1702 3
+ %5371 = OpFMul %float %5369 %5340
+ %5372 = OpFSub %float %5368 %5371
+ %5373 = OpCompositeExtract %float %1706 1
+ %5374 = OpFNegate %float %5373
+ %5375 = OpFOrdLessThan %bool %5372 %5374
+ %5376 = OpLogicalNotEqual %bool %5375 %true
+ OpSelectionMerge %1708 None
+ OpBranchConditional %5376 %1709 %1710
+ %1710 = OpLabel
+ %1712 = OpLoad %uint %1698
+ %1713 = OpAccessChain %_ptr_StorageBuffer_uint %166 %uint_0 %1712
+ %1714 = OpAtomicIIncrement %uint %1713 %uint_1 %uint_0
+ OpBranch %1708
+ %1709 = OpLabel
+ OpBranch %1708
+ %1708 = OpLabel
+ OpBranch %1694
+ %1695 = OpLabel
+ OpBranch %1694
+ %1694 = OpLabel
OpReturn
OpFunctionEnd
- ; Function 33
- %33 = OpFunction %void None %308
- %1704 = OpLabel
- %1707 = OpArrayLength %uint %162 0
- %1713 = OpLoad %v3uint %gl_GlobalInvocationID
- %1714 = OpCompositeExtract %uint %1713 0
- %1715 = OpUGreaterThan %bool %1714 %1707
- OpSelectionMerge %1716 None
- OpBranchConditional %1715 %1717 %1718
- %1718 = OpLabel
- %1719 = OpAccessChain %_ptr_StorageBuffer_uint %162 %uint_0 %1714
- %1720 = OpLoad %uint %1719
- %1721 = OpIEqual %bool %1720 %uint_0
- OpSelectionMerge %1722 None
- OpBranchConditional %1721 %1723 %1724
- %1724 = OpLabel
- %1726 = OpAccessChain %_ptr_StorageBuffer_uint %161 %uint_0 %1714 %uint_1
- %1727 = OpLoad %uint %1726
- %1728 = OpAccessChain %_ptr_StorageBuffer_uint %164 %uint_0 %1727
- %1729 = OpAtomicIIncrement %uint %1728 %uint_1 %uint_0
- %1730 = OpAccessChain %_ptr_StorageBuffer_uint %161 %uint_0 %1714 %uint_2
- %1731 = OpLoad %uint %1730
- %1732 = OpAccessChain %_ptr_StorageBuffer_uint %161 %uint_0 %1714 %uint_3
- %1733 = OpLoad %uint %1732
- %1734 = OpAccessChain %_ptr_StorageBuffer_uint %161 %uint_0 %1714 %uint_4
- %1735 = OpLoad %uint %1734
- %1736 = OpCompositeConstruct %_struct_148 %1731 %1720 %1733 %int_0 %1735
- %1738 = OpLoad %uint %1726
+ ; Function 34
+ %34 = OpFunction %void None %288
+ %1721 = OpLabel
+ %1724 = OpArrayLength %uint %166 0
+ %1730 = OpLoad %v3uint %gl_GlobalInvocationID
+ %1731 = OpCompositeExtract %uint %1730 0
+ %1732 = OpUGreaterThan %bool %1731 %1724
+ OpSelectionMerge %1733 None
+ OpBranchConditional %1732 %1734 %1735
+ %1735 = OpLabel
+ %1736 = OpAccessChain %_ptr_StorageBuffer_uint %166 %uint_0 %1731
+ %1737 = OpLoad %uint %1736
+ %1738 = OpIEqual %bool %1737 %uint_0
OpSelectionMerge %1739 None
- OpSwitch %1738 %1740 0 %1741 1 %1742 2 %1743
- %1743 = OpLabel
- %1747 = OpAccessChain %_ptr_StorageBuffer__struct_148 %167 %uint_0 %1729
- OpStore %1747 %1736
- OpBranch %1739
- %1742 = OpLabel
- %1746 = OpAccessChain %_ptr_StorageBuffer__struct_148 %166 %uint_0 %1729
- OpStore %1746 %1736
- OpBranch %1739
+ OpBranchConditional %1738 %1740 %1741
%1741 = OpLabel
- %1745 = OpAccessChain %_ptr_StorageBuffer__struct_148 %165 %uint_0 %1729
- OpStore %1745 %1736
+ %1743 = OpAccessChain %_ptr_StorageBuffer_uint %165 %uint_0 %1731 %uint_1
+ %1744 = OpLoad %uint %1743
+ %1745 = OpAccessChain %_ptr_StorageBuffer_uint %168 %uint_0 %1744
+ %1746 = OpAtomicIIncrement %uint %1745 %uint_1 %uint_0
+ %1747 = OpAccessChain %_ptr_StorageBuffer_uint %165 %uint_0 %1731 %uint_2
+ %1748 = OpLoad %uint %1747
+ %1749 = OpAccessChain %_ptr_StorageBuffer_uint %165 %uint_0 %1731 %uint_3
+ %1750 = OpLoad %uint %1749
+ %1751 = OpAccessChain %_ptr_StorageBuffer_uint %165 %uint_0 %1731 %uint_4
+ %1752 = OpLoad %uint %1751
+ %1753 = OpCompositeConstruct %_struct_153 %1748 %1737 %1750 %int_0 %1752
+ %1755 = OpLoad %uint %1743
+ OpSelectionMerge %1756 None
+ OpSwitch %1755 %1757 0 %1758 1 %1759 2 %1760
+ %1760 = OpLabel
+ %1764 = OpAccessChain %_ptr_StorageBuffer__struct_153 %171 %uint_0 %1746
+ OpStore %1764 %1753
+ OpBranch %1756
+ %1759 = OpLabel
+ %1763 = OpAccessChain %_ptr_StorageBuffer__struct_153 %170 %uint_0 %1746
+ OpStore %1763 %1753
+ OpBranch %1756
+ %1758 = OpLabel
+ %1762 = OpAccessChain %_ptr_StorageBuffer__struct_153 %169 %uint_0 %1746
+ OpStore %1762 %1753
+ OpBranch %1756
+ %1757 = OpLabel
+ %1761 = OpAccessChain %_ptr_StorageBuffer__struct_153 %172 %uint_0 %1746
+ OpStore %1761 %1753
+ OpBranch %1756
+ %1756 = OpLabel
OpBranch %1739
%1740 = OpLabel
- %1744 = OpAccessChain %_ptr_StorageBuffer__struct_148 %168 %uint_0 %1729
- OpStore %1744 %1736
OpBranch %1739
%1739 = OpLabel
- OpBranch %1722
- %1723 = OpLabel
- OpBranch %1722
- %1722 = OpLabel
- OpBranch %1716
- %1717 = OpLabel
- OpBranch %1716
- %1716 = OpLabel
- OpReturn
- OpFunctionEnd
-
- ; Function 34
- %34 = OpFunction %void None %308
- %1754 = OpLabel
- %1755 = OpLoad %int %gl_VertexIndex
- %1757 = OpShiftLeftLogical %int %1755 %int_1
- %1758 = OpBitwiseAnd %int %1757 %int_2
- %1759 = OpConvertSToF %float %1758
- %1760 = OpBitwiseAnd %int %1755 %int_2
- %1761 = OpConvertSToF %float %1760
- %1762 = OpCompositeConstruct %v2float %1759 %1761
- OpStore %36 %1762
- %1763 = OpLoad %v2float %36
- %1764 = OpCompositeExtract %float %1763 0
- %1765 = OpFMul %float %float_2 %1764
- %1766 = OpCompositeExtract %float %1763 1
- %1767 = OpFMul %float %float_2 %1766
- %1769 = OpFSub %float %1765 %float_1
- %1771 = OpFSub %float %1767 %float_1
- %1772 = OpCompositeConstruct %v4float %1769 %1771 %float_0 %float_1
- OpStore %gl_Position %1772
+ OpBranch %1733
+ %1734 = OpLabel
+ OpBranch %1733
+ %1733 = OpLabel
OpReturn
OpFunctionEnd
- ; Function 37
- %37 = OpFunction %void None %308
- %1773 = OpLabel
- %1774 = OpLoad %v2float %13
- %1775 = OpAccessChain %_ptr_PushConstant__struct_135 %170 %uint_0
- %1776 = OpLoad %238 %153
- %5368 = OpLoad %236 %169
- %5369 = OpSampledImage %298 %5368 %1776
- %5370 = OpImageSampleImplicitLod %v4float %5369 %1774
- %1778 = OpCompositeExtract %float %5370 0
- %1779 = OpCompositeExtract %float %5370 1
- %1780 = OpCompositeExtract %float %5370 2
- %1782 = OpLoad %_struct_135 %1775
- %5376 = OpExtInst %float %1 FMax %1779 %1780
- %5377 = OpExtInst %float %1 FMax %1778 %5376
- %5379 = OpFDiv %float %1778 %5377
- %5381 = OpFDiv %float %1779 %5377
- %5383 = OpFDiv %float %1780 %5377
- %5430 = OpCompositeExtract %float %1782 0
- %5431 = OpExtInst %float %1 Pow %5377 %5430
- %5432 = OpCompositeExtract %float %1782 3
- %5433 = OpExtInst %float %1 Pow %5431 %5432
- %5434 = OpCompositeExtract %float %1782 1
- %5435 = OpFMul %float %5433 %5434
- %5436 = OpCompositeExtract %float %1782 2
- %5437 = OpFAdd %float %5435 %5436
- %5438 = OpFDiv %float %5431 %5437
- %5385 = OpCompositeExtract %float %1782 5
- %5386 = OpCompositeExtract %float %1782 6
- %5387 = OpFDiv %float %5385 %5386
- %5388 = OpExtInst %float %1 Pow %5379 %5387
- %5389 = OpExtInst %float %1 Pow %5381 %5387
- %5390 = OpExtInst %float %1 Pow %5383 %5387
- %5391 = OpCompositeExtract %float %1782 4
- %5392 = OpExtInst %float %1 Pow %5438 %5391
- %5394 = OpFSub %float %float_1 %5388
- %5396 = OpFSub %float %float_1 %5389
- %5398 = OpFSub %float %float_1 %5390
- %5399 = OpFMul %float %5394 %5392
- %5400 = OpFMul %float %5396 %5392
- %5401 = OpFMul %float %5398 %5392
- %5402 = OpFAdd %float %5388 %5399
- %5403 = OpFAdd %float %5389 %5400
- %5404 = OpFAdd %float %5390 %5401
- %5406 = OpExtInst %float %1 Pow %5402 %5386
- %5407 = OpExtInst %float %1 Pow %5403 %5386
- %5408 = OpExtInst %float %1 Pow %5404 %5386
- %5409 = OpFMul %float %5406 %5438
- %5410 = OpFMul %float %5407 %5438
- %5411 = OpFMul %float %5408 %5438
- %5413 = OpExtInst %float %1 FMin %5409 %float_1
- %5415 = OpExtInst %float %1 FMin %5410 %float_1
- %5417 = OpExtInst %float %1 FMin %5411 %float_1
- %5426 = OpCompositeConstruct %v3float %5413 %5415 %5417
- %5427 = OpExtInst %v3float %1 FMax %5426 %287
- %1784 = OpCompositeExtract %float %5427 0
- %1785 = OpCompositeExtract %float %5427 1
- %1786 = OpCompositeExtract %float %5427 2
- %1787 = OpCompositeConstruct %v4float %1784 %1785 %1786 %float_1
- OpStore %8 %1787
+ ; Function 35
+ %35 = OpFunction %void None %288
+ %1771 = OpLabel
+ %1772 = OpLoad %int %gl_VertexIndex
+ %1774 = OpShiftLeftLogical %int %1772 %int_1
+ %1775 = OpBitwiseAnd %int %1774 %int_2
+ %1776 = OpConvertSToF %float %1775
+ %1777 = OpBitwiseAnd %int %1772 %int_2
+ %1778 = OpConvertSToF %float %1777
+ %1779 = OpCompositeConstruct %v2float %1776 %1778
+ OpStore %37 %1779
+ %1780 = OpLoad %v2float %37
+ %1781 = OpCompositeExtract %float %1780 0
+ %1782 = OpFMul %float %float_2 %1781
+ %1783 = OpCompositeExtract %float %1780 1
+ %1784 = OpFMul %float %float_2 %1783
+ %1786 = OpFSub %float %1782 %float_1
+ %1788 = OpFSub %float %1784 %float_1
+ %1789 = OpCompositeConstruct %v4float %1786 %1788 %float_0 %float_1
+ OpStore %gl_Position %1789
OpReturn
OpFunctionEnd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment