spv.bufferhandle18.frag // Module Version 10000 // Generated by (magic number): 8000a // Id's are bound by 196 Capability Shader Capability Int64 Capability PhysicalStorageBufferAddressesEXT Extension "SPV_EXT_physical_storage_buffer" 1: ExtInstImport "GLSL.std.450" MemoryModel PhysicalStorageBuffer64EXT GLSL450 EntryPoint Fragment 4 "main" ExecutionMode 4 OriginUpperLeft Source GLSL 450 SourceExtension "GL_EXT_buffer_reference" SourceExtension "GL_EXT_buffer_reference2" SourceExtension "GL_EXT_scalar_block_layout" SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64" Name 4 "main" Name 9 "T1" MemberName 9(T1) 0 "x" MemberName 9(T1) 1 "y" Name 11 "a" Name 15 "b" Name 18 "c" Name 24 "d" Name 26 "e" Name 29 "f" Name 59 "arr" Name 71 "i" Name 130 "j" Name 153 "k" Name 160 "x" Name 171 "y" Name 178 "T2" MemberName 178(T2) 0 "x" Name 180 "m" Name 190 "x" Name 195 "buf" MemberDecorate 9(T1) 0 Offset 0 MemberDecorate 9(T1) 1 Offset 4 Decorate 9(T1) Block Decorate 11(a) DecorationAliasedPointerEXT Decorate 15(b) DecorationAliasedPointerEXT Decorate 18(c) DecorationAliasedPointerEXT Decorate 24(d) DecorationAliasedPointerEXT Decorate 26(e) DecorationAliasedPointerEXT Decorate 29(f) DecorationAliasedPointerEXT Decorate 59(arr) DecorationAliasedPointerEXT Decorate 130(j) DecorationAliasedPointerEXT Decorate 153(k) DecorationAliasedPointerEXT MemberDecorate 178(T2) 0 Offset 0 Decorate 178(T2) Block Decorate 180(m) DecorationAliasedPointerEXT 2: TypeVoid 3: TypeFunction 2 TypeForwardPointer 6 PhysicalStorageBufferEXT 7: TypeInt 32 1 8: TypeInt 32 0 9(T1): TypeStruct 7(int) 8(int) 6: TypePointer PhysicalStorageBufferEXT 9(T1) 10: TypePointer Function 6(ptr) 12: TypeInt 64 0 13: 12(int64_t) Constant 4 0 16: 12(int64_t) Constant 5 0 19: TypeBool 20: 19(bool) ConstantTrue 27: 12(int64_t) Constant 6 0 31: 7(int) Constant 1 32: TypePointer PhysicalStorageBufferEXT 8(int) 35: 8(int) Constant 0 37: 12(int64_t) Constant 8 0 39: 12(int64_t) Constant 9 0 44: 12(int64_t) Constant 24 0 47: 7(int) Constant 0 48: TypePointer PhysicalStorageBufferEXT 7(int) 52: 12(int64_t) Constant 40 0 56: 8(int) Constant 2 57: TypeArray 6(ptr) 56 58: TypePointer Function 57 66: 12(int64_t) Constant 56 0 70: TypePointer Function 7(int) 77: TypeInt 64 1 137: 12(int64_t) Constant 16 0 146: 12(int64_t) Constant 32 0 156: 12(int64_t) Constant 48 0 159: TypePointer Function 77(int64_t) 168: 77(int64_t) Constant 8 0 170: TypePointer Function 12(int64_t) 174: 12(int64_t) Constant 4294967288 4294967295 TypeForwardPointer 177 PhysicalStorageBufferEXT 178(T2): TypeStruct 7(int) 177: TypePointer PhysicalStorageBufferEXT 178(T2) 179: TypePointer Function 177(ptr) 183: 12(int64_t) Constant 64 0 186: 7(int) Constant 3 187: 8(int) Constant 3 188: TypeArray 7(int) 187 189: TypePointer Private 188 190(x): 189(ptr) Variable Private 191: 12(int64_t) Constant 10 0 192: 8(int) Constant 8 193: TypeArray 8(int) 192 194: TypePointer Private 193 195(buf): 194(ptr) Variable Private 4(main): 2 Function None 3 5: Label 11(a): 10(ptr) Variable Function 15(b): 10(ptr) Variable Function 18(c): 10(ptr) Variable Function 24(d): 10(ptr) Variable Function 26(e): 10(ptr) Variable Function 29(f): 10(ptr) Variable Function 59(arr): 58(ptr) Variable Function 71(i): 70(ptr) Variable Function 130(j): 10(ptr) Variable Function 153(k): 10(ptr) Variable Function 160(x): 159(ptr) Variable Function 171(y): 170(ptr) Variable Function 180(m): 179(ptr) Variable Function 14: 6(ptr) Bitcast 13 Store 11(a) 14 17: 6(ptr) Bitcast 16 Store 15(b) 17 21: 6(ptr) Load 11(a) 22: 6(ptr) Load 15(b) 23: 6(ptr) Select 20 21 22 Store 18(c) 23 25: 6(ptr) Load 15(b) Store 24(d) 25 28: 6(ptr) Bitcast 27 Store 26(e) 28 30: 6(ptr) Load 11(a) 33: 32(ptr) AccessChain 30 31 34: 8(int) Load 33 Aligned 4 36: 19(bool) INotEqual 34 35 38: 6(ptr) Bitcast 37 40: 6(ptr) Bitcast 39 41: 6(ptr) Select 36 38 40 Store 29(f) 41 42: 6(ptr) Load 29(f) 43: 12(int64_t) ConvertPtrToU 42 45: 12(int64_t) IAdd 43 44 46: 6(ptr) ConvertUToPtr 45 49: 48(ptr) AccessChain 46 47 Store 49 31 Aligned 8 50: 6(ptr) Load 29(f) 51: 12(int64_t) ConvertPtrToU 50 53: 12(int64_t) IAdd 51 52 54: 6(ptr) ConvertUToPtr 53 55: 48(ptr) AccessChain 54 47 Store 55 31 Aligned 8 60: 6(ptr) Load 11(a) 61: 6(ptr) Load 29(f) 62: 57 CompositeConstruct 60 61 Store 59(arr) 62 63: 10(ptr) AccessChain 59(arr) 31 64: 6(ptr) Load 63 65: 12(int64_t) ConvertPtrToU 64 67: 12(int64_t) IAdd 65 66 68: 6(ptr) ConvertUToPtr 67 69: 48(ptr) AccessChain 68 47 Store 69 31 Aligned 8 72: 7(int) Load 71(i) 73: 10(ptr) AccessChain 59(arr) 72 74: 6(ptr) Load 73 75: 12(int64_t) ConvertPtrToU 74 76: 7(int) Load 71(i) 78: 77(int64_t) SConvert 76 79: 12(int64_t) Bitcast 78 80: 12(int64_t) IMul 79 37 81: 12(int64_t) IAdd 75 80 82: 6(ptr) ConvertUToPtr 81 83: 48(ptr) AccessChain 82 47 Store 83 31 Aligned 8 84: 7(int) Load 71(i) 85: 10(ptr) AccessChain 59(arr) 84 86: 6(ptr) Load 85 87: 12(int64_t) ConvertPtrToU 86 88: 7(int) Load 71(i) 89: 77(int64_t) SConvert 88 90: 12(int64_t) Bitcast 89 91: 12(int64_t) IMul 90 37 92: 12(int64_t) IAdd 87 91 93: 6(ptr) ConvertUToPtr 92 94: 12(int64_t) ConvertPtrToU 93 95: 7(int) Load 71(i) 96: 77(int64_t) SConvert 95 97: 12(int64_t) Bitcast 96 98: 12(int64_t) IMul 97 37 99: 12(int64_t) IAdd 94 98 100: 6(ptr) ConvertUToPtr 99 101: 12(int64_t) ConvertPtrToU 100 102: 7(int) Load 71(i) 103: 77(int64_t) SConvert 102 104: 12(int64_t) Bitcast 103 105: 12(int64_t) IMul 104 37 106: 12(int64_t) IAdd 101 105 107: 6(ptr) ConvertUToPtr 106 108: 12(int64_t) ConvertPtrToU 107 109: 7(int) Load 71(i) 110: 77(int64_t) SConvert 109 111: 12(int64_t) Bitcast 110 112: 12(int64_t) IMul 111 37 113: 12(int64_t) IAdd 108 112 114: 6(ptr) ConvertUToPtr 113 115: 12(int64_t) ConvertPtrToU 114 116: 7(int) Load 71(i) 117: 77(int64_t) SConvert 116 118: 12(int64_t) Bitcast 117 119: 12(int64_t) IMul 118 37 120: 12(int64_t) IAdd 115 119 121: 6(ptr) ConvertUToPtr 120 122: 12(int64_t) ConvertPtrToU 121 123: 7(int) Load 71(i) 124: 77(int64_t) SConvert 123 125: 12(int64_t) Bitcast 124 126: 12(int64_t) IMul 125 37 127: 12(int64_t) IAdd 122 126 128: 6(ptr) ConvertUToPtr 127 129: 48(ptr) AccessChain 128 47 Store 129 31 Aligned 8 131: 6(ptr) Load 130(j) 132: 12(int64_t) ConvertPtrToU 131 133: 12(int64_t) IAdd 132 37 134: 6(ptr) ConvertUToPtr 133 Store 130(j) 134 135: 6(ptr) Load 130(j) 136: 12(int64_t) ConvertPtrToU 135 138: 12(int64_t) ISub 136 137 139: 6(ptr) ConvertUToPtr 138 Store 130(j) 139 140: 6(ptr) Load 130(j) 141: 12(int64_t) ConvertPtrToU 140 142: 12(int64_t) IAdd 141 44 143: 6(ptr) ConvertUToPtr 142 Store 130(j) 143 144: 6(ptr) Load 130(j) 145: 12(int64_t) ConvertPtrToU 144 147: 12(int64_t) ISub 145 146 148: 6(ptr) ConvertUToPtr 147 Store 130(j) 148 149: 6(ptr) Load 130(j) 150: 12(int64_t) ConvertPtrToU 149 151: 12(int64_t) IAdd 52 150 152: 6(ptr) ConvertUToPtr 151 Store 130(j) 152 154: 6(ptr) Load 130(j) 155: 12(int64_t) ConvertPtrToU 154 157: 12(int64_t) IAdd 155 156 158: 6(ptr) ConvertUToPtr 157 Store 153(k) 158 161: 6(ptr) Load 153(k) 162: 12(int64_t) ConvertPtrToU 161 163: 77(int64_t) Bitcast 162 164: 6(ptr) Load 130(j) 165: 12(int64_t) ConvertPtrToU 164 166: 77(int64_t) Bitcast 165 167: 77(int64_t) ISub 163 166 169: 77(int64_t) SDiv 167 168 Store 160(x) 169 Store 171(y) 37 172: 6(ptr) Load 153(k) 173: 12(int64_t) ConvertPtrToU 172 175: 12(int64_t) IAdd 173 174 176: 6(ptr) ConvertUToPtr 175 Store 153(k) 176 181: 177(ptr) Load 180(m) 182: 12(int64_t) ConvertPtrToU 181 184: 12(int64_t) IAdd 182 183 185: 177(ptr) ConvertUToPtr 184 Store 180(m) 185 Return FunctionEnd