; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 40
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %prevent_dce_block "prevent_dce_block"
               OpMemberName %prevent_dce_block 0 "inner"
               OpName %prevent_dce "prevent_dce"
               OpName %arg_0 "arg_0"
               OpName %textureLoad_d37a08 "textureLoad_d37a08"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %prevent_dce_block Block
               OpMemberDecorate %prevent_dce_block 0 Offset 0
               OpDecorate %prevent_dce DescriptorSet 0
               OpDecorate %prevent_dce Binding 0
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
       %uint = OpTypeInt 32 0
     %v4uint = OpTypeVector %uint 4
%prevent_dce_block = OpTypeStruct %v4uint
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
%prevent_dce = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
          %8 = OpTypeImage %uint 2D 0 1 0 2 Rgba8ui
%_ptr_UniformConstant_8 = OpTypePointer UniformConstant %8
      %arg_0 = OpVariable %_ptr_UniformConstant_8 UniformConstant
          %9 = OpTypeFunction %v4uint
        %int = OpTypeInt 32 1
      %v3int = OpTypeVector %int 3
      %v2int = OpTypeVector %int 2
      %int_1 = OpConstant %int 1
         %18 = OpConstantComposite %v2int %int_1 %int_1
     %uint_1 = OpConstant %uint 1
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
         %26 = OpConstantNull %v4uint
       %void = OpTypeVoid
         %28 = OpTypeFunction %void
     %uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_v4uint = OpTypePointer StorageBuffer %v4uint
%textureLoad_d37a08 = OpFunction %v4uint None %9
         %11 = OpLabel
        %res = OpVariable %_ptr_Function_v4uint Function %26
         %13 = OpLoad %8 %arg_0
         %19 = OpCompositeExtract %int %18 0
         %20 = OpCompositeExtract %int %18 1
         %21 = OpBitcast %int %uint_1
         %23 = OpCompositeConstruct %v3int %19 %20 %21
         %12 = OpImageRead %v4uint %13 %23
               OpStore %res %12
         %27 = OpLoad %v4uint %res
               OpReturnValue %27
               OpFunctionEnd
%fragment_main = OpFunction %void None %28
         %31 = OpLabel
         %34 = OpAccessChain %_ptr_StorageBuffer_v4uint %prevent_dce %uint_0
         %35 = OpFunctionCall %v4uint %textureLoad_d37a08
               OpStore %34 %35
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %28
         %37 = OpLabel
         %38 = OpAccessChain %_ptr_StorageBuffer_v4uint %prevent_dce %uint_0
         %39 = OpFunctionCall %v4uint %textureLoad_d37a08
               OpStore %38 %39
               OpReturn
               OpFunctionEnd
