1 hlsl.conditional.frag 2 Shader version: 500 3 gl_FragCoord origin is upper left 4 0:? Sequence 5 0:8 Function Definition: vectorCond( ( temp 4-component vector of float) 6 0:8 Function Parameters: 7 0:? Sequence 8 0:12 Branch: Return with expression 9 0:11 add ( temp 4-component vector of float) 10 0:10 add ( temp 4-component vector of float) 11 0:9 add ( temp 4-component vector of float) 12 0:9 mix ( temp 4-component vector of float) 13 0:9 f4: direct index for structure ( uniform 4-component vector of float) 14 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 15 0:9 Constant: 16 0:9 2 (const uint) 17 0:9 t4: direct index for structure ( uniform 4-component vector of float) 18 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 19 0:9 Constant: 20 0:9 1 (const uint) 21 0:9 Convert float to bool ( temp 4-component vector of bool) 22 0:9 c4: direct index for structure ( uniform 4-component vector of float) 23 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 24 0:9 Constant: 25 0:9 0 (const uint) 26 0:10 mix ( temp 4-component vector of float) 27 0:10 Construct vec4 ( temp 4-component vector of float) 28 0:10 f: direct index for structure ( uniform float) 29 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 30 0:10 Constant: 31 0:10 4 (const uint) 32 0:10 Construct vec4 ( temp 4-component vector of float) 33 0:10 t: direct index for structure ( uniform float) 34 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 35 0:10 Constant: 36 0:10 3 (const uint) 37 0:10 Convert float to bool ( temp 4-component vector of bool) 38 0:10 c4: direct index for structure ( uniform 4-component vector of float) 39 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 40 0:10 Constant: 41 0:10 0 (const uint) 42 0:11 mix ( temp 4-component vector of float) 43 0:11 f4: direct index for structure ( uniform 4-component vector of float) 44 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 45 0:11 Constant: 46 0:11 2 (const uint) 47 0:11 t4: direct index for structure ( uniform 4-component vector of float) 48 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 49 0:11 Constant: 50 0:11 1 (const uint) 51 0:11 Compare Less Than ( temp 4-component vector of bool) 52 0:11 t4: direct index for structure ( uniform 4-component vector of float) 53 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 54 0:11 Constant: 55 0:11 1 (const uint) 56 0:11 f4: direct index for structure ( uniform 4-component vector of float) 57 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 58 0:11 Constant: 59 0:11 2 (const uint) 60 0:12 mix ( temp 4-component vector of float) 61 0:12 f4: direct index for structure ( uniform 4-component vector of float) 62 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 63 0:12 Constant: 64 0:12 2 (const uint) 65 0:12 Construct vec4 ( temp 4-component vector of float) 66 0:12 t: direct index for structure ( uniform float) 67 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 68 0:12 Constant: 69 0:12 3 (const uint) 70 0:12 Convert float to bool ( temp 4-component vector of bool) 71 0:12 c4: direct index for structure ( uniform 4-component vector of float) 72 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 73 0:12 Constant: 74 0:12 0 (const uint) 75 0:16 Function Definition: scalarCond( ( temp 4-component vector of float) 76 0:16 Function Parameters: 77 0:? Sequence 78 0:17 Sequence 79 0:17 move second child to first child ( temp 4-component vector of float) 80 0:17 'ret' ( temp 4-component vector of float) 81 0:17 Test condition and select ( temp 4-component vector of float): no shortcircuit 82 0:17 Condition 83 0:17 Compare Not Equal ( temp bool) 84 0:17 t: direct index for structure ( uniform float) 85 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 86 0:17 Constant: 87 0:17 3 (const uint) 88 0:17 f: direct index for structure ( uniform float) 89 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 90 0:17 Constant: 91 0:17 4 (const uint) 92 0:17 true case 93 0:17 vector-scale ( temp 4-component vector of float) 94 0:17 t: direct index for structure ( uniform float) 95 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 96 0:17 Constant: 97 0:17 3 (const uint) 98 0:17 f4: direct index for structure ( uniform 4-component vector of float) 99 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 100 0:17 Constant: 101 0:17 2 (const uint) 102 0:17 false case 103 0:17 Constant: 104 0:17 1.000000 105 0:17 1.000000 106 0:17 1.000000 107 0:17 1.000000 108 0:18 Branch: Return with expression 109 0:18 'ret' ( temp 4-component vector of float) 110 0:22 Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 111 0:22 Function Parameters: 112 0:22 'cnd' ( in 2-component vector of bool) 113 0:22 'src0' ( in 2-component vector of float) 114 0:22 'src1' ( in 2-component vector of float) 115 0:? Sequence 116 0:23 Branch: Return with expression 117 0:23 mix ( temp 2-component vector of float) 118 0:23 'src1' ( in 2-component vector of float) 119 0:23 'src0' ( in 2-component vector of float) 120 0:23 'cnd' ( in 2-component vector of bool) 121 0:27 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 122 0:27 Function Parameters: 123 0:27 'input' ( in 4-component vector of float) 124 0:? Sequence 125 0:28 Sequence 126 0:28 move second child to first child ( temp int) 127 0:28 'a' ( temp int) 128 0:28 Constant: 129 0:28 5 (const int) 130 0:29 Sequence 131 0:29 move second child to first child ( temp int) 132 0:29 'b' ( temp int) 133 0:29 Constant: 134 0:29 6 (const int) 135 0:30 Sequence 136 0:30 move second child to first child ( temp int) 137 0:30 'c' ( temp int) 138 0:30 Constant: 139 0:30 7 (const int) 140 0:31 Sequence 141 0:31 move second child to first child ( temp int) 142 0:31 'd' ( temp int) 143 0:31 Constant: 144 0:31 7 (const int) 145 0:32 Sequence 146 0:32 move second child to first child ( temp 4-component vector of float) 147 0:32 'ret' ( temp 4-component vector of float) 148 0:34 add ( temp 4-component vector of float) 149 0:33 add ( temp 4-component vector of float) 150 0:32 add ( temp 4-component vector of float) 151 0:32 vector-scale ( temp 4-component vector of float) 152 0:32 Convert int to float ( temp float) 153 0:32 'a' ( temp int) 154 0:32 'input' ( in 4-component vector of float) 155 0:33 vector-scale ( temp 4-component vector of float) 156 0:33 Convert int to float ( temp float) 157 0:33 'b' ( temp int) 158 0:33 'input' ( in 4-component vector of float) 159 0:34 vector-scale ( temp 4-component vector of float) 160 0:34 Convert int to float ( temp float) 161 0:34 'c' ( temp int) 162 0:34 'input' ( in 4-component vector of float) 163 0:35 vector-scale ( temp 4-component vector of float) 164 0:35 Convert int to float ( temp float) 165 0:35 'd' ( temp int) 166 0:35 'input' ( in 4-component vector of float) 167 0:37 Comma ( temp int) 168 0:37 move second child to first child ( temp int) 169 0:37 'e' ( temp int) 170 0:37 move second child to first child ( temp int) 171 0:37 'a' ( temp int) 172 0:37 Test condition and select ( temp int): no shortcircuit 173 0:37 Condition 174 0:37 Convert int to bool ( temp bool) 175 0:37 'b' ( temp int) 176 0:37 true case 177 0:37 move second child to first child ( temp int) 178 0:37 'c' ( temp int) 179 0:37 'd' ( temp int) 180 0:37 false case 181 0:37 Constant: 182 0:37 10 (const int) 183 0:37 move second child to first child ( temp int) 184 0:37 'b' ( temp int) 185 0:37 Test condition and select ( temp int): no shortcircuit 186 0:37 Condition 187 0:37 Convert int to bool ( temp bool) 188 0:37 'a' ( temp int) 189 0:37 true case 190 0:37 move second child to first child ( temp int) 191 0:37 'd' ( temp int) 192 0:37 'c' ( temp int) 193 0:37 false case 194 0:37 Constant: 195 0:37 11 (const int) 196 0:39 move second child to first child ( temp 4-component vector of float) 197 0:39 'f' ( temp 4-component vector of float) 198 0:39 Test condition and select ( temp 4-component vector of float): no shortcircuit 199 0:39 Condition 200 0:39 Compare Less Than ( temp bool) 201 0:39 direct index ( temp float) 202 0:39 'ret' ( temp 4-component vector of float) 203 0:39 Constant: 204 0:39 0 (const int) 205 0:39 direct index ( temp float) 206 0:39 'input' ( in 4-component vector of float) 207 0:39 Constant: 208 0:39 1 (const int) 209 0:39 true case 210 0:39 vector-scale ( temp 4-component vector of float) 211 0:39 Convert int to float ( temp float) 212 0:39 'c' ( temp int) 213 0:39 'input' ( in 4-component vector of float) 214 0:39 false case 215 0:39 vector-scale ( temp 4-component vector of float) 216 0:39 Convert int to float ( temp float) 217 0:39 'd' ( temp int) 218 0:39 'input' ( in 4-component vector of float) 219 0:41 Branch: Return with expression 220 0:40 add ( temp 4-component vector of float) 221 0:40 add ( temp 4-component vector of float) 222 0:40 add ( temp 4-component vector of float) 223 0:40 add ( temp 4-component vector of float) 224 0:40 vector-scale ( temp 4-component vector of float) 225 0:40 Convert int to float ( temp float) 226 0:40 'e' ( temp int) 227 0:40 'ret' ( temp 4-component vector of float) 228 0:40 'f' ( temp 4-component vector of float) 229 0:40 Function Call: vectorCond( ( temp 4-component vector of float) 230 0:40 Function Call: scalarCond( ( temp 4-component vector of float) 231 0:? Construct vec4 ( temp 4-component vector of float) 232 0:41 Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 233 0:? Constant: 234 0:? true (const bool) 235 0:? false (const bool) 236 0:? Constant: 237 0:? 1.000000 238 0:? 2.000000 239 0:? Constant: 240 0:? 3.000000 241 0:? 4.000000 242 0:41 Constant: 243 0:41 10.000000 244 0:41 Constant: 245 0:41 10.000000 246 0:27 Function Definition: PixelShaderFunction( ( temp void) 247 0:27 Function Parameters: 248 0:? Sequence 249 0:27 move second child to first child ( temp 4-component vector of float) 250 0:? 'input' ( temp 4-component vector of float) 251 0:? 'input' (layout( location=0) in 4-component vector of float) 252 0:27 move second child to first child ( temp 4-component vector of float) 253 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 254 0:27 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 255 0:? 'input' ( temp 4-component vector of float) 256 0:? Linker Objects 257 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 258 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 259 0:? 'input' (layout( location=0) in 4-component vector of float) 260 261 262 Linked fragment stage: 263 264 265 Shader version: 500 266 gl_FragCoord origin is upper left 267 0:? Sequence 268 0:8 Function Definition: vectorCond( ( temp 4-component vector of float) 269 0:8 Function Parameters: 270 0:? Sequence 271 0:12 Branch: Return with expression 272 0:11 add ( temp 4-component vector of float) 273 0:10 add ( temp 4-component vector of float) 274 0:9 add ( temp 4-component vector of float) 275 0:9 mix ( temp 4-component vector of float) 276 0:9 f4: direct index for structure ( uniform 4-component vector of float) 277 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 278 0:9 Constant: 279 0:9 2 (const uint) 280 0:9 t4: direct index for structure ( uniform 4-component vector of float) 281 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 282 0:9 Constant: 283 0:9 1 (const uint) 284 0:9 Convert float to bool ( temp 4-component vector of bool) 285 0:9 c4: direct index for structure ( uniform 4-component vector of float) 286 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 287 0:9 Constant: 288 0:9 0 (const uint) 289 0:10 mix ( temp 4-component vector of float) 290 0:10 Construct vec4 ( temp 4-component vector of float) 291 0:10 f: direct index for structure ( uniform float) 292 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 293 0:10 Constant: 294 0:10 4 (const uint) 295 0:10 Construct vec4 ( temp 4-component vector of float) 296 0:10 t: direct index for structure ( uniform float) 297 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 298 0:10 Constant: 299 0:10 3 (const uint) 300 0:10 Convert float to bool ( temp 4-component vector of bool) 301 0:10 c4: direct index for structure ( uniform 4-component vector of float) 302 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 303 0:10 Constant: 304 0:10 0 (const uint) 305 0:11 mix ( temp 4-component vector of float) 306 0:11 f4: direct index for structure ( uniform 4-component vector of float) 307 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 308 0:11 Constant: 309 0:11 2 (const uint) 310 0:11 t4: direct index for structure ( uniform 4-component vector of float) 311 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 312 0:11 Constant: 313 0:11 1 (const uint) 314 0:11 Compare Less Than ( temp 4-component vector of bool) 315 0:11 t4: direct index for structure ( uniform 4-component vector of float) 316 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 317 0:11 Constant: 318 0:11 1 (const uint) 319 0:11 f4: direct index for structure ( uniform 4-component vector of float) 320 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 321 0:11 Constant: 322 0:11 2 (const uint) 323 0:12 mix ( temp 4-component vector of float) 324 0:12 f4: direct index for structure ( uniform 4-component vector of float) 325 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 326 0:12 Constant: 327 0:12 2 (const uint) 328 0:12 Construct vec4 ( temp 4-component vector of float) 329 0:12 t: direct index for structure ( uniform float) 330 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 331 0:12 Constant: 332 0:12 3 (const uint) 333 0:12 Convert float to bool ( temp 4-component vector of bool) 334 0:12 c4: direct index for structure ( uniform 4-component vector of float) 335 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 336 0:12 Constant: 337 0:12 0 (const uint) 338 0:16 Function Definition: scalarCond( ( temp 4-component vector of float) 339 0:16 Function Parameters: 340 0:? Sequence 341 0:17 Sequence 342 0:17 move second child to first child ( temp 4-component vector of float) 343 0:17 'ret' ( temp 4-component vector of float) 344 0:17 Test condition and select ( temp 4-component vector of float): no shortcircuit 345 0:17 Condition 346 0:17 Compare Not Equal ( temp bool) 347 0:17 t: direct index for structure ( uniform float) 348 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 349 0:17 Constant: 350 0:17 3 (const uint) 351 0:17 f: direct index for structure ( uniform float) 352 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 353 0:17 Constant: 354 0:17 4 (const uint) 355 0:17 true case 356 0:17 vector-scale ( temp 4-component vector of float) 357 0:17 t: direct index for structure ( uniform float) 358 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 359 0:17 Constant: 360 0:17 3 (const uint) 361 0:17 f4: direct index for structure ( uniform 4-component vector of float) 362 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 363 0:17 Constant: 364 0:17 2 (const uint) 365 0:17 false case 366 0:17 Constant: 367 0:17 1.000000 368 0:17 1.000000 369 0:17 1.000000 370 0:17 1.000000 371 0:18 Branch: Return with expression 372 0:18 'ret' ( temp 4-component vector of float) 373 0:22 Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 374 0:22 Function Parameters: 375 0:22 'cnd' ( in 2-component vector of bool) 376 0:22 'src0' ( in 2-component vector of float) 377 0:22 'src1' ( in 2-component vector of float) 378 0:? Sequence 379 0:23 Branch: Return with expression 380 0:23 mix ( temp 2-component vector of float) 381 0:23 'src1' ( in 2-component vector of float) 382 0:23 'src0' ( in 2-component vector of float) 383 0:23 'cnd' ( in 2-component vector of bool) 384 0:27 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 385 0:27 Function Parameters: 386 0:27 'input' ( in 4-component vector of float) 387 0:? Sequence 388 0:28 Sequence 389 0:28 move second child to first child ( temp int) 390 0:28 'a' ( temp int) 391 0:28 Constant: 392 0:28 5 (const int) 393 0:29 Sequence 394 0:29 move second child to first child ( temp int) 395 0:29 'b' ( temp int) 396 0:29 Constant: 397 0:29 6 (const int) 398 0:30 Sequence 399 0:30 move second child to first child ( temp int) 400 0:30 'c' ( temp int) 401 0:30 Constant: 402 0:30 7 (const int) 403 0:31 Sequence 404 0:31 move second child to first child ( temp int) 405 0:31 'd' ( temp int) 406 0:31 Constant: 407 0:31 7 (const int) 408 0:32 Sequence 409 0:32 move second child to first child ( temp 4-component vector of float) 410 0:32 'ret' ( temp 4-component vector of float) 411 0:34 add ( temp 4-component vector of float) 412 0:33 add ( temp 4-component vector of float) 413 0:32 add ( temp 4-component vector of float) 414 0:32 vector-scale ( temp 4-component vector of float) 415 0:32 Convert int to float ( temp float) 416 0:32 'a' ( temp int) 417 0:32 'input' ( in 4-component vector of float) 418 0:33 vector-scale ( temp 4-component vector of float) 419 0:33 Convert int to float ( temp float) 420 0:33 'b' ( temp int) 421 0:33 'input' ( in 4-component vector of float) 422 0:34 vector-scale ( temp 4-component vector of float) 423 0:34 Convert int to float ( temp float) 424 0:34 'c' ( temp int) 425 0:34 'input' ( in 4-component vector of float) 426 0:35 vector-scale ( temp 4-component vector of float) 427 0:35 Convert int to float ( temp float) 428 0:35 'd' ( temp int) 429 0:35 'input' ( in 4-component vector of float) 430 0:37 Comma ( temp int) 431 0:37 move second child to first child ( temp int) 432 0:37 'e' ( temp int) 433 0:37 move second child to first child ( temp int) 434 0:37 'a' ( temp int) 435 0:37 Test condition and select ( temp int): no shortcircuit 436 0:37 Condition 437 0:37 Convert int to bool ( temp bool) 438 0:37 'b' ( temp int) 439 0:37 true case 440 0:37 move second child to first child ( temp int) 441 0:37 'c' ( temp int) 442 0:37 'd' ( temp int) 443 0:37 false case 444 0:37 Constant: 445 0:37 10 (const int) 446 0:37 move second child to first child ( temp int) 447 0:37 'b' ( temp int) 448 0:37 Test condition and select ( temp int): no shortcircuit 449 0:37 Condition 450 0:37 Convert int to bool ( temp bool) 451 0:37 'a' ( temp int) 452 0:37 true case 453 0:37 move second child to first child ( temp int) 454 0:37 'd' ( temp int) 455 0:37 'c' ( temp int) 456 0:37 false case 457 0:37 Constant: 458 0:37 11 (const int) 459 0:39 move second child to first child ( temp 4-component vector of float) 460 0:39 'f' ( temp 4-component vector of float) 461 0:39 Test condition and select ( temp 4-component vector of float): no shortcircuit 462 0:39 Condition 463 0:39 Compare Less Than ( temp bool) 464 0:39 direct index ( temp float) 465 0:39 'ret' ( temp 4-component vector of float) 466 0:39 Constant: 467 0:39 0 (const int) 468 0:39 direct index ( temp float) 469 0:39 'input' ( in 4-component vector of float) 470 0:39 Constant: 471 0:39 1 (const int) 472 0:39 true case 473 0:39 vector-scale ( temp 4-component vector of float) 474 0:39 Convert int to float ( temp float) 475 0:39 'c' ( temp int) 476 0:39 'input' ( in 4-component vector of float) 477 0:39 false case 478 0:39 vector-scale ( temp 4-component vector of float) 479 0:39 Convert int to float ( temp float) 480 0:39 'd' ( temp int) 481 0:39 'input' ( in 4-component vector of float) 482 0:41 Branch: Return with expression 483 0:40 add ( temp 4-component vector of float) 484 0:40 add ( temp 4-component vector of float) 485 0:40 add ( temp 4-component vector of float) 486 0:40 add ( temp 4-component vector of float) 487 0:40 vector-scale ( temp 4-component vector of float) 488 0:40 Convert int to float ( temp float) 489 0:40 'e' ( temp int) 490 0:40 'ret' ( temp 4-component vector of float) 491 0:40 'f' ( temp 4-component vector of float) 492 0:40 Function Call: vectorCond( ( temp 4-component vector of float) 493 0:40 Function Call: scalarCond( ( temp 4-component vector of float) 494 0:? Construct vec4 ( temp 4-component vector of float) 495 0:41 Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 496 0:? Constant: 497 0:? true (const bool) 498 0:? false (const bool) 499 0:? Constant: 500 0:? 1.000000 501 0:? 2.000000 502 0:? Constant: 503 0:? 3.000000 504 0:? 4.000000 505 0:41 Constant: 506 0:41 10.000000 507 0:41 Constant: 508 0:41 10.000000 509 0:27 Function Definition: PixelShaderFunction( ( temp void) 510 0:27 Function Parameters: 511 0:? Sequence 512 0:27 move second child to first child ( temp 4-component vector of float) 513 0:? 'input' ( temp 4-component vector of float) 514 0:? 'input' (layout( location=0) in 4-component vector of float) 515 0:27 move second child to first child ( temp 4-component vector of float) 516 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 517 0:27 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 518 0:? 'input' ( temp 4-component vector of float) 519 0:? Linker Objects 520 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 521 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 522 0:? 'input' (layout( location=0) in 4-component vector of float) 523 524 // Module Version 10000 525 // Generated by (magic number): 80007 526 // Id's are bound by 206 527 528 Capability Shader 529 1: ExtInstImport "GLSL.std.450" 530 MemoryModel Logical GLSL450 531 EntryPoint Fragment 4 "PixelShaderFunction" 199 202 532 ExecutionMode 4 OriginUpperLeft 533 Source HLSL 500 534 Name 4 "PixelShaderFunction" 535 Name 9 "vectorCond(" 536 Name 11 "scalarCond(" 537 Name 22 "fbSelect(vb2;vf2;vf2;" 538 Name 19 "cnd" 539 Name 20 "src0" 540 Name 21 "src1" 541 Name 27 "@PixelShaderFunction(vf4;" 542 Name 26 "input" 543 Name 29 "$Global" 544 MemberName 29($Global) 0 "c4" 545 MemberName 29($Global) 1 "t4" 546 MemberName 29($Global) 2 "f4" 547 MemberName 29($Global) 3 "t" 548 MemberName 29($Global) 4 "f" 549 Name 31 "" 550 Name 85 "ret" 551 Name 110 "a" 552 Name 112 "b" 553 Name 114 "c" 554 Name 116 "d" 555 Name 117 "ret" 556 Name 137 "e" 557 Name 150 "f" 558 Name 186 "param" 559 Name 187 "param" 560 Name 188 "param" 561 Name 197 "input" 562 Name 199 "input" 563 Name 202 "@entryPointOutput" 564 Name 203 "param" 565 MemberDecorate 29($Global) 0 Offset 0 566 MemberDecorate 29($Global) 1 Offset 16 567 MemberDecorate 29($Global) 2 Offset 32 568 MemberDecorate 29($Global) 3 Offset 48 569 MemberDecorate 29($Global) 4 Offset 52 570 Decorate 29($Global) Block 571 Decorate 31 DescriptorSet 0 572 Decorate 31 Binding 0 573 Decorate 199(input) Location 0 574 Decorate 202(@entryPointOutput) Location 0 575 2: TypeVoid 576 3: TypeFunction 2 577 6: TypeFloat 32 578 7: TypeVector 6(float) 4 579 8: TypeFunction 7(fvec4) 580 13: TypeBool 581 14: TypeVector 13(bool) 2 582 15: TypePointer Function 14(bvec2) 583 16: TypeVector 6(float) 2 584 17: TypePointer Function 16(fvec2) 585 18: TypeFunction 16(fvec2) 15(ptr) 17(ptr) 17(ptr) 586 24: TypePointer Function 7(fvec4) 587 25: TypeFunction 7(fvec4) 24(ptr) 588 29($Global): TypeStruct 7(fvec4) 7(fvec4) 7(fvec4) 6(float) 6(float) 589 30: TypePointer Uniform 29($Global) 590 31: 30(ptr) Variable Uniform 591 32: TypeInt 32 1 592 33: 32(int) Constant 2 593 34: TypePointer Uniform 7(fvec4) 594 37: 32(int) Constant 1 595 40: 32(int) Constant 0 596 43: TypeVector 13(bool) 4 597 44: 6(float) Constant 0 598 45: 7(fvec4) ConstantComposite 44 44 44 44 599 48: 32(int) Constant 4 600 49: TypePointer Uniform 6(float) 601 53: 32(int) Constant 3 602 96: 6(float) Constant 1065353216 603 97: 7(fvec4) ConstantComposite 96 96 96 96 604 109: TypePointer Function 32(int) 605 111: 32(int) Constant 5 606 113: 32(int) Constant 6 607 115: 32(int) Constant 7 608 139: TypeInt 32 0 609 140: 139(int) Constant 0 610 143: 32(int) Constant 10 611 148: 32(int) Constant 11 612 151: TypePointer Function 6(float) 613 154: 139(int) Constant 1 614 178: 13(bool) ConstantTrue 615 179: 13(bool) ConstantFalse 616 180: 14(bvec2) ConstantComposite 178 179 617 181: 6(float) Constant 1073741824 618 182: 16(fvec2) ConstantComposite 96 181 619 183: 6(float) Constant 1077936128 620 184: 6(float) Constant 1082130432 621 185: 16(fvec2) ConstantComposite 183 184 622 190: 6(float) Constant 1092616192 623 198: TypePointer Input 7(fvec4) 624 199(input): 198(ptr) Variable Input 625 201: TypePointer Output 7(fvec4) 626 202(@entryPointOutput): 201(ptr) Variable Output 627 4(PixelShaderFunction): 2 Function None 3 628 5: Label 629 197(input): 24(ptr) Variable Function 630 203(param): 24(ptr) Variable Function 631 200: 7(fvec4) Load 199(input) 632 Store 197(input) 200 633 204: 7(fvec4) Load 197(input) 634 Store 203(param) 204 635 205: 7(fvec4) FunctionCall 27(@PixelShaderFunction(vf4;) 203(param) 636 Store 202(@entryPointOutput) 205 637 Return 638 FunctionEnd 639 9(vectorCond(): 7(fvec4) Function None 8 640 10: Label 641 35: 34(ptr) AccessChain 31 33 642 36: 7(fvec4) Load 35 643 38: 34(ptr) AccessChain 31 37 644 39: 7(fvec4) Load 38 645 41: 34(ptr) AccessChain 31 40 646 42: 7(fvec4) Load 41 647 46: 43(bvec4) FOrdNotEqual 42 45 648 47: 7(fvec4) Select 46 39 36 649 50: 49(ptr) AccessChain 31 48 650 51: 6(float) Load 50 651 52: 7(fvec4) CompositeConstruct 51 51 51 51 652 54: 49(ptr) AccessChain 31 53 653 55: 6(float) Load 54 654 56: 7(fvec4) CompositeConstruct 55 55 55 55 655 57: 34(ptr) AccessChain 31 40 656 58: 7(fvec4) Load 57 657 59: 43(bvec4) FOrdNotEqual 58 45 658 60: 7(fvec4) Select 59 56 52 659 61: 7(fvec4) FAdd 47 60 660 62: 34(ptr) AccessChain 31 33 661 63: 7(fvec4) Load 62 662 64: 34(ptr) AccessChain 31 37 663 65: 7(fvec4) Load 64 664 66: 34(ptr) AccessChain 31 37 665 67: 7(fvec4) Load 66 666 68: 34(ptr) AccessChain 31 33 667 69: 7(fvec4) Load 68 668 70: 43(bvec4) FOrdLessThan 67 69 669 71: 7(fvec4) Select 70 65 63 670 72: 7(fvec4) FAdd 61 71 671 73: 34(ptr) AccessChain 31 33 672 74: 7(fvec4) Load 73 673 75: 49(ptr) AccessChain 31 53 674 76: 6(float) Load 75 675 77: 7(fvec4) CompositeConstruct 76 76 76 76 676 78: 34(ptr) AccessChain 31 40 677 79: 7(fvec4) Load 78 678 80: 43(bvec4) FOrdNotEqual 79 45 679 81: 7(fvec4) Select 80 77 74 680 82: 7(fvec4) FAdd 72 81 681 ReturnValue 82 682 FunctionEnd 683 11(scalarCond(): 7(fvec4) Function None 8 684 12: Label 685 85(ret): 24(ptr) Variable Function 686 86: 49(ptr) AccessChain 31 53 687 87: 6(float) Load 86 688 88: 49(ptr) AccessChain 31 48 689 89: 6(float) Load 88 690 90: 13(bool) FOrdNotEqual 87 89 691 91: 49(ptr) AccessChain 31 53 692 92: 6(float) Load 91 693 93: 34(ptr) AccessChain 31 33 694 94: 7(fvec4) Load 93 695 95: 7(fvec4) VectorTimesScalar 94 92 696 98: 43(bvec4) CompositeConstruct 90 90 90 90 697 99: 7(fvec4) Select 98 95 97 698 Store 85(ret) 99 699 100: 7(fvec4) Load 85(ret) 700 ReturnValue 100 701 FunctionEnd 702 22(fbSelect(vb2;vf2;vf2;): 16(fvec2) Function None 18 703 19(cnd): 15(ptr) FunctionParameter 704 20(src0): 17(ptr) FunctionParameter 705 21(src1): 17(ptr) FunctionParameter 706 23: Label 707 103: 16(fvec2) Load 21(src1) 708 104: 16(fvec2) Load 20(src0) 709 105: 14(bvec2) Load 19(cnd) 710 106: 16(fvec2) Select 105 104 103 711 ReturnValue 106 712 FunctionEnd 713 27(@PixelShaderFunction(vf4;): 7(fvec4) Function None 25 714 26(input): 24(ptr) FunctionParameter 715 28: Label 716 110(a): 109(ptr) Variable Function 717 112(b): 109(ptr) Variable Function 718 114(c): 109(ptr) Variable Function 719 116(d): 109(ptr) Variable Function 720 117(ret): 24(ptr) Variable Function 721 137(e): 109(ptr) Variable Function 722 150(f): 24(ptr) Variable Function 723 186(param): 15(ptr) Variable Function 724 187(param): 17(ptr) Variable Function 725 188(param): 17(ptr) Variable Function 726 Store 110(a) 111 727 Store 112(b) 113 728 Store 114(c) 115 729 Store 116(d) 115 730 118: 32(int) Load 110(a) 731 119: 6(float) ConvertSToF 118 732 120: 7(fvec4) Load 26(input) 733 121: 7(fvec4) VectorTimesScalar 120 119 734 122: 32(int) Load 112(b) 735 123: 6(float) ConvertSToF 122 736 124: 7(fvec4) Load 26(input) 737 125: 7(fvec4) VectorTimesScalar 124 123 738 126: 7(fvec4) FAdd 121 125 739 127: 32(int) Load 114(c) 740 128: 6(float) ConvertSToF 127 741 129: 7(fvec4) Load 26(input) 742 130: 7(fvec4) VectorTimesScalar 129 128 743 131: 7(fvec4) FAdd 126 130 744 132: 32(int) Load 116(d) 745 133: 6(float) ConvertSToF 132 746 134: 7(fvec4) Load 26(input) 747 135: 7(fvec4) VectorTimesScalar 134 133 748 136: 7(fvec4) FAdd 131 135 749 Store 117(ret) 136 750 138: 32(int) Load 112(b) 751 141: 13(bool) INotEqual 138 140 752 142: 32(int) Load 116(d) 753 Store 114(c) 142 754 144: 32(int) Select 141 142 143 755 Store 110(a) 144 756 Store 137(e) 144 757 145: 32(int) Load 110(a) 758 146: 13(bool) INotEqual 145 140 759 147: 32(int) Load 114(c) 760 Store 116(d) 147 761 149: 32(int) Select 146 147 148 762 Store 112(b) 149 763 152: 151(ptr) AccessChain 117(ret) 140 764 153: 6(float) Load 152 765 155: 151(ptr) AccessChain 26(input) 154 766 156: 6(float) Load 155 767 157: 13(bool) FOrdLessThan 153 156 768 158: 32(int) Load 114(c) 769 159: 6(float) ConvertSToF 158 770 160: 7(fvec4) Load 26(input) 771 161: 7(fvec4) VectorTimesScalar 160 159 772 162: 32(int) Load 116(d) 773 163: 6(float) ConvertSToF 162 774 164: 7(fvec4) Load 26(input) 775 165: 7(fvec4) VectorTimesScalar 164 163 776 166: 43(bvec4) CompositeConstruct 157 157 157 157 777 167: 7(fvec4) Select 166 161 165 778 Store 150(f) 167 779 168: 32(int) Load 137(e) 780 169: 6(float) ConvertSToF 168 781 170: 7(fvec4) Load 117(ret) 782 171: 7(fvec4) VectorTimesScalar 170 169 783 172: 7(fvec4) Load 150(f) 784 173: 7(fvec4) FAdd 171 172 785 174: 7(fvec4) FunctionCall 9(vectorCond() 786 175: 7(fvec4) FAdd 173 174 787 176: 7(fvec4) FunctionCall 11(scalarCond() 788 177: 7(fvec4) FAdd 175 176 789 Store 186(param) 180 790 Store 187(param) 182 791 Store 188(param) 185 792 189: 16(fvec2) FunctionCall 22(fbSelect(vb2;vf2;vf2;) 186(param) 187(param) 188(param) 793 191: 6(float) CompositeExtract 189 0 794 192: 6(float) CompositeExtract 189 1 795 193: 7(fvec4) CompositeConstruct 191 192 190 190 796 194: 7(fvec4) FAdd 177 193 797 ReturnValue 194 798 FunctionEnd 799