1 hlsl.flattenSubset2.frag 2 WARNING: AST will form illegal SPIR-V; need to transform to legalize 3 Shader version: 500 4 gl_FragCoord origin is upper left 5 0:? Sequence 6 0:8 Function Definition: @main(vf4; ( temp 4-component vector of float) 7 0:8 Function Parameters: 8 0:8 'vpos' ( in 4-component vector of float) 9 0:? Sequence 10 0:13 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 11 0:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 12 0:13 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 13 0:13 Constant: 14 0:13 0 (const int) 15 0:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 16 0:13 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 17 0:13 Constant: 18 0:13 0 (const int) 19 0:14 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 20 0:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 21 0:14 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 22 0:14 Constant: 23 0:14 0 (const int) 24 0:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 25 0:14 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 26 0:14 Constant: 27 0:14 0 (const int) 28 0:17 Sequence 29 0:17 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 30 0:17 'n' ( temp structure{ temp float y, temp texture2D texNested}) 31 0:17 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 32 0:17 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 33 0:17 Constant: 34 0:17 0 (const int) 35 0:20 move second child to first child ( temp texture2D) 36 0:20 texNested: direct index for structure ( temp texture2D) 37 0:20 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 38 0:20 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 39 0:20 Constant: 40 0:20 0 (const int) 41 0:20 Constant: 42 0:20 1 (const int) 43 0:20 'someTex' ( uniform texture2D) 44 0:21 move second child to first child ( temp float) 45 0:21 y: direct index for structure ( temp float) 46 0:21 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 47 0:21 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 48 0:21 Constant: 49 0:21 0 (const int) 50 0:21 Constant: 51 0:21 0 (const int) 52 0:21 Constant: 53 0:21 1.000000 54 0:23 Branch: Return with expression 55 0:? Constant: 56 0:? 0.000000 57 0:? 0.000000 58 0:? 0.000000 59 0:? 0.000000 60 0:8 Function Definition: main( ( temp void) 61 0:8 Function Parameters: 62 0:? Sequence 63 0:8 move second child to first child ( temp 4-component vector of float) 64 0:? 'vpos' ( temp 4-component vector of float) 65 0:? 'vpos' (layout( location=0) in 4-component vector of float) 66 0:8 move second child to first child ( temp 4-component vector of float) 67 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 68 0:8 Function Call: @main(vf4; ( temp 4-component vector of float) 69 0:? 'vpos' ( temp 4-component vector of float) 70 0:? Linker Objects 71 0:? 'someTex' ( uniform texture2D) 72 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 73 0:? 'vpos' (layout( location=0) in 4-component vector of float) 74 75 76 Linked fragment stage: 77 78 79 Shader version: 500 80 gl_FragCoord origin is upper left 81 0:? Sequence 82 0:8 Function Definition: @main(vf4; ( temp 4-component vector of float) 83 0:8 Function Parameters: 84 0:8 'vpos' ( in 4-component vector of float) 85 0:? Sequence 86 0:13 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 87 0:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 88 0:13 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 89 0:13 Constant: 90 0:13 0 (const int) 91 0:13 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 92 0:13 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 93 0:13 Constant: 94 0:13 0 (const int) 95 0:14 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 96 0:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 97 0:14 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 98 0:14 Constant: 99 0:14 0 (const int) 100 0:14 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 101 0:14 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 102 0:14 Constant: 103 0:14 0 (const int) 104 0:17 Sequence 105 0:17 move second child to first child ( temp structure{ temp float y, temp texture2D texNested}) 106 0:17 'n' ( temp structure{ temp float y, temp texture2D texNested}) 107 0:17 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 108 0:17 'b' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp texture2D tex}) 109 0:17 Constant: 110 0:17 0 (const int) 111 0:20 move second child to first child ( temp texture2D) 112 0:20 texNested: direct index for structure ( temp texture2D) 113 0:20 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 114 0:20 'a2' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 115 0:20 Constant: 116 0:20 0 (const int) 117 0:20 Constant: 118 0:20 1 (const int) 119 0:20 'someTex' ( uniform texture2D) 120 0:21 move second child to first child ( temp float) 121 0:21 y: direct index for structure ( temp float) 122 0:21 n: direct index for structure ( temp structure{ temp float y, temp texture2D texNested}) 123 0:21 'a1' ( temp structure{ temp structure{ temp float y, temp texture2D texNested} n, temp float x}) 124 0:21 Constant: 125 0:21 0 (const int) 126 0:21 Constant: 127 0:21 0 (const int) 128 0:21 Constant: 129 0:21 1.000000 130 0:23 Branch: Return with expression 131 0:? Constant: 132 0:? 0.000000 133 0:? 0.000000 134 0:? 0.000000 135 0:? 0.000000 136 0:8 Function Definition: main( ( temp void) 137 0:8 Function Parameters: 138 0:? Sequence 139 0:8 move second child to first child ( temp 4-component vector of float) 140 0:? 'vpos' ( temp 4-component vector of float) 141 0:? 'vpos' (layout( location=0) in 4-component vector of float) 142 0:8 move second child to first child ( temp 4-component vector of float) 143 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 144 0:8 Function Call: @main(vf4; ( temp 4-component vector of float) 145 0:? 'vpos' ( temp 4-component vector of float) 146 0:? Linker Objects 147 0:? 'someTex' ( uniform texture2D) 148 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 149 0:? 'vpos' (layout( location=0) in 4-component vector of float) 150 151 // Module Version 10000 152 // Generated by (magic number): 80007 153 // Id's are bound by 56 154 155 Capability Shader 156 1: ExtInstImport "GLSL.std.450" 157 MemoryModel Logical GLSL450 158 EntryPoint Fragment 4 "main" 49 52 159 ExecutionMode 4 OriginUpperLeft 160 Source HLSL 500 161 Name 4 "main" 162 Name 11 "@main(vf4;" 163 Name 10 "vpos" 164 Name 14 "Nested" 165 MemberName 14(Nested) 0 "y" 166 MemberName 14(Nested) 1 "texNested" 167 Name 15 "A" 168 MemberName 15(A) 0 "n" 169 MemberName 15(A) 1 "x" 170 Name 17 "a1" 171 Name 20 "a2" 172 Name 25 "B" 173 MemberName 25(B) 0 "n" 174 MemberName 25(B) 1 "tex" 175 Name 27 "b" 176 Name 31 "n" 177 Name 36 "someTex" 178 Name 47 "vpos" 179 Name 49 "vpos" 180 Name 52 "@entryPointOutput" 181 Name 53 "param" 182 Decorate 36(someTex) DescriptorSet 0 183 Decorate 36(someTex) Binding 0 184 Decorate 49(vpos) Location 0 185 Decorate 52(@entryPointOutput) Location 0 186 2: TypeVoid 187 3: TypeFunction 2 188 6: TypeFloat 32 189 7: TypeVector 6(float) 4 190 8: TypePointer Function 7(fvec4) 191 9: TypeFunction 7(fvec4) 8(ptr) 192 13: TypeImage 6(float) 2D sampled format:Unknown 193 14(Nested): TypeStruct 6(float) 13 194 15(A): TypeStruct 14(Nested) 6(float) 195 16: TypePointer Function 15(A) 196 18: TypeInt 32 1 197 19: 18(int) Constant 0 198 21: TypePointer Function 14(Nested) 199 25(B): TypeStruct 14(Nested) 13 200 26: TypePointer Function 25(B) 201 34: 18(int) Constant 1 202 35: TypePointer UniformConstant 13 203 36(someTex): 35(ptr) Variable UniformConstant 204 38: TypePointer Function 13 205 40: 6(float) Constant 1065353216 206 41: TypePointer Function 6(float) 207 43: 6(float) Constant 0 208 44: 7(fvec4) ConstantComposite 43 43 43 43 209 48: TypePointer Input 7(fvec4) 210 49(vpos): 48(ptr) Variable Input 211 51: TypePointer Output 7(fvec4) 212 52(@entryPointOutput): 51(ptr) Variable Output 213 4(main): 2 Function None 3 214 5: Label 215 47(vpos): 8(ptr) Variable Function 216 53(param): 8(ptr) Variable Function 217 50: 7(fvec4) Load 49(vpos) 218 Store 47(vpos) 50 219 54: 7(fvec4) Load 47(vpos) 220 Store 53(param) 54 221 55: 7(fvec4) FunctionCall 11(@main(vf4;) 53(param) 222 Store 52(@entryPointOutput) 55 223 Return 224 FunctionEnd 225 11(@main(vf4;): 7(fvec4) Function None 9 226 10(vpos): 8(ptr) FunctionParameter 227 12: Label 228 17(a1): 16(ptr) Variable Function 229 20(a2): 16(ptr) Variable Function 230 27(b): 26(ptr) Variable Function 231 31(n): 21(ptr) Variable Function 232 22: 21(ptr) AccessChain 20(a2) 19 233 23: 14(Nested) Load 22 234 24: 21(ptr) AccessChain 17(a1) 19 235 Store 24 23 236 28: 21(ptr) AccessChain 17(a1) 19 237 29: 14(Nested) Load 28 238 30: 21(ptr) AccessChain 27(b) 19 239 Store 30 29 240 32: 21(ptr) AccessChain 27(b) 19 241 33: 14(Nested) Load 32 242 Store 31(n) 33 243 37: 13 Load 36(someTex) 244 39: 38(ptr) AccessChain 20(a2) 19 34 245 Store 39 37 246 42: 41(ptr) AccessChain 17(a1) 19 19 247 Store 42 40 248 ReturnValue 44 249 FunctionEnd 250