1 hlsl.struct.split.call.vert 2 Shader version: 500 3 0:? Sequence 4 0:17 Function Definition: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 5 0:17 Function Parameters: 6 0:17 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 7 0:17 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 8 0:? Sequence 9 0:18 add ( temp 4-component vector of float) 10 0:18 Pos_in: direct index for structure ( temp 4-component vector of float) 11 0:18 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 12 0:18 Constant: 13 0:18 1 (const int) 14 0:18 Pos_out: direct index for structure ( temp 4-component vector of float) 15 0:18 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 16 0:18 Constant: 17 0:18 1 (const int) 18 0:22 Function Definition: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 19 0:22 Function Parameters: 20 0:22 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 21 0:? Sequence 22 0:25 move second child to first child ( temp int) 23 0:25 x0_out: direct index for structure ( temp int) 24 0:25 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 25 0:25 Constant: 26 0:25 0 (const int) 27 0:25 x0_in: direct index for structure ( temp int) 28 0:25 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 29 0:25 Constant: 30 0:25 0 (const int) 31 0:26 move second child to first child ( temp 4-component vector of float) 32 0:26 Pos_out: direct index for structure ( temp 4-component vector of float) 33 0:26 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 34 0:26 Constant: 35 0:26 1 (const int) 36 0:26 Pos_in: direct index for structure ( temp 4-component vector of float) 37 0:26 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 38 0:26 Constant: 39 0:26 1 (const int) 40 0:27 move second child to first child ( temp int) 41 0:27 x1_out: direct index for structure ( temp int) 42 0:27 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 43 0:27 Constant: 44 0:27 2 (const int) 45 0:27 x1_in: direct index for structure ( temp int) 46 0:27 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 47 0:27 Constant: 48 0:27 2 (const int) 49 0:29 Function Call: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 50 0:29 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 51 0:29 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 52 0:31 Branch: Return with expression 53 0:31 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 54 0:22 Function Definition: main( ( temp void) 55 0:22 Function Parameters: 56 0:? Sequence 57 0:22 Sequence 58 0:22 move second child to first child ( temp int) 59 0:22 x0_in: direct index for structure ( temp int) 60 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 61 0:22 Constant: 62 0:22 0 (const int) 63 0:? 'vsin.x0_in' (layout( location=0) in int) 64 0:22 move second child to first child ( temp 4-component vector of float) 65 0:22 Pos_in: direct index for structure ( temp 4-component vector of float) 66 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 67 0:22 Constant: 68 0:22 1 (const int) 69 0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float) 70 0:22 move second child to first child ( temp int) 71 0:22 x1_in: direct index for structure ( temp int) 72 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 73 0:22 Constant: 74 0:22 2 (const int) 75 0:? 'vsin.x1_in' (layout( location=2) in int) 76 0:22 Sequence 77 0:22 move second child to first child ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 78 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 79 0:22 Function Call: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 80 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 81 0:22 move second child to first child ( temp int) 82 0:? '@entryPointOutput.x0_out' (layout( location=0) out int) 83 0:22 x0_out: direct index for structure ( temp int) 84 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 85 0:22 Constant: 86 0:22 0 (const int) 87 0:22 move second child to first child ( temp 4-component vector of float) 88 0:? '@entryPointOutput.Pos_out' ( out 4-component vector of float Position) 89 0:22 Pos_out: direct index for structure ( temp 4-component vector of float) 90 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 91 0:22 Constant: 92 0:22 1 (const int) 93 0:22 move second child to first child ( temp int) 94 0:? '@entryPointOutput.x1_out' (layout( location=1) out int) 95 0:22 x1_out: direct index for structure ( temp int) 96 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 97 0:22 Constant: 98 0:22 2 (const int) 99 0:? Linker Objects 100 0:? '@entryPointOutput.Pos_out' ( out 4-component vector of float Position) 101 0:? '@entryPointOutput.x0_out' (layout( location=0) out int) 102 0:? '@entryPointOutput.x1_out' (layout( location=1) out int) 103 0:? 'vsin.x0_in' (layout( location=0) in int) 104 0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float) 105 0:? 'vsin.x1_in' (layout( location=2) in int) 106 107 108 Linked vertex stage: 109 110 111 Shader version: 500 112 0:? Sequence 113 0:17 Function Definition: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 114 0:17 Function Parameters: 115 0:17 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 116 0:17 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 117 0:? Sequence 118 0:18 add ( temp 4-component vector of float) 119 0:18 Pos_in: direct index for structure ( temp 4-component vector of float) 120 0:18 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 121 0:18 Constant: 122 0:18 1 (const int) 123 0:18 Pos_out: direct index for structure ( temp 4-component vector of float) 124 0:18 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 125 0:18 Constant: 126 0:18 1 (const int) 127 0:22 Function Definition: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 128 0:22 Function Parameters: 129 0:22 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 130 0:? Sequence 131 0:25 move second child to first child ( temp int) 132 0:25 x0_out: direct index for structure ( temp int) 133 0:25 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 134 0:25 Constant: 135 0:25 0 (const int) 136 0:25 x0_in: direct index for structure ( temp int) 137 0:25 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 138 0:25 Constant: 139 0:25 0 (const int) 140 0:26 move second child to first child ( temp 4-component vector of float) 141 0:26 Pos_out: direct index for structure ( temp 4-component vector of float) 142 0:26 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 143 0:26 Constant: 144 0:26 1 (const int) 145 0:26 Pos_in: direct index for structure ( temp 4-component vector of float) 146 0:26 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 147 0:26 Constant: 148 0:26 1 (const int) 149 0:27 move second child to first child ( temp int) 150 0:27 x1_out: direct index for structure ( temp int) 151 0:27 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 152 0:27 Constant: 153 0:27 2 (const int) 154 0:27 x1_in: direct index for structure ( temp int) 155 0:27 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 156 0:27 Constant: 157 0:27 2 (const int) 158 0:29 Function Call: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 159 0:29 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 160 0:29 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 161 0:31 Branch: Return with expression 162 0:31 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 163 0:22 Function Definition: main( ( temp void) 164 0:22 Function Parameters: 165 0:? Sequence 166 0:22 Sequence 167 0:22 move second child to first child ( temp int) 168 0:22 x0_in: direct index for structure ( temp int) 169 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 170 0:22 Constant: 171 0:22 0 (const int) 172 0:? 'vsin.x0_in' (layout( location=0) in int) 173 0:22 move second child to first child ( temp 4-component vector of float) 174 0:22 Pos_in: direct index for structure ( temp 4-component vector of float) 175 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 176 0:22 Constant: 177 0:22 1 (const int) 178 0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float) 179 0:22 move second child to first child ( temp int) 180 0:22 x1_in: direct index for structure ( temp int) 181 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 182 0:22 Constant: 183 0:22 2 (const int) 184 0:? 'vsin.x1_in' (layout( location=2) in int) 185 0:22 Sequence 186 0:22 move second child to first child ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 187 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 188 0:22 Function Call: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 189 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 190 0:22 move second child to first child ( temp int) 191 0:? '@entryPointOutput.x0_out' (layout( location=0) out int) 192 0:22 x0_out: direct index for structure ( temp int) 193 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 194 0:22 Constant: 195 0:22 0 (const int) 196 0:22 move second child to first child ( temp 4-component vector of float) 197 0:? '@entryPointOutput.Pos_out' ( out 4-component vector of float Position) 198 0:22 Pos_out: direct index for structure ( temp 4-component vector of float) 199 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 200 0:22 Constant: 201 0:22 1 (const int) 202 0:22 move second child to first child ( temp int) 203 0:? '@entryPointOutput.x1_out' (layout( location=1) out int) 204 0:22 x1_out: direct index for structure ( temp int) 205 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 206 0:22 Constant: 207 0:22 2 (const int) 208 0:? Linker Objects 209 0:? '@entryPointOutput.Pos_out' ( out 4-component vector of float Position) 210 0:? '@entryPointOutput.x0_out' (layout( location=0) out int) 211 0:? '@entryPointOutput.x1_out' (layout( location=1) out int) 212 0:? 'vsin.x0_in' (layout( location=0) in int) 213 0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float) 214 0:? 'vsin.x1_in' (layout( location=2) in int) 215 216 // Module Version 10000 217 // Generated by (magic number): 80007 218 // Id's are bound by 77 219 220 Capability Shader 221 1: ExtInstImport "GLSL.std.450" 222 MemoryModel Logical GLSL450 223 EntryPoint Vertex 4 "main" 52 56 59 67 71 74 224 Source HLSL 500 225 Name 4 "main" 226 Name 9 "VS_INPUT" 227 MemberName 9(VS_INPUT) 0 "x0_in" 228 MemberName 9(VS_INPUT) 1 "Pos_in" 229 MemberName 9(VS_INPUT) 2 "x1_in" 230 Name 11 "VS_OUTPUT" 231 MemberName 11(VS_OUTPUT) 0 "x0_out" 232 MemberName 11(VS_OUTPUT) 1 "Pos_out" 233 MemberName 11(VS_OUTPUT) 2 "x1_out" 234 Name 16 "Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;" 235 Name 14 "fn1_in" 236 Name 15 "fn1_out" 237 Name 20 "@main(struct-VS_INPUT-i1-vf4-i11;" 238 Name 19 "vsin" 239 Name 29 "vsout" 240 Name 42 "param" 241 Name 44 "param" 242 Name 50 "vsin" 243 Name 52 "vsin.x0_in" 244 Name 56 "vsin.Pos_in" 245 Name 59 "vsin.x1_in" 246 Name 62 "flattenTemp" 247 Name 63 "param" 248 Name 67 "@entryPointOutput.x0_out" 249 Name 71 "@entryPointOutput.Pos_out" 250 Name 74 "@entryPointOutput.x1_out" 251 Decorate 52(vsin.x0_in) Location 0 252 Decorate 56(vsin.Pos_in) Location 1 253 Decorate 59(vsin.x1_in) Location 2 254 Decorate 67(@entryPointOutput.x0_out) Location 0 255 Decorate 71(@entryPointOutput.Pos_out) BuiltIn Position 256 Decorate 74(@entryPointOutput.x1_out) Location 1 257 2: TypeVoid 258 3: TypeFunction 2 259 6: TypeInt 32 1 260 7: TypeFloat 32 261 8: TypeVector 7(float) 4 262 9(VS_INPUT): TypeStruct 6(int) 8(fvec4) 6(int) 263 10: TypePointer Function 9(VS_INPUT) 264 11(VS_OUTPUT): TypeStruct 6(int) 8(fvec4) 6(int) 265 12: TypePointer Function 11(VS_OUTPUT) 266 13: TypeFunction 2 10(ptr) 12(ptr) 267 18: TypeFunction 11(VS_OUTPUT) 10(ptr) 268 22: 6(int) Constant 1 269 23: TypePointer Function 8(fvec4) 270 30: 6(int) Constant 0 271 31: TypePointer Function 6(int) 272 38: 6(int) Constant 2 273 51: TypePointer Input 6(int) 274 52(vsin.x0_in): 51(ptr) Variable Input 275 55: TypePointer Input 8(fvec4) 276 56(vsin.Pos_in): 55(ptr) Variable Input 277 59(vsin.x1_in): 51(ptr) Variable Input 278 66: TypePointer Output 6(int) 279 67(@entryPointOutput.x0_out): 66(ptr) Variable Output 280 70: TypePointer Output 8(fvec4) 281 71(@entryPointOutput.Pos_out): 70(ptr) Variable Output 282 74(@entryPointOutput.x1_out): 66(ptr) Variable Output 283 4(main): 2 Function None 3 284 5: Label 285 50(vsin): 10(ptr) Variable Function 286 62(flattenTemp): 12(ptr) Variable Function 287 63(param): 10(ptr) Variable Function 288 53: 6(int) Load 52(vsin.x0_in) 289 54: 31(ptr) AccessChain 50(vsin) 30 290 Store 54 53 291 57: 8(fvec4) Load 56(vsin.Pos_in) 292 58: 23(ptr) AccessChain 50(vsin) 22 293 Store 58 57 294 60: 6(int) Load 59(vsin.x1_in) 295 61: 31(ptr) AccessChain 50(vsin) 38 296 Store 61 60 297 64: 9(VS_INPUT) Load 50(vsin) 298 Store 63(param) 64 299 65:11(VS_OUTPUT) FunctionCall 20(@main(struct-VS_INPUT-i1-vf4-i11;) 63(param) 300 Store 62(flattenTemp) 65 301 68: 31(ptr) AccessChain 62(flattenTemp) 30 302 69: 6(int) Load 68 303 Store 67(@entryPointOutput.x0_out) 69 304 72: 23(ptr) AccessChain 62(flattenTemp) 22 305 73: 8(fvec4) Load 72 306 Store 71(@entryPointOutput.Pos_out) 73 307 75: 31(ptr) AccessChain 62(flattenTemp) 38 308 76: 6(int) Load 75 309 Store 74(@entryPointOutput.x1_out) 76 310 Return 311 FunctionEnd 312 16(Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;): 2 Function None 13 313 14(fn1_in): 10(ptr) FunctionParameter 314 15(fn1_out): 12(ptr) FunctionParameter 315 17: Label 316 24: 23(ptr) AccessChain 14(fn1_in) 22 317 25: 8(fvec4) Load 24 318 26: 23(ptr) AccessChain 15(fn1_out) 22 319 27: 8(fvec4) Load 26 320 28: 8(fvec4) FAdd 25 27 321 Return 322 FunctionEnd 323 20(@main(struct-VS_INPUT-i1-vf4-i11;):11(VS_OUTPUT) Function None 18 324 19(vsin): 10(ptr) FunctionParameter 325 21: Label 326 29(vsout): 12(ptr) Variable Function 327 42(param): 10(ptr) Variable Function 328 44(param): 12(ptr) Variable Function 329 32: 31(ptr) AccessChain 19(vsin) 30 330 33: 6(int) Load 32 331 34: 31(ptr) AccessChain 29(vsout) 30 332 Store 34 33 333 35: 23(ptr) AccessChain 19(vsin) 22 334 36: 8(fvec4) Load 35 335 37: 23(ptr) AccessChain 29(vsout) 22 336 Store 37 36 337 39: 31(ptr) AccessChain 19(vsin) 38 338 40: 6(int) Load 39 339 41: 31(ptr) AccessChain 29(vsout) 38 340 Store 41 40 341 43: 9(VS_INPUT) Load 19(vsin) 342 Store 42(param) 43 343 45:11(VS_OUTPUT) Load 29(vsout) 344 Store 44(param) 45 345 46: 2 FunctionCall 16(Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;) 42(param) 44(param) 346 47:11(VS_OUTPUT) Load 29(vsout) 347 ReturnValue 47 348 FunctionEnd 349