| spv.bufferhandle18.frag |
| // Module Version 10000 |
| // Generated by (magic number): 80007 |
| // 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 |