1617a3babSopenharmony_cihlsl.earlydepthstencil.frag 2617a3babSopenharmony_ciShader version: 500 3617a3babSopenharmony_cigl_FragCoord origin is upper left 4617a3babSopenharmony_ciusing early_fragment_tests 5617a3babSopenharmony_ci0:? Sequence 6617a3babSopenharmony_ci0:8 Function Definition: @main(struct-InputStruct-vf41; ( temp uint) 7617a3babSopenharmony_ci0:8 Function Parameters: 8617a3babSopenharmony_ci0:8 'input' ( in structure{ temp 4-component vector of float Position}) 9617a3babSopenharmony_ci0:? Sequence 10617a3babSopenharmony_ci0:10 move second child to first child ( temp uint) 11617a3babSopenharmony_ci0:10 'oldVal' ( temp uint) 12617a3babSopenharmony_ci0:10 imageAtomicExchange ( temp uint) 13617a3babSopenharmony_ci0:10 'Values' (layout( r32ui) uniform uimage2D) 14617a3babSopenharmony_ci0:10 Construct uvec2 ( temp 2-component vector of uint) 15617a3babSopenharmony_ci0:10 Convert float to uint ( temp uint) 16617a3babSopenharmony_ci0:10 direct index ( temp float) 17617a3babSopenharmony_ci0:10 Position: direct index for structure ( temp 4-component vector of float) 18617a3babSopenharmony_ci0:10 'input' ( in structure{ temp 4-component vector of float Position}) 19617a3babSopenharmony_ci0:10 Constant: 20617a3babSopenharmony_ci0:10 0 (const int) 21617a3babSopenharmony_ci0:10 Constant: 22617a3babSopenharmony_ci0:10 0 (const int) 23617a3babSopenharmony_ci0:10 Convert float to uint ( temp uint) 24617a3babSopenharmony_ci0:10 direct index ( temp float) 25617a3babSopenharmony_ci0:10 Position: direct index for structure ( temp 4-component vector of float) 26617a3babSopenharmony_ci0:10 'input' ( in structure{ temp 4-component vector of float Position}) 27617a3babSopenharmony_ci0:10 Constant: 28617a3babSopenharmony_ci0:10 0 (const int) 29617a3babSopenharmony_ci0:10 Constant: 30617a3babSopenharmony_ci0:10 1 (const int) 31617a3babSopenharmony_ci0:10 Constant: 32617a3babSopenharmony_ci0:10 1 (const uint) 33617a3babSopenharmony_ci0:11 Branch: Return with expression 34617a3babSopenharmony_ci0:11 'oldVal' ( temp uint) 35617a3babSopenharmony_ci0:8 Function Definition: main( ( temp void) 36617a3babSopenharmony_ci0:8 Function Parameters: 37617a3babSopenharmony_ci0:? Sequence 38617a3babSopenharmony_ci0:8 Sequence 39617a3babSopenharmony_ci0:8 move second child to first child ( temp 4-component vector of float) 40617a3babSopenharmony_ci0:8 Position: direct index for structure ( temp 4-component vector of float) 41617a3babSopenharmony_ci0:? 'input' ( temp structure{ temp 4-component vector of float Position}) 42617a3babSopenharmony_ci0:8 Constant: 43617a3babSopenharmony_ci0:8 0 (const int) 44617a3babSopenharmony_ci0:? 'input.Position' ( in 4-component vector of float FragCoord) 45617a3babSopenharmony_ci0:8 move second child to first child ( temp uint) 46617a3babSopenharmony_ci0:? '@entryPointOutput' (layout( location=0) out uint) 47617a3babSopenharmony_ci0:8 Function Call: @main(struct-InputStruct-vf41; ( temp uint) 48617a3babSopenharmony_ci0:? 'input' ( temp structure{ temp 4-component vector of float Position}) 49617a3babSopenharmony_ci0:? Linker Objects 50617a3babSopenharmony_ci0:? 'Values' (layout( r32ui) uniform uimage2D) 51617a3babSopenharmony_ci0:? '@entryPointOutput' (layout( location=0) out uint) 52617a3babSopenharmony_ci0:? 'input.Position' ( in 4-component vector of float FragCoord) 53617a3babSopenharmony_ci 54617a3babSopenharmony_ci 55617a3babSopenharmony_ciLinked fragment stage: 56617a3babSopenharmony_ci 57617a3babSopenharmony_ci 58617a3babSopenharmony_ciShader version: 500 59617a3babSopenharmony_cigl_FragCoord origin is upper left 60617a3babSopenharmony_ciusing early_fragment_tests 61617a3babSopenharmony_ci0:? Sequence 62617a3babSopenharmony_ci0:8 Function Definition: @main(struct-InputStruct-vf41; ( temp uint) 63617a3babSopenharmony_ci0:8 Function Parameters: 64617a3babSopenharmony_ci0:8 'input' ( in structure{ temp 4-component vector of float Position}) 65617a3babSopenharmony_ci0:? Sequence 66617a3babSopenharmony_ci0:10 move second child to first child ( temp uint) 67617a3babSopenharmony_ci0:10 'oldVal' ( temp uint) 68617a3babSopenharmony_ci0:10 imageAtomicExchange ( temp uint) 69617a3babSopenharmony_ci0:10 'Values' (layout( r32ui) uniform uimage2D) 70617a3babSopenharmony_ci0:10 Construct uvec2 ( temp 2-component vector of uint) 71617a3babSopenharmony_ci0:10 Convert float to uint ( temp uint) 72617a3babSopenharmony_ci0:10 direct index ( temp float) 73617a3babSopenharmony_ci0:10 Position: direct index for structure ( temp 4-component vector of float) 74617a3babSopenharmony_ci0:10 'input' ( in structure{ temp 4-component vector of float Position}) 75617a3babSopenharmony_ci0:10 Constant: 76617a3babSopenharmony_ci0:10 0 (const int) 77617a3babSopenharmony_ci0:10 Constant: 78617a3babSopenharmony_ci0:10 0 (const int) 79617a3babSopenharmony_ci0:10 Convert float to uint ( temp uint) 80617a3babSopenharmony_ci0:10 direct index ( temp float) 81617a3babSopenharmony_ci0:10 Position: direct index for structure ( temp 4-component vector of float) 82617a3babSopenharmony_ci0:10 'input' ( in structure{ temp 4-component vector of float Position}) 83617a3babSopenharmony_ci0:10 Constant: 84617a3babSopenharmony_ci0:10 0 (const int) 85617a3babSopenharmony_ci0:10 Constant: 86617a3babSopenharmony_ci0:10 1 (const int) 87617a3babSopenharmony_ci0:10 Constant: 88617a3babSopenharmony_ci0:10 1 (const uint) 89617a3babSopenharmony_ci0:11 Branch: Return with expression 90617a3babSopenharmony_ci0:11 'oldVal' ( temp uint) 91617a3babSopenharmony_ci0:8 Function Definition: main( ( temp void) 92617a3babSopenharmony_ci0:8 Function Parameters: 93617a3babSopenharmony_ci0:? Sequence 94617a3babSopenharmony_ci0:8 Sequence 95617a3babSopenharmony_ci0:8 move second child to first child ( temp 4-component vector of float) 96617a3babSopenharmony_ci0:8 Position: direct index for structure ( temp 4-component vector of float) 97617a3babSopenharmony_ci0:? 'input' ( temp structure{ temp 4-component vector of float Position}) 98617a3babSopenharmony_ci0:8 Constant: 99617a3babSopenharmony_ci0:8 0 (const int) 100617a3babSopenharmony_ci0:? 'input.Position' ( in 4-component vector of float FragCoord) 101617a3babSopenharmony_ci0:8 move second child to first child ( temp uint) 102617a3babSopenharmony_ci0:? '@entryPointOutput' (layout( location=0) out uint) 103617a3babSopenharmony_ci0:8 Function Call: @main(struct-InputStruct-vf41; ( temp uint) 104617a3babSopenharmony_ci0:? 'input' ( temp structure{ temp 4-component vector of float Position}) 105617a3babSopenharmony_ci0:? Linker Objects 106617a3babSopenharmony_ci0:? 'Values' (layout( r32ui) uniform uimage2D) 107617a3babSopenharmony_ci0:? '@entryPointOutput' (layout( location=0) out uint) 108617a3babSopenharmony_ci0:? 'input.Position' ( in 4-component vector of float FragCoord) 109617a3babSopenharmony_ci 110617a3babSopenharmony_ci// Module Version 10000 111617a3babSopenharmony_ci// Generated by (magic number): 8000b 112617a3babSopenharmony_ci// Id's are bound by 50 113617a3babSopenharmony_ci 114617a3babSopenharmony_ci Capability Shader 115617a3babSopenharmony_ci 1: ExtInstImport "GLSL.std.450" 116617a3babSopenharmony_ci MemoryModel Logical GLSL450 117617a3babSopenharmony_ci EntryPoint Fragment 4 "main" 41 46 118617a3babSopenharmony_ci ExecutionMode 4 OriginUpperLeft 119617a3babSopenharmony_ci ExecutionMode 4 EarlyFragmentTests 120617a3babSopenharmony_ci Source HLSL 500 121617a3babSopenharmony_ci Name 4 "main" 122617a3babSopenharmony_ci Name 8 "InputStruct" 123617a3babSopenharmony_ci MemberName 8(InputStruct) 0 "Position" 124617a3babSopenharmony_ci Name 13 "@main(struct-InputStruct-vf41;" 125617a3babSopenharmony_ci Name 12 "input" 126617a3babSopenharmony_ci Name 16 "oldVal" 127617a3babSopenharmony_ci Name 19 "Values" 128617a3babSopenharmony_ci Name 39 "input" 129617a3babSopenharmony_ci Name 41 "input.Position" 130617a3babSopenharmony_ci Name 46 "@entryPointOutput" 131617a3babSopenharmony_ci Name 47 "param" 132617a3babSopenharmony_ci Decorate 19(Values) DescriptorSet 0 133617a3babSopenharmony_ci Decorate 19(Values) Binding 0 134617a3babSopenharmony_ci Decorate 41(input.Position) BuiltIn FragCoord 135617a3babSopenharmony_ci Decorate 46(@entryPointOutput) Location 0 136617a3babSopenharmony_ci 2: TypeVoid 137617a3babSopenharmony_ci 3: TypeFunction 2 138617a3babSopenharmony_ci 6: TypeFloat 32 139617a3babSopenharmony_ci 7: TypeVector 6(float) 4 140617a3babSopenharmony_ci 8(InputStruct): TypeStruct 7(fvec4) 141617a3babSopenharmony_ci 9: TypePointer Function 8(InputStruct) 142617a3babSopenharmony_ci 10: TypeInt 32 0 143617a3babSopenharmony_ci 11: TypeFunction 10(int) 9(ptr) 144617a3babSopenharmony_ci 15: TypePointer Function 10(int) 145617a3babSopenharmony_ci 17: TypeImage 10(int) 2D nonsampled format:R32ui 146617a3babSopenharmony_ci 18: TypePointer UniformConstant 17 147617a3babSopenharmony_ci 19(Values): 18(ptr) Variable UniformConstant 148617a3babSopenharmony_ci 20: TypeInt 32 1 149617a3babSopenharmony_ci 21: 20(int) Constant 0 150617a3babSopenharmony_ci 22: 10(int) Constant 0 151617a3babSopenharmony_ci 23: TypePointer Function 6(float) 152617a3babSopenharmony_ci 27: 10(int) Constant 1 153617a3babSopenharmony_ci 31: TypeVector 10(int) 2 154617a3babSopenharmony_ci 33: TypePointer Image 10(int) 155617a3babSopenharmony_ci 40: TypePointer Input 7(fvec4) 156617a3babSopenharmony_ci41(input.Position): 40(ptr) Variable Input 157617a3babSopenharmony_ci 43: TypePointer Function 7(fvec4) 158617a3babSopenharmony_ci 45: TypePointer Output 10(int) 159617a3babSopenharmony_ci46(@entryPointOutput): 45(ptr) Variable Output 160617a3babSopenharmony_ci 4(main): 2 Function None 3 161617a3babSopenharmony_ci 5: Label 162617a3babSopenharmony_ci 39(input): 9(ptr) Variable Function 163617a3babSopenharmony_ci 47(param): 9(ptr) Variable Function 164617a3babSopenharmony_ci 42: 7(fvec4) Load 41(input.Position) 165617a3babSopenharmony_ci 44: 43(ptr) AccessChain 39(input) 21 166617a3babSopenharmony_ci Store 44 42 167617a3babSopenharmony_ci 48:8(InputStruct) Load 39(input) 168617a3babSopenharmony_ci Store 47(param) 48 169617a3babSopenharmony_ci 49: 10(int) FunctionCall 13(@main(struct-InputStruct-vf41;) 47(param) 170617a3babSopenharmony_ci Store 46(@entryPointOutput) 49 171617a3babSopenharmony_ci Return 172617a3babSopenharmony_ci FunctionEnd 173617a3babSopenharmony_ci13(@main(struct-InputStruct-vf41;): 10(int) Function None 11 174617a3babSopenharmony_ci 12(input): 9(ptr) FunctionParameter 175617a3babSopenharmony_ci 14: Label 176617a3babSopenharmony_ci 16(oldVal): 15(ptr) Variable Function 177617a3babSopenharmony_ci 24: 23(ptr) AccessChain 12(input) 21 22 178617a3babSopenharmony_ci 25: 6(float) Load 24 179617a3babSopenharmony_ci 26: 10(int) ConvertFToU 25 180617a3babSopenharmony_ci 28: 23(ptr) AccessChain 12(input) 21 27 181617a3babSopenharmony_ci 29: 6(float) Load 28 182617a3babSopenharmony_ci 30: 10(int) ConvertFToU 29 183617a3babSopenharmony_ci 32: 31(ivec2) CompositeConstruct 26 30 184617a3babSopenharmony_ci 34: 33(ptr) ImageTexelPointer 19(Values) 32 22 185617a3babSopenharmony_ci 35: 10(int) AtomicExchange 34 27 22 27 186617a3babSopenharmony_ci Store 16(oldVal) 35 187617a3babSopenharmony_ci 36: 10(int) Load 16(oldVal) 188617a3babSopenharmony_ci ReturnValue 36 189617a3babSopenharmony_ci FunctionEnd 190