spv.split.barrier.comp // Module Version 10600 // Generated by (magic number): 8000b // Id's are bound by 155 Capability Shader Capability SplitBarrierEXT Extension "SPV_EXT_split_barrier" Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint GLCompute 14 "main" 43 ExecutionMode 14 LocalSize 1 1 1 2: String "spv.split.barrier.comp" 8: String "uint" 18: String "fooBarrier1" 21: String "#version 430 core #extension GL_EXT_split_barrier : enable float f; void fooBarrier1() { controlBarrierArrive(); controlBarrierWait(); } void fooBarrier2() { uint i = 0; for (i = 0; i < 16; ++i) { controlBarrierArrive(); controlBarrierWait(); } } void fooBarrier3() { bool cond = f > 0.0f; if (cond) { controlBarrierArrive(); } if (cond) { controlBarrierWait(); } } void main() { fooBarrier1(); fooBarrier2(); fooBarrier3(); } " 28: String "fooBarrier2" 33: String "fooBarrier3" 36: String "main" 39: String "float" 45: String "f" 65: String "i" 87: String "bool" 98: String "int" 112: String "cond" SourceExtension "GL_EXT_split_barrier" Name 14 "main" Name 16 "fooBarrier1(" Name 26 "fooBarrier2(" Name 31 "fooBarrier3(" Name 43 "f" Name 63 "i" Name 110 "cond" ModuleProcessed "auto-map-locations" ModuleProcessed "auto-map-bindings" ModuleProcessed "client vulkan100" ModuleProcessed "target-env spirv1.6" ModuleProcessed "target-env vulkan1.4" ModuleProcessed "keep-uncalled" ModuleProcessed "entry-point main" 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 10: 7(int) Constant 32 11: 7(int) Constant 6 12: 7(int) Constant 0 9: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 10 11 12 13: 7(int) Constant 3 6: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4 20: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 21 23: 7(int) Constant 1 24: 7(int) Constant 4 25: 7(int) Constant 2 22: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 23 24 20 25 19: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 18 6 20 11 12 22 18 13 11 30: 7(int) Constant 12 29: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 28 6 20 30 12 22 28 13 30 35: 7(int) Constant 21 34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 33 6 20 35 12 22 33 13 35 37: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 36 6 20 10 12 22 36 13 10 38: TypeFloat 32 40: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 39 10 13 12 41: TypePointer Private 38(float) 42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 40 11 12 43(f): 41(ptr) Variable Private 46: 7(int) Constant 8 44: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 45 40 20 24 12 22 45 43(f) 46 50: 7(int) Constant 260 52: 7(int) Constant 258 54: 7(int) Constant 9 56: 7(int) Constant 10 60: TypePointer Function 7(int) 61: 7(int) Constant 7 62: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 61 12 66: 7(int) Constant 14 64: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 65 9 20 66 12 29 24 68: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) 71: 7(int) Constant 15 72: 7(int) Constant 5 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 71 72 29 85: 7(int) Constant 16 86: TypeBool 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 87 10 25 12 93: 7(int) Constant 17 97: TypeInt 32 1 99: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 98 10 24 12 100: 97(int) Constant 1 104: 7(int) Constant 19 108: TypePointer Function 86(bool) 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 88 61 12 113: 7(int) Constant 23 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 112 88 20 113 12 34 24 117: 38(float) Constant 0 121: 7(int) Constant 24 125: 7(int) Constant 25 126: 7(int) Constant 30 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 125 126 34 132: 7(int) Constant 27 136: 7(int) Constant 28 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 136 136 34 146: 7(int) Constant 34 149: 7(int) Constant 35 152: 7(int) Constant 36 154: 7(int) Constant 37 14(main): 4 Function None 5 15: Label 142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 37 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 10 10 12 12 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 37 14(main) 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 146 146 12 12 144: 4 FunctionCall 16(fooBarrier1() 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 149 149 12 12 147: 4 FunctionCall 26(fooBarrier2() 151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 152 152 12 12 150: 4 FunctionCall 31(fooBarrier3() 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 154 154 12 12 Return FunctionEnd 16(fooBarrier1(): 4 Function None 5 17: Label 48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 19 49: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 11 11 12 12 47: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 19 16(fooBarrier1() 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 46 46 12 12 ControlBarrierArriveEXT 25 25 50 53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 54 54 12 12 ControlBarrierWaitEXT 25 25 52 55: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 56 56 12 12 Return FunctionEnd 26(fooBarrier2(): 4 Function None 5 27: Label 63(i): 60(ptr) Variable Function 58: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 59: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 30 30 12 12 57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 29 26(fooBarrier2() 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 66 66 12 12 67: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 64 63(i) 68 Store 63(i) 12 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 74: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 71 71 12 12 Store 63(i) 12 Branch 75 75: Label 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 80: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 71 71 12 12 LoopMerge 77 78 None Branch 81 81: Label 83: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 71 71 12 12 82: 7(int) Load 63(i) 89: 86(bool) ULessThan 82 85 BranchConditional 89 76 77 76: Label 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 85 85 12 12 ControlBarrierArriveEXT 25 25 50 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 93 93 12 12 ControlBarrierWaitEXT 25 25 52 Branch 78 78: Label 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 71 71 12 12 94: 7(int) Load 63(i) 101: 7(int) IAdd 94 100 Store 63(i) 101 Branch 75 77: Label 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 104 104 12 12 Return FunctionEnd 31(fooBarrier3(): 4 Function None 5 32: Label 110(cond): 108(ptr) Variable Function 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 107: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 35 35 12 12 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 31(fooBarrier3() 115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 113 113 12 12 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 111 110(cond) 68 116: 38(float) Load 43(f) 118: 86(bool) FOrdGreaterThan 116 117 Store 110(cond) 118 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 121 121 12 12 119: 86(bool) Load 110(cond) SelectionMerge 123 None BranchConditional 119 122 123 122: Label 127: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 124 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 125 125 12 12 ControlBarrierArriveEXT 25 25 50 Branch 123 123: Label 130: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 132 132 12 12 129: 86(bool) Load 110(cond) SelectionMerge 134 None BranchConditional 129 133 134 133: Label 137: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 135 138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 136 136 12 12 ControlBarrierWaitEXT 25 25 52 Branch 134 134: Label 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 126 126 12 12 Return FunctionEnd