1 hlsl.matrixindex.frag 2 Shader version: 500 3 gl_FragCoord origin is upper left 4 0:? Sequence 5 0:10 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color}) 6 0:10 Function Parameters: 7 0:? Sequence 8 0:22 Sequence 9 0:22 move second child to first child ( temp float) 10 0:22 'e1_00' ( temp float) 11 0:22 Constant: 12 0:22 10.000000 13 0:23 Sequence 14 0:23 move second child to first child ( temp float) 15 0:23 'e1_01' ( temp float) 16 0:23 Constant: 17 0:23 11.000000 18 0:24 Sequence 19 0:24 move second child to first child ( temp float) 20 0:24 'e1_10' ( temp float) 21 0:24 Constant: 22 0:24 12.000000 23 0:25 Sequence 24 0:25 move second child to first child ( temp float) 25 0:25 'e1_11' ( temp float) 26 0:25 Constant: 27 0:25 13.000000 28 0:26 Sequence 29 0:26 move second child to first child ( temp float) 30 0:26 'e1_20' ( temp float) 31 0:26 Constant: 32 0:26 14.000000 33 0:27 Sequence 34 0:27 move second child to first child ( temp float) 35 0:27 'e1_21' ( temp float) 36 0:27 Constant: 37 0:27 15.000000 38 0:29 Sequence 39 0:29 move second child to first child ( temp float) 40 0:29 'e2_00' ( temp float) 41 0:29 Constant: 42 0:29 20.000000 43 0:30 Sequence 44 0:30 move second child to first child ( temp float) 45 0:30 'e2_01' ( temp float) 46 0:30 Constant: 47 0:30 21.000000 48 0:31 Sequence 49 0:31 move second child to first child ( temp float) 50 0:31 'e2_10' ( temp float) 51 0:31 Constant: 52 0:31 22.000000 53 0:32 Sequence 54 0:32 move second child to first child ( temp float) 55 0:32 'e2_11' ( temp float) 56 0:32 Constant: 57 0:32 23.000000 58 0:33 Sequence 59 0:33 move second child to first child ( temp float) 60 0:33 'e2_20' ( temp float) 61 0:33 Constant: 62 0:33 24.000000 63 0:34 Sequence 64 0:34 move second child to first child ( temp float) 65 0:34 'e2_21' ( temp float) 66 0:34 Constant: 67 0:34 25.000000 68 0:39 Sequence 69 0:39 move second child to first child ( temp 2-component vector of float) 70 0:39 'r0a' ( temp 2-component vector of float) 71 0:39 Constant: 72 0:39 10.000000 73 0:39 11.000000 74 0:40 Sequence 75 0:40 move second child to first child ( temp 2-component vector of float) 76 0:40 'r1a' ( temp 2-component vector of float) 77 0:40 Constant: 78 0:40 12.000000 79 0:40 13.000000 80 0:41 Sequence 81 0:41 move second child to first child ( temp 2-component vector of float) 82 0:41 'r2a' ( temp 2-component vector of float) 83 0:41 Constant: 84 0:41 14.000000 85 0:41 15.000000 86 0:43 Sequence 87 0:43 move second child to first child ( temp 2-component vector of float) 88 0:43 'r0b' ( temp 2-component vector of float) 89 0:43 indirect index ( temp 2-component vector of float) 90 0:43 Constant: 91 0:43 20.000000 92 0:43 21.000000 93 0:43 22.000000 94 0:43 23.000000 95 0:43 24.000000 96 0:43 25.000000 97 0:43 idx: direct index for structure ( uniform int) 98 0:43 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 99 0:43 Constant: 100 0:43 0 (const uint) 101 0:44 Sequence 102 0:44 move second child to first child ( temp 2-component vector of float) 103 0:44 'r0c' ( temp 2-component vector of float) 104 0:44 indirect index ( temp 2-component vector of float) 105 0:44 um: direct index for structure ( uniform 3X2 matrix of float) 106 0:44 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 107 0:44 Constant: 108 0:44 1 (const uint) 109 0:44 idx: direct index for structure ( uniform int) 110 0:44 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 111 0:44 Constant: 112 0:44 0 (const uint) 113 0:47 move second child to first child ( temp 4-component vector of float) 114 0:47 Color: direct index for structure ( temp 4-component vector of float) 115 0:47 'psout' ( temp structure{ temp 4-component vector of float Color}) 116 0:47 Constant: 117 0:47 0 (const int) 118 0:47 Construct vec4 ( temp 4-component vector of float) 119 0:47 'e2_11' ( temp float) 120 0:48 Branch: Return with expression 121 0:48 'psout' ( temp structure{ temp 4-component vector of float Color}) 122 0:10 Function Definition: main( ( temp void) 123 0:10 Function Parameters: 124 0:? Sequence 125 0:10 Sequence 126 0:10 move second child to first child ( temp 4-component vector of float) 127 0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float) 128 0:10 Color: direct index for structure ( temp 4-component vector of float) 129 0:10 Function Call: @main( ( temp structure{ temp 4-component vector of float Color}) 130 0:10 Constant: 131 0:10 0 (const int) 132 0:? Linker Objects 133 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 134 0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float) 135 136 137 Linked fragment stage: 138 139 140 Shader version: 500 141 gl_FragCoord origin is upper left 142 0:? Sequence 143 0:10 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color}) 144 0:10 Function Parameters: 145 0:? Sequence 146 0:22 Sequence 147 0:22 move second child to first child ( temp float) 148 0:22 'e1_00' ( temp float) 149 0:22 Constant: 150 0:22 10.000000 151 0:23 Sequence 152 0:23 move second child to first child ( temp float) 153 0:23 'e1_01' ( temp float) 154 0:23 Constant: 155 0:23 11.000000 156 0:24 Sequence 157 0:24 move second child to first child ( temp float) 158 0:24 'e1_10' ( temp float) 159 0:24 Constant: 160 0:24 12.000000 161 0:25 Sequence 162 0:25 move second child to first child ( temp float) 163 0:25 'e1_11' ( temp float) 164 0:25 Constant: 165 0:25 13.000000 166 0:26 Sequence 167 0:26 move second child to first child ( temp float) 168 0:26 'e1_20' ( temp float) 169 0:26 Constant: 170 0:26 14.000000 171 0:27 Sequence 172 0:27 move second child to first child ( temp float) 173 0:27 'e1_21' ( temp float) 174 0:27 Constant: 175 0:27 15.000000 176 0:29 Sequence 177 0:29 move second child to first child ( temp float) 178 0:29 'e2_00' ( temp float) 179 0:29 Constant: 180 0:29 20.000000 181 0:30 Sequence 182 0:30 move second child to first child ( temp float) 183 0:30 'e2_01' ( temp float) 184 0:30 Constant: 185 0:30 21.000000 186 0:31 Sequence 187 0:31 move second child to first child ( temp float) 188 0:31 'e2_10' ( temp float) 189 0:31 Constant: 190 0:31 22.000000 191 0:32 Sequence 192 0:32 move second child to first child ( temp float) 193 0:32 'e2_11' ( temp float) 194 0:32 Constant: 195 0:32 23.000000 196 0:33 Sequence 197 0:33 move second child to first child ( temp float) 198 0:33 'e2_20' ( temp float) 199 0:33 Constant: 200 0:33 24.000000 201 0:34 Sequence 202 0:34 move second child to first child ( temp float) 203 0:34 'e2_21' ( temp float) 204 0:34 Constant: 205 0:34 25.000000 206 0:39 Sequence 207 0:39 move second child to first child ( temp 2-component vector of float) 208 0:39 'r0a' ( temp 2-component vector of float) 209 0:39 Constant: 210 0:39 10.000000 211 0:39 11.000000 212 0:40 Sequence 213 0:40 move second child to first child ( temp 2-component vector of float) 214 0:40 'r1a' ( temp 2-component vector of float) 215 0:40 Constant: 216 0:40 12.000000 217 0:40 13.000000 218 0:41 Sequence 219 0:41 move second child to first child ( temp 2-component vector of float) 220 0:41 'r2a' ( temp 2-component vector of float) 221 0:41 Constant: 222 0:41 14.000000 223 0:41 15.000000 224 0:43 Sequence 225 0:43 move second child to first child ( temp 2-component vector of float) 226 0:43 'r0b' ( temp 2-component vector of float) 227 0:43 indirect index ( temp 2-component vector of float) 228 0:43 Constant: 229 0:43 20.000000 230 0:43 21.000000 231 0:43 22.000000 232 0:43 23.000000 233 0:43 24.000000 234 0:43 25.000000 235 0:43 idx: direct index for structure ( uniform int) 236 0:43 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 237 0:43 Constant: 238 0:43 0 (const uint) 239 0:44 Sequence 240 0:44 move second child to first child ( temp 2-component vector of float) 241 0:44 'r0c' ( temp 2-component vector of float) 242 0:44 indirect index ( temp 2-component vector of float) 243 0:44 um: direct index for structure ( uniform 3X2 matrix of float) 244 0:44 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 245 0:44 Constant: 246 0:44 1 (const uint) 247 0:44 idx: direct index for structure ( uniform int) 248 0:44 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 249 0:44 Constant: 250 0:44 0 (const uint) 251 0:47 move second child to first child ( temp 4-component vector of float) 252 0:47 Color: direct index for structure ( temp 4-component vector of float) 253 0:47 'psout' ( temp structure{ temp 4-component vector of float Color}) 254 0:47 Constant: 255 0:47 0 (const int) 256 0:47 Construct vec4 ( temp 4-component vector of float) 257 0:47 'e2_11' ( temp float) 258 0:48 Branch: Return with expression 259 0:48 'psout' ( temp structure{ temp 4-component vector of float Color}) 260 0:10 Function Definition: main( ( temp void) 261 0:10 Function Parameters: 262 0:? Sequence 263 0:10 Sequence 264 0:10 move second child to first child ( temp 4-component vector of float) 265 0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float) 266 0:10 Color: direct index for structure ( temp 4-component vector of float) 267 0:10 Function Call: @main( ( temp structure{ temp 4-component vector of float Color}) 268 0:10 Constant: 269 0:10 0 (const int) 270 0:? Linker Objects 271 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int idx, uniform 3X2 matrix of float um}) 272 0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float) 273 274 // Module Version 10000 275 // Generated by (magic number): 80007 276 // Id's are bound by 83 277 278 Capability Shader 279 1: ExtInstImport "GLSL.std.450" 280 MemoryModel Logical GLSL450 281 EntryPoint Fragment 4 "main" 80 282 ExecutionMode 4 OriginUpperLeft 283 Source HLSL 500 284 Name 4 "main" 285 Name 8 "PS_OUTPUT" 286 MemberName 8(PS_OUTPUT) 0 "Color" 287 Name 10 "@main(" 288 Name 13 "e1_00" 289 Name 15 "e1_01" 290 Name 17 "e1_10" 291 Name 19 "e1_11" 292 Name 21 "e1_20" 293 Name 23 "e1_21" 294 Name 25 "e2_00" 295 Name 27 "e2_01" 296 Name 29 "e2_10" 297 Name 31 "e2_11" 298 Name 33 "e2_20" 299 Name 35 "e2_21" 300 Name 39 "r0a" 301 Name 41 "r1a" 302 Name 43 "r2a" 303 Name 45 "r0b" 304 Name 52 "$Global" 305 MemberName 52($Global) 0 "idx" 306 MemberName 52($Global) 1 "um" 307 Name 54 "" 308 Name 60 "indexable" 309 Name 63 "r0c" 310 Name 71 "psout" 311 Name 80 "@entryPointOutput.Color" 312 MemberDecorate 52($Global) 0 Offset 0 313 MemberDecorate 52($Global) 1 RowMajor 314 MemberDecorate 52($Global) 1 Offset 16 315 MemberDecorate 52($Global) 1 MatrixStride 16 316 Decorate 52($Global) Block 317 Decorate 54 DescriptorSet 0 318 Decorate 54 Binding 0 319 Decorate 80(@entryPointOutput.Color) Location 0 320 2: TypeVoid 321 3: TypeFunction 2 322 6: TypeFloat 32 323 7: TypeVector 6(float) 4 324 8(PS_OUTPUT): TypeStruct 7(fvec4) 325 9: TypeFunction 8(PS_OUTPUT) 326 12: TypePointer Function 6(float) 327 14: 6(float) Constant 1092616192 328 16: 6(float) Constant 1093664768 329 18: 6(float) Constant 1094713344 330 20: 6(float) Constant 1095761920 331 22: 6(float) Constant 1096810496 332 24: 6(float) Constant 1097859072 333 26: 6(float) Constant 1101004800 334 28: 6(float) Constant 1101529088 335 30: 6(float) Constant 1102053376 336 32: 6(float) Constant 1102577664 337 34: 6(float) Constant 1103101952 338 36: 6(float) Constant 1103626240 339 37: TypeVector 6(float) 2 340 38: TypePointer Function 37(fvec2) 341 40: 37(fvec2) ConstantComposite 14 16 342 42: 37(fvec2) ConstantComposite 18 20 343 44: 37(fvec2) ConstantComposite 22 24 344 46: TypeMatrix 37(fvec2) 3 345 47: 37(fvec2) ConstantComposite 26 28 346 48: 37(fvec2) ConstantComposite 30 32 347 49: 37(fvec2) ConstantComposite 34 36 348 50: 46 ConstantComposite 47 48 49 349 51: TypeInt 32 1 350 52($Global): TypeStruct 51(int) 46 351 53: TypePointer Uniform 52($Global) 352 54: 53(ptr) Variable Uniform 353 55: 51(int) Constant 0 354 56: TypePointer Uniform 51(int) 355 59: TypePointer Function 46 356 64: 51(int) Constant 1 357 67: TypePointer Uniform 37(fvec2) 358 70: TypePointer Function 8(PS_OUTPUT) 359 74: TypePointer Function 7(fvec4) 360 79: TypePointer Output 7(fvec4) 361 80(@entryPointOutput.Color): 79(ptr) Variable Output 362 4(main): 2 Function None 3 363 5: Label 364 81:8(PS_OUTPUT) FunctionCall 10(@main() 365 82: 7(fvec4) CompositeExtract 81 0 366 Store 80(@entryPointOutput.Color) 82 367 Return 368 FunctionEnd 369 10(@main():8(PS_OUTPUT) Function None 9 370 11: Label 371 13(e1_00): 12(ptr) Variable Function 372 15(e1_01): 12(ptr) Variable Function 373 17(e1_10): 12(ptr) Variable Function 374 19(e1_11): 12(ptr) Variable Function 375 21(e1_20): 12(ptr) Variable Function 376 23(e1_21): 12(ptr) Variable Function 377 25(e2_00): 12(ptr) Variable Function 378 27(e2_01): 12(ptr) Variable Function 379 29(e2_10): 12(ptr) Variable Function 380 31(e2_11): 12(ptr) Variable Function 381 33(e2_20): 12(ptr) Variable Function 382 35(e2_21): 12(ptr) Variable Function 383 39(r0a): 38(ptr) Variable Function 384 41(r1a): 38(ptr) Variable Function 385 43(r2a): 38(ptr) Variable Function 386 45(r0b): 38(ptr) Variable Function 387 60(indexable): 59(ptr) Variable Function 388 63(r0c): 38(ptr) Variable Function 389 71(psout): 70(ptr) Variable Function 390 Store 13(e1_00) 14 391 Store 15(e1_01) 16 392 Store 17(e1_10) 18 393 Store 19(e1_11) 20 394 Store 21(e1_20) 22 395 Store 23(e1_21) 24 396 Store 25(e2_00) 26 397 Store 27(e2_01) 28 398 Store 29(e2_10) 30 399 Store 31(e2_11) 32 400 Store 33(e2_20) 34 401 Store 35(e2_21) 36 402 Store 39(r0a) 40 403 Store 41(r1a) 42 404 Store 43(r2a) 44 405 57: 56(ptr) AccessChain 54 55 406 58: 51(int) Load 57 407 Store 60(indexable) 50 408 61: 38(ptr) AccessChain 60(indexable) 58 409 62: 37(fvec2) Load 61 410 Store 45(r0b) 62 411 65: 56(ptr) AccessChain 54 55 412 66: 51(int) Load 65 413 68: 67(ptr) AccessChain 54 64 66 414 69: 37(fvec2) Load 68 415 Store 63(r0c) 69 416 72: 6(float) Load 31(e2_11) 417 73: 7(fvec4) CompositeConstruct 72 72 72 72 418 75: 74(ptr) AccessChain 71(psout) 55 419 Store 75 73 420 76:8(PS_OUTPUT) Load 71(psout) 421 ReturnValue 76 422 FunctionEnd 423