hlsl.self_cast.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:5  Function Definition: @main( ( temp void)
0:5    Function Parameters: 
0:?     Sequence
0:?       Sequence
0:8        Sequence
0:8          move second child to first child ( temp structure{})
0:8            'b' ( temp structure{})
0:8            'a' ( temp structure{})
0:?       Sequence
0:13        Sequence
0:13          move second child to first child ( temp structure{ temp float f})
0:13            'b' ( temp structure{ temp float f})
0:13            'a' ( temp structure{ temp float f})
0:?       Sequence
0:18        Sequence
0:18          move second child to first child ( temp 2-element array of structure{})
0:18            'b' ( temp 2-element array of structure{})
0:18            'a' ( temp 2-element array of structure{})
0:?       Sequence
0:23        Sequence
0:23          move second child to first child ( temp 2-element array of structure{ temp float f})
0:23            'b' ( temp 2-element array of structure{ temp float f})
0:23            'a' ( temp 2-element array of structure{ temp float f})
0:5  Function Definition: main( ( temp void)
0:5    Function Parameters: 
0:?     Sequence
0:5      Function Call: @main( ( temp void)
0:?   Linker Objects


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:5  Function Definition: @main( ( temp void)
0:5    Function Parameters: 
0:?     Sequence
0:?       Sequence
0:8        Sequence
0:8          move second child to first child ( temp structure{})
0:8            'b' ( temp structure{})
0:8            'a' ( temp structure{})
0:?       Sequence
0:13        Sequence
0:13          move second child to first child ( temp structure{ temp float f})
0:13            'b' ( temp structure{ temp float f})
0:13            'a' ( temp structure{ temp float f})
0:?       Sequence
0:18        Sequence
0:18          move second child to first child ( temp 2-element array of structure{})
0:18            'b' ( temp 2-element array of structure{})
0:18            'a' ( temp 2-element array of structure{})
0:?       Sequence
0:23        Sequence
0:23          move second child to first child ( temp 2-element array of structure{ temp float f})
0:23            'b' ( temp 2-element array of structure{ temp float f})
0:23            'a' ( temp 2-element array of structure{ temp float f})
0:5  Function Definition: main( ( temp void)
0:5    Function Parameters: 
0:?     Sequence
0:5      Function Call: @main( ( temp void)
0:?   Linker Objects

// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 32

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 6  "@main("
                              Name 8  "Test0"
                              Name 10  "b"
                              Name 11  "a"
                              Name 14  "Test1"
                              MemberName 14(Test1) 0  "f"
                              Name 16  "b"
                              Name 17  "a"
                              Name 23  "b"
                              Name 24  "a"
                              Name 28  "b"
                              Name 29  "a"
               2:             TypeVoid
               3:             TypeFunction 2
        8(Test0):             TypeStruct
               9:             TypePointer Function 8(Test0)
              13:             TypeFloat 32
       14(Test1):             TypeStruct 13(float)
              15:             TypePointer Function 14(Test1)
              19:             TypeInt 32 0
              20:     19(int) Constant 2
              21:             TypeArray 8(Test0) 20
              22:             TypePointer Function 21
              26:             TypeArray 14(Test1) 20
              27:             TypePointer Function 26
         4(main):           2 Function None 3
               5:             Label
              31:           2 FunctionCall 6(@main()
                              Return
                              FunctionEnd
       6(@main():           2 Function None 3
               7:             Label
           10(b):      9(ptr) Variable Function
           11(a):      9(ptr) Variable Function
           16(b):     15(ptr) Variable Function
           17(a):     15(ptr) Variable Function
           23(b):     22(ptr) Variable Function
           24(a):     22(ptr) Variable Function
           28(b):     27(ptr) Variable Function
           29(a):     27(ptr) Variable Function
              12:    8(Test0) Load 11(a)
                              Store 10(b) 12
              18:   14(Test1) Load 17(a)
                              Store 16(b) 18
              25:          21 Load 24(a)
                              Store 23(b) 25
              30:          26 Load 29(a)
                              Store 28(b) 30
                              Return
                              FunctionEnd