blob: aef87cbdc78e187851d4e8ae88d5ddfaa2720b04 [file] [log] [blame]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 43
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %main "main"
OpExecutionMode %main LocalSize 1 1 1
OpName %uniforms_block "uniforms_block"
OpMemberName %uniforms_block 0 "inner"
OpName %Uniforms "Uniforms"
OpMemberName %Uniforms 0 "i"
OpName %uniforms "uniforms"
OpName %f "f"
OpName %i "i"
OpName %main "main"
OpName %OuterS "OuterS"
OpMemberName %OuterS 0 "a1"
OpName %s1 "s1"
OpName %v "v"
OpDecorate %uniforms_block Block
OpMemberDecorate %uniforms_block 0 Offset 0
OpMemberDecorate %Uniforms 0 Offset 0
OpDecorate %uniforms NonWritable
OpDecorate %uniforms DescriptorSet 1
OpDecorate %uniforms Binding 4
OpMemberDecorate %OuterS 0 Offset 0
OpDecorate %_arr_uint_uint_8 ArrayStride 4
%uint = OpTypeInt 32 0
%Uniforms = OpTypeStruct %uint
%uniforms_block = OpTypeStruct %Uniforms
%_ptr_Uniform_uniforms_block = OpTypePointer Uniform %uniforms_block
%uniforms = OpVariable %_ptr_Uniform_uniforms_block Uniform
%6 = OpTypeFunction %uint %uint
%uint_1 = OpConstant %uint 1
%void = OpTypeVoid
%12 = OpTypeFunction %void
%uint_8 = OpConstant %uint 8
%_arr_uint_uint_8 = OpTypeArray %uint %uint_8
%OuterS = OpTypeStruct %_arr_uint_uint_8
%_ptr_Function_OuterS = OpTypePointer Function %OuterS
%21 = OpConstantNull %OuterS
%float = OpTypeFloat 32
%v3float = OpTypeVector %float 3
%_ptr_Function_v3float = OpTypePointer Function %v3float
%26 = OpConstantNull %v3float
%uint_0 = OpConstant %uint 0
%_ptr_Uniform_uint = OpTypePointer Uniform %uint
%_ptr_Function_uint = OpTypePointer Function %uint
%_ptr_Function_float = OpTypePointer Function %float
%float_1 = OpConstant %float 1
%f = OpFunction %uint None %6
%i = OpFunctionParameter %uint
%9 = OpLabel
%11 = OpIAdd %uint %i %uint_1
OpReturnValue %11
OpFunctionEnd
%main = OpFunction %void None %12
%15 = OpLabel
%s1 = OpVariable %_ptr_Function_OuterS Function %21
%v = OpVariable %_ptr_Function_v3float Function %26
%29 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0 %uint_0
%30 = OpLoad %uint %29
%32 = OpAccessChain %_ptr_Function_uint %s1 %uint_0 %30
%33 = OpLoad %uint %32
%35 = OpAccessChain %_ptr_Function_float %v %33
OpStore %35 %float_1
%38 = OpAccessChain %_ptr_Uniform_uint %uniforms %uint_0 %uint_0
%39 = OpLoad %uint %38
%40 = OpAccessChain %_ptr_Function_uint %s1 %uint_0 %39
%41 = OpLoad %uint %40
%37 = OpFunctionCall %uint %f %41
%42 = OpAccessChain %_ptr_Function_float %v %37
OpStore %42 %float_1
OpReturn
OpFunctionEnd