192 lines
7.9 KiB
Plaintext
192 lines
7.9 KiB
Plaintext
; SPIR-V
|
|
; Version: 1.0
|
|
; Generator: Khronos Glslang Reference Front End; 1
|
|
; Bound: 152
|
|
; Schema: 0
|
|
OpCapability Shader
|
|
%1 = OpExtInstImport "GLSL.std.450"
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint GLCompute %main "main"
|
|
OpExecutionMode %main LocalSize 1 1 1
|
|
OpSource ESSL 310
|
|
OpName %main "main"
|
|
OpName %and_b1_b1_ "and(b1;b1;"
|
|
OpName %a "a"
|
|
OpName %b "b"
|
|
OpName %and_vb2_vb2_ "and(vb2;vb2;"
|
|
OpName %a_0 "a"
|
|
OpName %b_0 "b"
|
|
OpName %and_vb3_vb3_ "and(vb3;vb3;"
|
|
OpName %a_1 "a"
|
|
OpName %b_1 "b"
|
|
OpName %and_vb4_vb4_ "and(vb4;vb4;"
|
|
OpName %a_2 "a"
|
|
OpName %b_2 "b"
|
|
OpName %b0 "b0"
|
|
OpName %SSBO0 "SSBO0"
|
|
OpMemberName %SSBO0 0 "a"
|
|
OpMemberName %SSBO0 1 "b"
|
|
OpMemberName %SSBO0 2 "c"
|
|
OpMemberName %SSBO0 3 "d"
|
|
OpName %s0 "s0"
|
|
OpName %SSBO1 "SSBO1"
|
|
OpMemberName %SSBO1 0 "a"
|
|
OpMemberName %SSBO1 1 "b"
|
|
OpMemberName %SSBO1 2 "c"
|
|
OpMemberName %SSBO1 3 "d"
|
|
OpName %s1 "s1"
|
|
OpName %param "param"
|
|
OpName %param_0 "param"
|
|
OpName %b1 "b1"
|
|
OpName %param_1 "param"
|
|
OpName %param_2 "param"
|
|
OpName %b2 "b2"
|
|
OpName %param_3 "param"
|
|
OpName %param_4 "param"
|
|
OpName %b3 "b3"
|
|
OpName %param_5 "param"
|
|
OpName %param_6 "param"
|
|
OpMemberDecorate %SSBO0 0 Offset 0
|
|
OpMemberDecorate %SSBO0 1 Offset 8
|
|
OpMemberDecorate %SSBO0 2 Offset 16
|
|
OpMemberDecorate %SSBO0 3 Offset 32
|
|
OpDecorate %SSBO0 BufferBlock
|
|
OpDecorate %s0 DescriptorSet 0
|
|
OpDecorate %s0 Binding 0
|
|
OpMemberDecorate %SSBO1 0 Offset 0
|
|
OpMemberDecorate %SSBO1 1 Offset 8
|
|
OpMemberDecorate %SSBO1 2 Offset 16
|
|
OpMemberDecorate %SSBO1 3 Offset 32
|
|
OpDecorate %SSBO1 BufferBlock
|
|
OpDecorate %s1 DescriptorSet 0
|
|
OpDecorate %s1 Binding 1
|
|
%void = OpTypeVoid
|
|
%3 = OpTypeFunction %void
|
|
%bool = OpTypeBool
|
|
%_ptr_Function_bool = OpTypePointer Function %bool
|
|
%8 = OpTypeFunction %bool %_ptr_Function_bool %_ptr_Function_bool
|
|
%v2bool = OpTypeVector %bool 2
|
|
%_ptr_Function_v2bool = OpTypePointer Function %v2bool
|
|
%15 = OpTypeFunction %v2bool %_ptr_Function_v2bool %_ptr_Function_v2bool
|
|
%v3bool = OpTypeVector %bool 3
|
|
%_ptr_Function_v3bool = OpTypePointer Function %v3bool
|
|
%22 = OpTypeFunction %v3bool %_ptr_Function_v3bool %_ptr_Function_v3bool
|
|
%v4bool = OpTypeVector %bool 4
|
|
%_ptr_Function_v4bool = OpTypePointer Function %v4bool
|
|
%29 = OpTypeFunction %v4bool %_ptr_Function_v4bool %_ptr_Function_v4bool
|
|
%float = OpTypeFloat 32
|
|
%v2float = OpTypeVector %float 2
|
|
%v3float = OpTypeVector %float 3
|
|
%v4float = OpTypeVector %float 4
|
|
%SSBO0 = OpTypeStruct %float %v2float %v3float %v4float
|
|
%_ptr_Uniform_SSBO0 = OpTypePointer Uniform %SSBO0
|
|
%s0 = OpVariable %_ptr_Uniform_SSBO0 Uniform
|
|
%int = OpTypeInt 32 1
|
|
%102 = OpConstant %int 0
|
|
%_ptr_Uniform_float = OpTypePointer Uniform %float
|
|
%SSBO1 = OpTypeStruct %float %v2float %v3float %v4float
|
|
%_ptr_Uniform_SSBO1 = OpTypePointer Uniform %SSBO1
|
|
%s1 = OpVariable %_ptr_Uniform_SSBO1 Uniform
|
|
%117 = OpConstant %int 1
|
|
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
|
|
%129 = OpConstant %int 2
|
|
%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
|
|
%141 = OpConstant %int 3
|
|
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
|
|
%main = OpFunction %void None %3
|
|
%5 = OpLabel
|
|
%b0 = OpVariable %_ptr_Function_bool Function
|
|
%param = OpVariable %_ptr_Function_bool Function
|
|
%param_0 = OpVariable %_ptr_Function_bool Function
|
|
%b1 = OpVariable %_ptr_Function_v2bool Function
|
|
%param_1 = OpVariable %_ptr_Function_v2bool Function
|
|
%param_2 = OpVariable %_ptr_Function_v2bool Function
|
|
%b2 = OpVariable %_ptr_Function_v3bool Function
|
|
%param_3 = OpVariable %_ptr_Function_v3bool Function
|
|
%param_4 = OpVariable %_ptr_Function_v3bool Function
|
|
%b3 = OpVariable %_ptr_Function_v4bool Function
|
|
%param_5 = OpVariable %_ptr_Function_v4bool Function
|
|
%param_6 = OpVariable %_ptr_Function_v4bool Function
|
|
%104 = OpAccessChain %_ptr_Uniform_float %s0 %102
|
|
%105 = OpLoad %float %104
|
|
%106 = OpIsInf %bool %105
|
|
%110 = OpAccessChain %_ptr_Uniform_float %s1 %102
|
|
%111 = OpLoad %float %110
|
|
%112 = OpIsNan %bool %111
|
|
OpStore %param %106
|
|
OpStore %param_0 %112
|
|
%115 = OpFunctionCall %bool %and_b1_b1_ %param %param_0
|
|
OpStore %b0 %115
|
|
%119 = OpAccessChain %_ptr_Uniform_v2float %s0 %117
|
|
%120 = OpLoad %v2float %119
|
|
%121 = OpIsInf %v2bool %120
|
|
%122 = OpAccessChain %_ptr_Uniform_v2float %s1 %117
|
|
%123 = OpLoad %v2float %122
|
|
%124 = OpIsNan %v2bool %123
|
|
OpStore %param_1 %121
|
|
OpStore %param_2 %124
|
|
%127 = OpFunctionCall %v2bool %and_vb2_vb2_ %param_1 %param_2
|
|
OpStore %b1 %127
|
|
%131 = OpAccessChain %_ptr_Uniform_v3float %s0 %129
|
|
%132 = OpLoad %v3float %131
|
|
%133 = OpIsInf %v3bool %132
|
|
%134 = OpAccessChain %_ptr_Uniform_v3float %s1 %129
|
|
%135 = OpLoad %v3float %134
|
|
%136 = OpIsNan %v3bool %135
|
|
OpStore %param_3 %133
|
|
OpStore %param_4 %136
|
|
%139 = OpFunctionCall %v3bool %and_vb3_vb3_ %param_3 %param_4
|
|
OpStore %b2 %139
|
|
%143 = OpAccessChain %_ptr_Uniform_v4float %s0 %141
|
|
%144 = OpLoad %v4float %143
|
|
%145 = OpIsInf %v4bool %144
|
|
%146 = OpAccessChain %_ptr_Uniform_v4float %s1 %141
|
|
%147 = OpLoad %v4float %146
|
|
%148 = OpIsNan %v4bool %147
|
|
OpStore %param_5 %145
|
|
OpStore %param_6 %148
|
|
%151 = OpFunctionCall %v4bool %and_vb4_vb4_ %param_5 %param_6
|
|
OpStore %b3 %151
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%and_b1_b1_ = OpFunction %bool None %8
|
|
%a = OpFunctionParameter %_ptr_Function_bool
|
|
%b = OpFunctionParameter %_ptr_Function_bool
|
|
%12 = OpLabel
|
|
%34 = OpLoad %bool %a
|
|
%35 = OpLoad %bool %b
|
|
%36 = OpLogicalAnd %bool %34 %35
|
|
%37 = OpLogicalOr %bool %36 %35
|
|
%38 = OpLogicalNot %bool %37
|
|
OpReturnValue %38
|
|
OpFunctionEnd
|
|
%and_vb2_vb2_ = OpFunction %v2bool None %15
|
|
%a_0 = OpFunctionParameter %_ptr_Function_v2bool
|
|
%b_0 = OpFunctionParameter %_ptr_Function_v2bool
|
|
%19 = OpLabel
|
|
%39 = OpLoad %v2bool %a_0
|
|
%41 = OpLoad %v2bool %b_0
|
|
%48 = OpLogicalAnd %v2bool %39 %41
|
|
%49 = OpLogicalOr %v2bool %48 %41
|
|
%50 = OpLogicalNot %v2bool %49
|
|
OpReturnValue %50
|
|
OpFunctionEnd
|
|
%and_vb3_vb3_ = OpFunction %v3bool None %22
|
|
%a_1 = OpFunctionParameter %_ptr_Function_v3bool
|
|
%b_1 = OpFunctionParameter %_ptr_Function_v3bool
|
|
%26 = OpLabel
|
|
%52 = OpLoad %v3bool %a_1
|
|
%54 = OpLoad %v3bool %b_1
|
|
%66 = OpLogicalAnd %v3bool %52 %54
|
|
OpReturnValue %66
|
|
OpFunctionEnd
|
|
%and_vb4_vb4_ = OpFunction %v4bool None %29
|
|
%a_2 = OpFunctionParameter %_ptr_Function_v4bool
|
|
%b_2 = OpFunctionParameter %_ptr_Function_v4bool
|
|
%33 = OpLabel
|
|
%70 = OpLoad %v4bool %a_2
|
|
%72 = OpLoad %v4bool %b_2
|
|
%74 = OpLogicalAnd %v4bool %70 %72
|
|
OpReturnValue %74
|
|
OpFunctionEnd
|