1 hlsl.synthesizeInput.frag 2 Shader version: 500 3 gl_FragCoord origin is upper left 4 0:? Sequence 5 0:7 Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float) 6 0:7 Function Parameters: 7 0:7 'input' ( in structure{ temp float interp, temp uint no_interp}) 8 0:? Sequence 9 0:8 Branch: Return with expression 10 0:? Construct vec4 ( temp 4-component vector of float) 11 0:8 Convert uint to float ( temp float) 12 0:8 no_interp: direct index for structure ( temp uint) 13 0:8 'input' ( in structure{ temp float interp, temp uint no_interp}) 14 0:8 Constant: 15 0:8 1 (const int) 16 0:8 interp: direct index for structure ( temp float) 17 0:8 'input' ( in structure{ temp float interp, temp uint no_interp}) 18 0:8 Constant: 19 0:8 0 (const int) 20 0:8 Constant: 21 0:8 0.000000 22 0:8 Constant: 23 0:8 1.000000 24 0:7 Function Definition: main( ( temp void) 25 0:7 Function Parameters: 26 0:? Sequence 27 0:7 Sequence 28 0:7 move second child to first child ( temp float) 29 0:7 interp: direct index for structure ( temp float) 30 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 31 0:7 Constant: 32 0:7 0 (const int) 33 0:? 'input.interp' (layout( location=0) in float) 34 0:7 move second child to first child ( temp uint) 35 0:7 no_interp: direct index for structure ( temp uint) 36 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 37 0:7 Constant: 38 0:7 1 (const int) 39 0:? 'input.no_interp' (layout( location=1) flat in uint) 40 0:7 move second child to first child ( temp 4-component vector of float) 41 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 42 0:7 Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float) 43 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 44 0:? Linker Objects 45 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 46 0:? 'input.interp' (layout( location=0) in float) 47 0:? 'input.no_interp' (layout( location=1) flat in uint) 48 49 50 Linked fragment stage: 51 52 53 Shader version: 500 54 gl_FragCoord origin is upper left 55 0:? Sequence 56 0:7 Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float) 57 0:7 Function Parameters: 58 0:7 'input' ( in structure{ temp float interp, temp uint no_interp}) 59 0:? Sequence 60 0:8 Branch: Return with expression 61 0:? Construct vec4 ( temp 4-component vector of float) 62 0:8 Convert uint to float ( temp float) 63 0:8 no_interp: direct index for structure ( temp uint) 64 0:8 'input' ( in structure{ temp float interp, temp uint no_interp}) 65 0:8 Constant: 66 0:8 1 (const int) 67 0:8 interp: direct index for structure ( temp float) 68 0:8 'input' ( in structure{ temp float interp, temp uint no_interp}) 69 0:8 Constant: 70 0:8 0 (const int) 71 0:8 Constant: 72 0:8 0.000000 73 0:8 Constant: 74 0:8 1.000000 75 0:7 Function Definition: main( ( temp void) 76 0:7 Function Parameters: 77 0:? Sequence 78 0:7 Sequence 79 0:7 move second child to first child ( temp float) 80 0:7 interp: direct index for structure ( temp float) 81 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 82 0:7 Constant: 83 0:7 0 (const int) 84 0:? 'input.interp' (layout( location=0) in float) 85 0:7 move second child to first child ( temp uint) 86 0:7 no_interp: direct index for structure ( temp uint) 87 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 88 0:7 Constant: 89 0:7 1 (const int) 90 0:? 'input.no_interp' (layout( location=1) flat in uint) 91 0:7 move second child to first child ( temp 4-component vector of float) 92 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 93 0:7 Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float) 94 0:? 'input' ( temp structure{ temp float interp, temp uint no_interp}) 95 0:? Linker Objects 96 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 97 0:? 'input.interp' (layout( location=0) in float) 98 0:? 'input.no_interp' (layout( location=1) flat in uint) 99 100 // Module Version 10000 101 // Generated by (magic number): 80007 102 // Id's are bound by 44 103 104 Capability Shader 105 1: ExtInstImport "GLSL.std.450" 106 MemoryModel Logical GLSL450 107 EntryPoint Fragment 4 "main" 32 36 40 108 ExecutionMode 4 OriginUpperLeft 109 Source HLSL 500 110 Name 4 "main" 111 Name 8 "PSInput" 112 MemberName 8(PSInput) 0 "interp" 113 MemberName 8(PSInput) 1 "no_interp" 114 Name 13 "@main(struct-PSInput-f1-u11;" 115 Name 12 "input" 116 Name 30 "input" 117 Name 32 "input.interp" 118 Name 36 "input.no_interp" 119 Name 40 "@entryPointOutput" 120 Name 41 "param" 121 Decorate 32(input.interp) Location 0 122 Decorate 36(input.no_interp) Flat 123 Decorate 36(input.no_interp) Location 1 124 Decorate 40(@entryPointOutput) Location 0 125 2: TypeVoid 126 3: TypeFunction 2 127 6: TypeFloat 32 128 7: TypeInt 32 0 129 8(PSInput): TypeStruct 6(float) 7(int) 130 9: TypePointer Function 8(PSInput) 131 10: TypeVector 6(float) 4 132 11: TypeFunction 10(fvec4) 9(ptr) 133 15: TypeInt 32 1 134 16: 15(int) Constant 1 135 17: TypePointer Function 7(int) 136 21: 15(int) Constant 0 137 22: TypePointer Function 6(float) 138 25: 6(float) Constant 0 139 26: 6(float) Constant 1065353216 140 31: TypePointer Input 6(float) 141 32(input.interp): 31(ptr) Variable Input 142 35: TypePointer Input 7(int) 143 36(input.no_interp): 35(ptr) Variable Input 144 39: TypePointer Output 10(fvec4) 145 40(@entryPointOutput): 39(ptr) Variable Output 146 4(main): 2 Function None 3 147 5: Label 148 30(input): 9(ptr) Variable Function 149 41(param): 9(ptr) Variable Function 150 33: 6(float) Load 32(input.interp) 151 34: 22(ptr) AccessChain 30(input) 21 152 Store 34 33 153 37: 7(int) Load 36(input.no_interp) 154 38: 17(ptr) AccessChain 30(input) 16 155 Store 38 37 156 42: 8(PSInput) Load 30(input) 157 Store 41(param) 42 158 43: 10(fvec4) FunctionCall 13(@main(struct-PSInput-f1-u11;) 41(param) 159 Store 40(@entryPointOutput) 43 160 Return 161 FunctionEnd 162 13(@main(struct-PSInput-f1-u11;): 10(fvec4) Function None 11 163 12(input): 9(ptr) FunctionParameter 164 14: Label 165 18: 17(ptr) AccessChain 12(input) 16 166 19: 7(int) Load 18 167 20: 6(float) ConvertUToF 19 168 23: 22(ptr) AccessChain 12(input) 21 169 24: 6(float) Load 23 170 27: 10(fvec4) CompositeConstruct 20 24 25 26 171 ReturnValue 27 172 FunctionEnd 173