173 lines
7.4 KiB
Plaintext
173 lines
7.4 KiB
Plaintext
; SPIR-V
|
|
; Version: 1.3
|
|
; Generator: Google Tint Compiler; 0
|
|
; Bound: 96
|
|
; Schema: 0
|
|
OpCapability Shader
|
|
%46 = OpExtInstImport "GLSL.std.450"
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint GLCompute %main "main" %gl_GlobalInvocationID_param_1
|
|
OpExecutionMode %main LocalSize 128 1 1
|
|
OpName %gl_GlobalInvocationID_param_1 "gl_GlobalInvocationID_param_1"
|
|
OpName %ssbOut "ssbOut"
|
|
OpMemberName %ssbOut 0 "result"
|
|
OpName %x_16 "x_16"
|
|
OpName %ssbA "ssbA"
|
|
OpMemberName %ssbA 0 "A"
|
|
OpName %x_20 "x_20"
|
|
OpName %gl_GlobalInvocationID "gl_GlobalInvocationID"
|
|
OpName %Uniforms "Uniforms"
|
|
OpMemberName %Uniforms 0 "NAN"
|
|
OpMemberName %Uniforms 1 "aShape"
|
|
OpMemberName %Uniforms 2 "outShape"
|
|
OpMemberName %Uniforms 3 "outShapeStrides"
|
|
OpMemberName %Uniforms 4 "size"
|
|
OpName %x_24 "x_24"
|
|
OpName %getAAtOutCoords_ "getAAtOutCoords_"
|
|
OpName %unaryOperation_f1_ "unaryOperation_f1_"
|
|
OpName %a "a"
|
|
OpName %setOutput_i1_f1_ "setOutput_i1_f1_"
|
|
OpName %flatIndex "flatIndex"
|
|
OpName %value "value"
|
|
OpName %main_1 "main_1"
|
|
OpName %index "index"
|
|
OpName %a_1 "a_1"
|
|
OpName %param "param"
|
|
OpName %param_1 "param_1"
|
|
OpName %param_2 "param_2"
|
|
OpName %main_inner "main_inner"
|
|
OpName %gl_GlobalInvocationID_param "gl_GlobalInvocationID_param"
|
|
OpName %main "main"
|
|
OpDecorate %gl_GlobalInvocationID_param_1 BuiltIn GlobalInvocationId
|
|
OpDecorate %ssbOut Block
|
|
OpMemberDecorate %ssbOut 0 Offset 0
|
|
OpDecorate %_runtimearr_float ArrayStride 4
|
|
OpDecorate %x_16 DescriptorSet 0
|
|
OpDecorate %x_16 Binding 0
|
|
OpDecorate %ssbA Block
|
|
OpMemberDecorate %ssbA 0 Offset 0
|
|
OpDecorate %x_20 NonWritable
|
|
OpDecorate %x_20 DescriptorSet 0
|
|
OpDecorate %x_20 Binding 1
|
|
OpDecorate %Uniforms Block
|
|
OpMemberDecorate %Uniforms 0 Offset 0
|
|
OpMemberDecorate %Uniforms 1 Offset 4
|
|
OpMemberDecorate %Uniforms 2 Offset 8
|
|
OpMemberDecorate %Uniforms 3 Offset 12
|
|
OpMemberDecorate %Uniforms 4 Offset 16
|
|
OpDecorate %x_24 NonWritable
|
|
OpDecorate %x_24 DescriptorSet 0
|
|
OpDecorate %x_24 Binding 2
|
|
%uint = OpTypeInt 32 0
|
|
%v3uint = OpTypeVector %uint 3
|
|
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
|
|
%gl_GlobalInvocationID_param_1 = OpVariable %_ptr_Input_v3uint Input
|
|
%float = OpTypeFloat 32
|
|
%_runtimearr_float = OpTypeRuntimeArray %float
|
|
%ssbOut = OpTypeStruct %_runtimearr_float
|
|
%_ptr_StorageBuffer_ssbOut = OpTypePointer StorageBuffer %ssbOut
|
|
%x_16 = OpVariable %_ptr_StorageBuffer_ssbOut StorageBuffer
|
|
%ssbA = OpTypeStruct %_runtimearr_float
|
|
%_ptr_StorageBuffer_ssbA = OpTypePointer StorageBuffer %ssbA
|
|
%x_20 = OpVariable %_ptr_StorageBuffer_ssbA StorageBuffer
|
|
%_ptr_Private_v3uint = OpTypePointer Private %v3uint
|
|
%15 = OpConstantNull %v3uint
|
|
%gl_GlobalInvocationID = OpVariable %_ptr_Private_v3uint Private %15
|
|
%int = OpTypeInt 32 1
|
|
%Uniforms = OpTypeStruct %float %int %int %int %int
|
|
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
|
|
%x_24 = OpVariable %_ptr_Uniform_Uniforms Uniform
|
|
%20 = OpTypeFunction %float
|
|
%uint_0 = OpConstant %uint 0
|
|
%_ptr_Private_uint = OpTypePointer Private %uint
|
|
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
|
|
%_ptr_Function_float = OpTypePointer Function %float
|
|
%30 = OpTypeFunction %float %_ptr_Function_float
|
|
%37 = OpConstantNull %float
|
|
%bool = OpTypeBool
|
|
%float_0x1p_128 = OpConstant %float 0x1p+128
|
|
%void = OpTypeVoid
|
|
%_ptr_Function_int = OpTypePointer Function %int
|
|
%47 = OpTypeFunction %void %_ptr_Function_int %_ptr_Function_float
|
|
%59 = OpTypeFunction %void
|
|
%63 = OpConstantNull %int
|
|
%uint_4 = OpConstant %uint 4
|
|
%_ptr_Uniform_int = OpTypePointer Uniform %int
|
|
%87 = OpTypeFunction %void %v3uint
|
|
%getAAtOutCoords_ = OpFunction %float None %20
|
|
%22 = OpLabel
|
|
%25 = OpAccessChain %_ptr_Private_uint %gl_GlobalInvocationID %uint_0
|
|
%26 = OpLoad %uint %25
|
|
%28 = OpAccessChain %_ptr_StorageBuffer_float %x_20 %uint_0 %26
|
|
%29 = OpLoad %float %28
|
|
OpReturnValue %29
|
|
OpFunctionEnd
|
|
%unaryOperation_f1_ = OpFunction %float None %30
|
|
%a = OpFunctionParameter %_ptr_Function_float
|
|
%34 = OpLabel
|
|
%36 = OpLoad %float %a
|
|
%38 = OpFOrdLessThan %bool %36 %37
|
|
OpSelectionMerge %40 None
|
|
OpBranchConditional %38 %41 %40
|
|
%41 = OpLabel
|
|
OpReturnValue %float_0x1p_128
|
|
%40 = OpLabel
|
|
%44 = OpLoad %float %a
|
|
%45 = OpExtInst %float %46 Log %44
|
|
OpReturnValue %45
|
|
OpFunctionEnd
|
|
%setOutput_i1_f1_ = OpFunction %void None %47
|
|
%flatIndex = OpFunctionParameter %_ptr_Function_int
|
|
%value = OpFunctionParameter %_ptr_Function_float
|
|
%53 = OpLabel
|
|
%55 = OpLoad %int %flatIndex
|
|
%57 = OpLoad %float %value
|
|
%58 = OpAccessChain %_ptr_StorageBuffer_float %x_16 %uint_0 %55
|
|
OpStore %58 %57
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%main_1 = OpFunction %void None %59
|
|
%61 = OpLabel
|
|
%index = OpVariable %_ptr_Function_int Function %63
|
|
%a_1 = OpVariable %_ptr_Function_float Function %37
|
|
%param = OpVariable %_ptr_Function_float Function %37
|
|
%param_1 = OpVariable %_ptr_Function_int Function %63
|
|
%param_2 = OpVariable %_ptr_Function_float Function %37
|
|
%68 = OpAccessChain %_ptr_Private_uint %gl_GlobalInvocationID %uint_0
|
|
%69 = OpLoad %uint %68
|
|
%70 = OpBitcast %int %69
|
|
OpStore %index %70
|
|
%71 = OpLoad %int %index
|
|
%74 = OpAccessChain %_ptr_Uniform_int %x_24 %uint_4
|
|
%75 = OpLoad %int %74
|
|
%76 = OpSLessThan %bool %71 %75
|
|
OpSelectionMerge %77 None
|
|
OpBranchConditional %76 %78 %77
|
|
%78 = OpLabel
|
|
%79 = OpFunctionCall %float %getAAtOutCoords_
|
|
OpStore %a_1 %79
|
|
%80 = OpLoad %float %a_1
|
|
OpStore %param %80
|
|
%81 = OpFunctionCall %float %unaryOperation_f1_ %param
|
|
%83 = OpLoad %int %index
|
|
OpStore %param_1 %83
|
|
OpStore %param_2 %81
|
|
%84 = OpFunctionCall %void %setOutput_i1_f1_ %param_1 %param_2
|
|
OpBranch %77
|
|
%77 = OpLabel
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%main_inner = OpFunction %void None %87
|
|
%gl_GlobalInvocationID_param = OpFunctionParameter %v3uint
|
|
%90 = OpLabel
|
|
OpStore %gl_GlobalInvocationID %gl_GlobalInvocationID_param
|
|
%91 = OpFunctionCall %void %main_1
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%main = OpFunction %void None %59
|
|
%93 = OpLabel
|
|
%95 = OpLoad %v3uint %gl_GlobalInvocationID_param_1
|
|
%94 = OpFunctionCall %void %main_inner %95
|
|
OpReturn
|
|
OpFunctionEnd
|