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