blob: c1409543ce572e670a5d679f00fbdc7be3fb3c92 [file] [log] [blame]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 33
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %frag_main "frag_main"
OpExecutionMode %frag_main OriginUpperLeft
OpName %output_block "output_block"
OpMemberName %output_block 0 "inner"
OpName %S "S"
OpMemberName %S 0 "f"
OpMemberName %S 1 "u"
OpMemberName %S 2 "v"
OpName %output "output"
OpName %assign_and_preserve_padding_output "assign_and_preserve_padding_output"
OpName %value "value"
OpName %frag_main "frag_main"
OpDecorate %output_block Block
OpMemberDecorate %output_block 0 Offset 0
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %S 1 Offset 4
OpMemberDecorate %S 2 Offset 128
OpDecorate %output DescriptorSet 0
OpDecorate %output Binding 0
%float = OpTypeFloat 32
%uint = OpTypeInt 32 0
%v4float = OpTypeVector %float 4
%S = OpTypeStruct %float %uint %v4float
%output_block = OpTypeStruct %S
%_ptr_StorageBuffer_output_block = OpTypePointer StorageBuffer %output_block
%output = OpVariable %_ptr_StorageBuffer_output_block StorageBuffer
%void = OpTypeVoid
%8 = OpTypeFunction %void %S
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%uint_1 = OpConstant %uint 1
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%uint_2 = OpConstant %uint 2
%_ptr_StorageBuffer_v4float = OpTypePointer StorageBuffer %v4float
%25 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%float_3 = OpConstant %float 3
%31 = OpConstantComposite %v4float %float_3 %float_3 %float_3 %float_3
%32 = OpConstantComposite %S %float_1 %uint_2 %31
%assign_and_preserve_padding_output = OpFunction %void None %8
%value = OpFunctionParameter %S
%12 = OpLabel
%15 = OpAccessChain %_ptr_StorageBuffer_float %output %uint_0 %uint_0
%16 = OpCompositeExtract %float %value 0
OpStore %15 %16
%19 = OpAccessChain %_ptr_StorageBuffer_uint %output %uint_0 %uint_1
%20 = OpCompositeExtract %uint %value 1
OpStore %19 %20
%23 = OpAccessChain %_ptr_StorageBuffer_v4float %output %uint_0 %uint_2
%24 = OpCompositeExtract %v4float %value 2
OpStore %23 %24
OpReturn
OpFunctionEnd
%frag_main = OpFunction %void None %25
%27 = OpLabel
%28 = OpFunctionCall %void %assign_and_preserve_padding_output %32
OpReturn
OpFunctionEnd