mirror of
https://github.com/gfx-rs/wgpu.git
synced 2024-11-23 07:14:01 +00:00
119 lines
3.0 KiB
Plaintext
119 lines
3.0 KiB
Plaintext
; SPIR-V
|
|
; Version: 1.1
|
|
; Generator: rspirv
|
|
; Bound: 76
|
|
OpCapability Shader
|
|
OpCapability ShaderNonUniform
|
|
OpExtension "SPV_KHR_storage_buffer_storage_class"
|
|
OpExtension "SPV_EXT_descriptor_indexing"
|
|
%1 = OpExtInstImport "GLSL.std.450"
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint Fragment %25 "main" %20 %23
|
|
OpExecutionMode %25 OriginUpperLeft
|
|
OpMemberDecorate %4 0 Offset 0
|
|
OpDecorate %6 ArrayStride 4
|
|
OpMemberDecorate %7 0 Offset 0
|
|
OpMemberDecorate %7 1 Offset 4
|
|
OpDecorate %7 Block
|
|
OpMemberDecorate %10 0 Offset 0
|
|
OpDecorate %11 NonWritable
|
|
OpDecorate %11 DescriptorSet 0
|
|
OpDecorate %11 Binding 0
|
|
OpDecorate %15 DescriptorSet 0
|
|
OpDecorate %15 Binding 10
|
|
OpDecorate %16 Block
|
|
OpMemberDecorate %16 0 Offset 0
|
|
OpDecorate %20 Location 0
|
|
OpDecorate %20 Flat
|
|
OpDecorate %23 Location 0
|
|
OpDecorate %55 NonUniform
|
|
%2 = OpTypeVoid
|
|
%3 = OpTypeInt 32 0
|
|
%4 = OpTypeStruct %3
|
|
%5 = OpTypeInt 32 1
|
|
%6 = OpTypeRuntimeArray %5
|
|
%7 = OpTypeStruct %3 %6
|
|
%9 = OpConstant %3 1
|
|
%8 = OpTypeArray %7 %9
|
|
%10 = OpTypeStruct %3
|
|
%14 = OpConstant %3 10
|
|
%13 = OpTypeArray %7 %14
|
|
%12 = OpTypePointer StorageBuffer %13
|
|
%11 = OpVariable %12 StorageBuffer
|
|
%16 = OpTypeStruct %4
|
|
%17 = OpTypePointer Uniform %16
|
|
%15 = OpVariable %17 Uniform
|
|
%21 = OpTypePointer Input %3
|
|
%20 = OpVariable %21 Input
|
|
%24 = OpTypePointer Output %3
|
|
%23 = OpVariable %24 Output
|
|
%26 = OpTypeFunction %2
|
|
%27 = OpTypePointer Uniform %4
|
|
%28 = OpConstant %3 0
|
|
%30 = OpTypePointer StorageBuffer %8
|
|
%32 = OpTypePointer Function %3
|
|
%34 = OpTypePointer Uniform %3
|
|
%38 = OpTypePointer StorageBuffer %7
|
|
%39 = OpTypePointer StorageBuffer %3
|
|
%45 = OpTypeBool
|
|
%47 = OpConstantNull %3
|
|
%62 = OpTypePointer StorageBuffer %6
|
|
%25 = OpFunction %2 None %26
|
|
%18 = OpLabel
|
|
%31 = OpVariable %32 Function %28
|
|
%22 = OpLoad %3 %20
|
|
%19 = OpCompositeConstruct %10 %22
|
|
%29 = OpAccessChain %27 %15 %28
|
|
OpBranch %33
|
|
%33 = OpLabel
|
|
%35 = OpAccessChain %34 %29 %28
|
|
%36 = OpLoad %3 %35
|
|
%37 = OpCompositeExtract %3 %19 0
|
|
%40 = OpAccessChain %39 %11 %28 %28
|
|
%41 = OpLoad %3 %40
|
|
%42 = OpLoad %3 %31
|
|
%43 = OpIAdd %3 %42 %41
|
|
OpStore %31 %43
|
|
%44 = OpULessThan %45 %36 %9
|
|
OpSelectionMerge %48 None
|
|
OpBranchConditional %44 %49 %48
|
|
%49 = OpLabel
|
|
%46 = OpAccessChain %39 %11 %36 %28
|
|
%50 = OpLoad %3 %46
|
|
OpBranch %48
|
|
%48 = OpLabel
|
|
%51 = OpPhi %3 %47 %33 %50 %49
|
|
%52 = OpLoad %3 %31
|
|
%53 = OpIAdd %3 %52 %51
|
|
OpStore %31 %53
|
|
%54 = OpULessThan %45 %37 %9
|
|
OpSelectionMerge %56 None
|
|
OpBranchConditional %54 %57 %56
|
|
%57 = OpLabel
|
|
%55 = OpAccessChain %39 %11 %37 %28
|
|
%58 = OpLoad %3 %55
|
|
OpBranch %56
|
|
%56 = OpLabel
|
|
%59 = OpPhi %3 %47 %48 %58 %57
|
|
%60 = OpLoad %3 %31
|
|
%61 = OpIAdd %3 %60 %59
|
|
OpStore %31 %61
|
|
%63 = OpAccessChain %38 %11 %28
|
|
%64 = OpArrayLength %3 %63 1
|
|
%65 = OpLoad %3 %31
|
|
%66 = OpIAdd %3 %65 %64
|
|
OpStore %31 %66
|
|
%67 = OpAccessChain %38 %11 %36
|
|
%68 = OpArrayLength %3 %67 1
|
|
%69 = OpLoad %3 %31
|
|
%70 = OpIAdd %3 %69 %68
|
|
OpStore %31 %70
|
|
%71 = OpAccessChain %38 %11 %37
|
|
%72 = OpArrayLength %3 %71 1
|
|
%73 = OpLoad %3 %31
|
|
%74 = OpIAdd %3 %73 %72
|
|
OpStore %31 %74
|
|
%75 = OpLoad %3 %31
|
|
OpStore %23 %75
|
|
OpReturn
|
|
OpFunctionEnd |