HLSL: Allow use of $Global members in between function calls.

This allows global initializers to use $Global members.
This commit is contained in:
John Kessenich 2017-03-22 23:21:34 -06:00
parent 7a41f96d10
commit 000c818efb
53 changed files with 4566 additions and 4558 deletions

View file

@ -7,42 +7,42 @@ gl_FragCoord origin is upper left
0:? Sequence
0:15 mod ( temp float)
0:15 Convert int to float ( temp float)
0:15 ival: direct index for structure (layout( offset=32) uniform int)
0:15 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:15 ival: direct index for structure ( uniform int)
0:15 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:15 Constant:
0:15 2 (const uint)
0:15 fval: direct index for structure (layout( offset=64) uniform float)
0:15 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:15 fval: direct index for structure ( uniform float)
0:15 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:15 Constant:
0:15 4 (const uint)
0:16 mod ( temp 4-component vector of float)
0:16 Convert int to float ( temp 4-component vector of float)
0:16 ival4: direct index for structure (layout( offset=48) uniform 4-component vector of int)
0:16 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:16 ival4: direct index for structure ( uniform 4-component vector of int)
0:16 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:16 Constant:
0:16 3 (const uint)
0:16 fval4: direct index for structure (layout( offset=80) uniform 4-component vector of float)
0:16 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:16 fval4: direct index for structure ( uniform 4-component vector of float)
0:16 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:16 Constant:
0:16 5 (const uint)
0:18 mod ( temp float)
0:18 Convert bool to float ( temp float)
0:18 bval: direct index for structure (layout( offset=0) uniform bool)
0:18 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:18 bval: direct index for structure ( uniform bool)
0:18 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:18 Constant:
0:18 0 (const uint)
0:18 fval: direct index for structure (layout( offset=64) uniform float)
0:18 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:18 fval: direct index for structure ( uniform float)
0:18 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:18 Constant:
0:18 4 (const uint)
0:19 mod ( temp 4-component vector of float)
0:19 Convert bool to float ( temp 4-component vector of float)
0:19 bval4: direct index for structure (layout( offset=16) uniform 4-component vector of bool)
0:19 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:19 bval4: direct index for structure ( uniform 4-component vector of bool)
0:19 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:19 Constant:
0:19 1 (const uint)
0:19 fval4: direct index for structure (layout( offset=80) uniform 4-component vector of float)
0:19 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:19 fval4: direct index for structure ( uniform 4-component vector of float)
0:19 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:19 Constant:
0:19 5 (const uint)
0:21 Sequence
@ -53,8 +53,8 @@ gl_FragCoord origin is upper left
0:22 mod second child into first child ( temp int)
0:22 'l_int' ( temp int)
0:22 Convert float to int ( temp int)
0:22 fval: direct index for structure (layout( offset=64) uniform float)
0:22 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:22 fval: direct index for structure ( uniform float)
0:22 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:22 Constant:
0:22 4 (const uint)
0:25 move second child to first child ( temp 4-component vector of float)
@ -80,8 +80,8 @@ gl_FragCoord origin is upper left
0:14 Constant:
0:14 0 (const int)
0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
Linked fragment stage:
@ -95,42 +95,42 @@ gl_FragCoord origin is upper left
0:? Sequence
0:15 mod ( temp float)
0:15 Convert int to float ( temp float)
0:15 ival: direct index for structure (layout( offset=32) uniform int)
0:15 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:15 ival: direct index for structure ( uniform int)
0:15 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:15 Constant:
0:15 2 (const uint)
0:15 fval: direct index for structure (layout( offset=64) uniform float)
0:15 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:15 fval: direct index for structure ( uniform float)
0:15 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:15 Constant:
0:15 4 (const uint)
0:16 mod ( temp 4-component vector of float)
0:16 Convert int to float ( temp 4-component vector of float)
0:16 ival4: direct index for structure (layout( offset=48) uniform 4-component vector of int)
0:16 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:16 ival4: direct index for structure ( uniform 4-component vector of int)
0:16 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:16 Constant:
0:16 3 (const uint)
0:16 fval4: direct index for structure (layout( offset=80) uniform 4-component vector of float)
0:16 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:16 fval4: direct index for structure ( uniform 4-component vector of float)
0:16 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:16 Constant:
0:16 5 (const uint)
0:18 mod ( temp float)
0:18 Convert bool to float ( temp float)
0:18 bval: direct index for structure (layout( offset=0) uniform bool)
0:18 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:18 bval: direct index for structure ( uniform bool)
0:18 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:18 Constant:
0:18 0 (const uint)
0:18 fval: direct index for structure (layout( offset=64) uniform float)
0:18 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:18 fval: direct index for structure ( uniform float)
0:18 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:18 Constant:
0:18 4 (const uint)
0:19 mod ( temp 4-component vector of float)
0:19 Convert bool to float ( temp 4-component vector of float)
0:19 bval4: direct index for structure (layout( offset=16) uniform 4-component vector of bool)
0:19 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:19 bval4: direct index for structure ( uniform 4-component vector of bool)
0:19 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:19 Constant:
0:19 1 (const uint)
0:19 fval4: direct index for structure (layout( offset=80) uniform 4-component vector of float)
0:19 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:19 fval4: direct index for structure ( uniform 4-component vector of float)
0:19 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:19 Constant:
0:19 5 (const uint)
0:21 Sequence
@ -141,8 +141,8 @@ gl_FragCoord origin is upper left
0:22 mod second child into first child ( temp int)
0:22 'l_int' ( temp int)
0:22 Convert float to int ( temp int)
0:22 fval: direct index for structure (layout( offset=64) uniform float)
0:22 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
0:22 fval: direct index for structure ( uniform float)
0:22 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:22 Constant:
0:22 4 (const uint)
0:25 move second child to first child ( temp 4-component vector of float)
@ -168,8 +168,8 @@ gl_FragCoord origin is upper left
0:14 Constant:
0:14 0 (const int)
0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform bool bval, uniform 4-component vector of bool bval4, uniform int ival, uniform 4-component vector of int ival4, uniform float fval, uniform 4-component vector of float fval4})
0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform bool bval, layout( offset=16) uniform 4-component vector of bool bval4, layout( offset=32) uniform int ival, layout( offset=48) uniform 4-component vector of int ival4, layout( offset=64) uniform float fval, layout( offset=80) uniform 4-component vector of float fval4})
// Module Version 10000
// Generated by (magic number): 80001