blob: 5fef9599d195dde337067fec8de28dfbdb98a619 [file] [log] [blame]
hlsl.struct.frag
WARNING: 0:26: 'register' : ignoring shader_profile
WARNING: 0:27: 'register' : ignoring shader_profile
WARNING: 0:30: 'register' : ignoring shader_profile
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:34 Function Definition: PixelShaderFunction(vf4;struct-IN_S-vf4-b1-vf1-vf2-b1-b1-b1-vf41; (temp 4-component vector of float)
0:34 Function Parameters:
0:34 'input' (layout(location=0 ) in 4-component vector of float)
0:34 's' (in structure{temp 4-component vector of float a, temp bool b, temp 1-component vector of float c, temp 2-component vector of float d, temp bool ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float ff4})
0:? Sequence
0:39 Compare Equal (temp bool)
0:39 's3' (temp structure{temp 3-component vector of bool b3})
0:39 's3' (temp structure{temp 3-component vector of bool b3})
0:40 move second child to first child (temp 4-component vector of float)
0:40 i: direct index for structure (temp 4-component vector of float)
0:40 's2' (global structure{temp 4-component vector of float i})
0:40 Constant:
0:40 0 (const int)
0:? 'ff4' (layout(location=7 binding=0 offset=4 ) in 4-component vector of float)
0:42 Sequence
0:42 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:42 'input' (layout(location=0 ) in 4-component vector of float)
0:42 Branch: Return
0:? Linker Objects
0:? 's2' (global structure{temp 4-component vector of float i})
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d} s1, layout(binding=5 offset=1620 ) uniform float ff5, layout(binding=8 offset=1636 ) uniform float ff6})
0:? 'input' (layout(location=0 ) in 4-component vector of float)
0:? 'a' (layout(location=1 ) smooth in 4-component vector of float)
0:? 'b' (layout(location=2 ) flat in bool)
0:? 'c' (layout(location=3 ) centroid noperspective in 1-component vector of float)
0:? 'd' (layout(location=4 ) centroid sample in 2-component vector of float)
0:? 'ff1' (in bool Face)
0:? 'ff2' (layout(location=5 offset=4 ) in bool)
0:? 'ff3' (layout(location=6 binding=0 offset=4 ) in bool)
0:? 'ff4' (layout(location=7 binding=0 offset=4 ) in 4-component vector of float)
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:34 Function Definition: PixelShaderFunction(vf4;struct-IN_S-vf4-b1-vf1-vf2-b1-b1-b1-vf41; (temp 4-component vector of float)
0:34 Function Parameters:
0:34 'input' (layout(location=0 ) in 4-component vector of float)
0:34 's' (in structure{temp 4-component vector of float a, temp bool b, temp 1-component vector of float c, temp 2-component vector of float d, temp bool ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float ff4})
0:? Sequence
0:39 Compare Equal (temp bool)
0:39 's3' (temp structure{temp 3-component vector of bool b3})
0:39 's3' (temp structure{temp 3-component vector of bool b3})
0:40 move second child to first child (temp 4-component vector of float)
0:40 i: direct index for structure (temp 4-component vector of float)
0:40 's2' (global structure{temp 4-component vector of float i})
0:40 Constant:
0:40 0 (const int)
0:? 'ff4' (layout(location=7 binding=0 offset=4 ) in 4-component vector of float)
0:42 Sequence
0:42 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:42 'input' (layout(location=0 ) in 4-component vector of float)
0:42 Branch: Return
0:? Linker Objects
0:? 's2' (global structure{temp 4-component vector of float i})
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d} s1, layout(binding=5 offset=1620 ) uniform float ff5, layout(binding=8 offset=1636 ) uniform float ff6})
0:? 'input' (layout(location=0 ) in 4-component vector of float)
0:? 'a' (layout(location=1 ) smooth in 4-component vector of float)
0:? 'b' (layout(location=2 ) flat in bool)
0:? 'c' (layout(location=3 ) centroid noperspective in 1-component vector of float)
0:? 'd' (layout(location=4 ) centroid sample in 2-component vector of float)
0:? 'ff1' (in bool Face)
0:? 'ff2' (layout(location=5 offset=4 ) in bool)
0:? 'ff3' (layout(location=6 binding=0 offset=4 ) in bool)
0:? 'ff4' (layout(location=7 binding=0 offset=4 ) in 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 49
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 25 30 31 38 40 42 45 46 47 48
ExecutionMode 4 OriginUpperLeft
Name 4 "PixelShaderFunction"
Name 8 "FS"
MemberName 8(FS) 0 "b3"
Name 10 "s3"
Name 19 ""
MemberName 19 0 "i"
Name 21 "s2"
Name 25 "ff4"
Name 30 "@entryPointOutput"
Name 31 "input"
Name 34 "myS"
MemberName 34(myS) 0 "b"
MemberName 34(myS) 1 "c"
MemberName 34(myS) 2 "a"
MemberName 34(myS) 3 "d"
Name 35 "$Global"
MemberName 35($Global) 0 "s1"
MemberName 35($Global) 1 "ff5"
MemberName 35($Global) 2 "ff6"
Name 37 ""
Name 38 "a"
Name 40 "b"
Name 42 "c"
Name 45 "d"
Name 46 "ff1"
Name 47 "ff2"
Name 48 "ff3"
Decorate 25(ff4) Offset 4
Decorate 25(ff4) Location 7
Decorate 25(ff4) Binding 0
Decorate 30(@entryPointOutput) Location 0
Decorate 31(input) Location 0
Decorate 35($Global) Block
Decorate 37 DescriptorSet 0
Decorate 38(a) Location 1
Decorate 40(b) Flat
Decorate 40(b) Location 2
Decorate 42(c) NoPerspective
Decorate 42(c) Centroid
Decorate 42(c) Location 3
Decorate 45(d) Centroid
Decorate 45(d) Location 4
Decorate 46(ff1) BuiltIn FrontFacing
Decorate 47(ff2) Offset 4
Decorate 47(ff2) Location 5
Decorate 48(ff3) Offset 4
Decorate 48(ff3) Location 6
Decorate 48(ff3) Binding 0
2: TypeVoid
3: TypeFunction 2
6: TypeBool
7: TypeVector 6(bool) 3
8(FS): TypeStruct 7(bvec3)
9: TypePointer Function 8(FS)
17: TypeFloat 32
18: TypeVector 17(float) 4
19: TypeStruct 18(fvec4)
20: TypePointer Private 19(struct)
21(s2): 20(ptr) Variable Private
22: TypeInt 32 1
23: 22(int) Constant 0
24: TypePointer Input 18(fvec4)
25(ff4): 24(ptr) Variable Input
27: TypePointer Private 18(fvec4)
29: TypePointer Output 18(fvec4)
30(@entryPointOutput): 29(ptr) Variable Output
31(input): 24(ptr) Variable Input
34(myS): TypeStruct 6(bool) 6(bool) 18(fvec4) 18(fvec4)
35($Global): TypeStruct 34(myS) 17(float) 17(float)
36: TypePointer Uniform 35($Global)
37: 36(ptr) Variable Uniform
38(a): 24(ptr) Variable Input
39: TypePointer Input 6(bool)
40(b): 39(ptr) Variable Input
41: TypePointer Input 17(float)
42(c): 41(ptr) Variable Input
43: TypeVector 17(float) 2
44: TypePointer Input 43(fvec2)
45(d): 44(ptr) Variable Input
46(ff1): 39(ptr) Variable Input
47(ff2): 39(ptr) Variable Input
48(ff3): 39(ptr) Variable Input
4(PixelShaderFunction): 2 Function None 3
5: Label
10(s3): 9(ptr) Variable Function
11: 8(FS) Load 10(s3)
12: 8(FS) Load 10(s3)
13: 7(bvec3) CompositeExtract 11 0
14: 7(bvec3) CompositeExtract 12 0
15: 7(bvec3) LogicalEqual 13 14
16: 6(bool) All 15
26: 18(fvec4) Load 25(ff4)
28: 27(ptr) AccessChain 21(s2) 23
Store 28 26
32: 18(fvec4) Load 31(input)
Store 30(@entryPointOutput) 32
Return
FunctionEnd