
Fix the error message for when an erroneous HLSL constructor statement is detected. Prior to this change, such error messages would not show correct file path and line number information. Additionally, update test data to account for updated error messages.
377 lines
20 KiB
Plaintext
377 lines
20 KiB
Plaintext
hlsl.partialFlattenLocal.vert
|
|
WARNING: AST will form illegal SPIR-V; need to transform to legalize
|
|
Shader version: 500
|
|
0:? Sequence
|
|
0:12 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
|
0:12 Function Parameters:
|
|
0:12 'pos' ( in 4-component vector of float)
|
|
0:? Sequence
|
|
0:14 move second child to first child ( temp texture2D)
|
|
0:14 tex: direct index for structure ( temp texture2D)
|
|
0:14 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:14 Constant:
|
|
0:14 0 (const int)
|
|
0:14 'tex' ( uniform texture2D)
|
|
0:15 move second child to first child ( temp 3-component vector of float)
|
|
0:15 direct index ( temp 3-component vector of float)
|
|
0:15 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:15 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:15 Constant:
|
|
0:15 1 (const int)
|
|
0:15 Constant:
|
|
0:15 0 (const int)
|
|
0:15 Constant:
|
|
0:15 0.000000
|
|
0:15 0.000000
|
|
0:15 0.000000
|
|
0:16 move second child to first child ( temp 2-component vector of float)
|
|
0:16 direct index ( temp 2-component vector of float)
|
|
0:16 uv: direct index for structure ( temp 2-element array of 2-component vector of float)
|
|
0:16 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:16 Constant:
|
|
0:16 2 (const int)
|
|
0:16 Constant:
|
|
0:16 0 (const int)
|
|
0:16 Constant:
|
|
0:16 0.000000
|
|
0:16 1.000000
|
|
0:17 move second child to first child ( temp float)
|
|
0:17 x: direct index for structure ( temp float)
|
|
0:17 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:17 Constant:
|
|
0:17 3 (const int)
|
|
0:17 Constant:
|
|
0:17 1.000000
|
|
0:18 move second child to first child ( temp int)
|
|
0:18 n: direct index for structure ( temp int)
|
|
0:18 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:18 Constant:
|
|
0:18 4 (const int)
|
|
0:18 Constant:
|
|
0:18 3 (const int)
|
|
0:20 Sequence
|
|
0:20 move second child to first child ( temp int)
|
|
0:20 'i' ( temp int)
|
|
0:20 Constant:
|
|
0:20 0 (const int)
|
|
0:20 Loop with condition tested first
|
|
0:20 Loop Condition
|
|
0:20 Compare Less Than ( temp bool)
|
|
0:20 'i' ( temp int)
|
|
0:20 Constant:
|
|
0:20 1 (const int)
|
|
0:20 Loop Body
|
|
0:? Sequence
|
|
0:21 add second child into first child ( temp 2-component vector of float)
|
|
0:21 vector swizzle ( temp 2-component vector of float)
|
|
0:21 indirect index ( temp 3-component vector of float)
|
|
0:21 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:21 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:21 Constant:
|
|
0:21 1 (const int)
|
|
0:21 'i' ( temp int)
|
|
0:21 Sequence
|
|
0:21 Constant:
|
|
0:21 0 (const int)
|
|
0:21 Constant:
|
|
0:21 1 (const int)
|
|
0:21 indirect index ( temp 2-component vector of float)
|
|
0:21 uv: direct index for structure ( temp 2-element array of 2-component vector of float)
|
|
0:21 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:21 Constant:
|
|
0:21 2 (const int)
|
|
0:21 'i' ( temp int)
|
|
0:20 Loop Terminal Expression
|
|
0:20 Pre-Increment ( temp int)
|
|
0:20 'i' ( temp int)
|
|
0:24 Sequence
|
|
0:24 move second child to first child ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:24 'packed2' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:24 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:26 Branch: Return with expression
|
|
0:26 add ( temp 4-component vector of float)
|
|
0:26 'pos' ( in 4-component vector of float)
|
|
0:26 Construct vec4 ( temp 4-component vector of float)
|
|
0:26 direct index ( temp 3-component vector of float)
|
|
0:26 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:26 'packed2' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:26 Constant:
|
|
0:26 1 (const int)
|
|
0:26 Constant:
|
|
0:26 0 (const int)
|
|
0:26 Constant:
|
|
0:26 0.000000
|
|
0:12 Function Definition: main( ( temp void)
|
|
0:12 Function Parameters:
|
|
0:? Sequence
|
|
0:12 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'pos' ( temp 4-component vector of float)
|
|
0:? 'pos' (layout( location=0) in 4-component vector of float)
|
|
0:12 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' ( out 4-component vector of float Position)
|
|
0:12 Function Call: @main(vf4; ( temp 4-component vector of float)
|
|
0:? 'pos' ( temp 4-component vector of float)
|
|
0:? Linker Objects
|
|
0:? 'tex' ( uniform texture2D)
|
|
0:? '@entryPointOutput' ( out 4-component vector of float Position)
|
|
0:? 'pos' (layout( location=0) in 4-component vector of float)
|
|
|
|
|
|
Linked vertex stage:
|
|
|
|
|
|
Shader version: 500
|
|
0:? Sequence
|
|
0:12 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
|
0:12 Function Parameters:
|
|
0:12 'pos' ( in 4-component vector of float)
|
|
0:? Sequence
|
|
0:14 move second child to first child ( temp texture2D)
|
|
0:14 tex: direct index for structure ( temp texture2D)
|
|
0:14 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:14 Constant:
|
|
0:14 0 (const int)
|
|
0:14 'tex' ( uniform texture2D)
|
|
0:15 move second child to first child ( temp 3-component vector of float)
|
|
0:15 direct index ( temp 3-component vector of float)
|
|
0:15 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:15 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:15 Constant:
|
|
0:15 1 (const int)
|
|
0:15 Constant:
|
|
0:15 0 (const int)
|
|
0:15 Constant:
|
|
0:15 0.000000
|
|
0:15 0.000000
|
|
0:15 0.000000
|
|
0:16 move second child to first child ( temp 2-component vector of float)
|
|
0:16 direct index ( temp 2-component vector of float)
|
|
0:16 uv: direct index for structure ( temp 2-element array of 2-component vector of float)
|
|
0:16 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:16 Constant:
|
|
0:16 2 (const int)
|
|
0:16 Constant:
|
|
0:16 0 (const int)
|
|
0:16 Constant:
|
|
0:16 0.000000
|
|
0:16 1.000000
|
|
0:17 move second child to first child ( temp float)
|
|
0:17 x: direct index for structure ( temp float)
|
|
0:17 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:17 Constant:
|
|
0:17 3 (const int)
|
|
0:17 Constant:
|
|
0:17 1.000000
|
|
0:18 move second child to first child ( temp int)
|
|
0:18 n: direct index for structure ( temp int)
|
|
0:18 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:18 Constant:
|
|
0:18 4 (const int)
|
|
0:18 Constant:
|
|
0:18 3 (const int)
|
|
0:20 Sequence
|
|
0:20 move second child to first child ( temp int)
|
|
0:20 'i' ( temp int)
|
|
0:20 Constant:
|
|
0:20 0 (const int)
|
|
0:20 Loop with condition tested first
|
|
0:20 Loop Condition
|
|
0:20 Compare Less Than ( temp bool)
|
|
0:20 'i' ( temp int)
|
|
0:20 Constant:
|
|
0:20 1 (const int)
|
|
0:20 Loop Body
|
|
0:? Sequence
|
|
0:21 add second child into first child ( temp 2-component vector of float)
|
|
0:21 vector swizzle ( temp 2-component vector of float)
|
|
0:21 indirect index ( temp 3-component vector of float)
|
|
0:21 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:21 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:21 Constant:
|
|
0:21 1 (const int)
|
|
0:21 'i' ( temp int)
|
|
0:21 Sequence
|
|
0:21 Constant:
|
|
0:21 0 (const int)
|
|
0:21 Constant:
|
|
0:21 1 (const int)
|
|
0:21 indirect index ( temp 2-component vector of float)
|
|
0:21 uv: direct index for structure ( temp 2-element array of 2-component vector of float)
|
|
0:21 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:21 Constant:
|
|
0:21 2 (const int)
|
|
0:21 'i' ( temp int)
|
|
0:20 Loop Terminal Expression
|
|
0:20 Pre-Increment ( temp int)
|
|
0:20 'i' ( temp int)
|
|
0:24 Sequence
|
|
0:24 move second child to first child ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:24 'packed2' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:24 'packed' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:26 Branch: Return with expression
|
|
0:26 add ( temp 4-component vector of float)
|
|
0:26 'pos' ( in 4-component vector of float)
|
|
0:26 Construct vec4 ( temp 4-component vector of float)
|
|
0:26 direct index ( temp 3-component vector of float)
|
|
0:26 pos: direct index for structure ( temp 3-element array of 3-component vector of float)
|
|
0:26 'packed2' ( temp structure{ temp texture2D tex, temp 3-element array of 3-component vector of float pos, temp 2-element array of 2-component vector of float uv, temp float x, temp int n})
|
|
0:26 Constant:
|
|
0:26 1 (const int)
|
|
0:26 Constant:
|
|
0:26 0 (const int)
|
|
0:26 Constant:
|
|
0:26 0.000000
|
|
0:12 Function Definition: main( ( temp void)
|
|
0:12 Function Parameters:
|
|
0:? Sequence
|
|
0:12 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'pos' ( temp 4-component vector of float)
|
|
0:? 'pos' (layout( location=0) in 4-component vector of float)
|
|
0:12 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' ( out 4-component vector of float Position)
|
|
0:12 Function Call: @main(vf4; ( temp 4-component vector of float)
|
|
0:? 'pos' ( temp 4-component vector of float)
|
|
0:? Linker Objects
|
|
0:? 'tex' ( uniform texture2D)
|
|
0:? '@entryPointOutput' ( out 4-component vector of float Position)
|
|
0:? 'pos' (layout( location=0) in 4-component vector of float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000a
|
|
// Id's are bound by 90
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Vertex 4 "main" 83 86
|
|
Source HLSL 500
|
|
Name 4 "main"
|
|
Name 11 "@main(vf4;"
|
|
Name 10 "pos"
|
|
Name 22 "Packed"
|
|
MemberName 22(Packed) 0 "tex"
|
|
MemberName 22(Packed) 1 "pos"
|
|
MemberName 22(Packed) 2 "uv"
|
|
MemberName 22(Packed) 3 "x"
|
|
MemberName 22(Packed) 4 "n"
|
|
Name 24 "packed"
|
|
Name 27 "tex"
|
|
Name 47 "i"
|
|
Name 69 "packed2"
|
|
Name 81 "pos"
|
|
Name 83 "pos"
|
|
Name 86 "@entryPointOutput"
|
|
Name 87 "param"
|
|
Decorate 27(tex) DescriptorSet 0
|
|
Decorate 27(tex) Binding 0
|
|
Decorate 83(pos) Location 0
|
|
Decorate 86(@entryPointOutput) BuiltIn Position
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypePointer Function 7(fvec4)
|
|
9: TypeFunction 7(fvec4) 8(ptr)
|
|
13: TypeImage 6(float) 2D sampled format:Unknown
|
|
14: TypeVector 6(float) 3
|
|
15: TypeInt 32 0
|
|
16: 15(int) Constant 3
|
|
17: TypeArray 14(fvec3) 16
|
|
18: TypeVector 6(float) 2
|
|
19: 15(int) Constant 2
|
|
20: TypeArray 18(fvec2) 19
|
|
21: TypeInt 32 1
|
|
22(Packed): TypeStruct 13 17 20 6(float) 21(int)
|
|
23: TypePointer Function 22(Packed)
|
|
25: 21(int) Constant 0
|
|
26: TypePointer UniformConstant 13
|
|
27(tex): 26(ptr) Variable UniformConstant
|
|
29: TypePointer Function 13
|
|
31: 21(int) Constant 1
|
|
32: 6(float) Constant 0
|
|
33: 14(fvec3) ConstantComposite 32 32 32
|
|
34: TypePointer Function 14(fvec3)
|
|
36: 21(int) Constant 2
|
|
37: 6(float) Constant 1065353216
|
|
38: 18(fvec2) ConstantComposite 32 37
|
|
39: TypePointer Function 18(fvec2)
|
|
41: 21(int) Constant 3
|
|
42: TypePointer Function 6(float)
|
|
44: 21(int) Constant 4
|
|
45: TypePointer Function 21(int)
|
|
54: TypeBool
|
|
82: TypePointer Input 7(fvec4)
|
|
83(pos): 82(ptr) Variable Input
|
|
85: TypePointer Output 7(fvec4)
|
|
86(@entryPointOutput): 85(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
81(pos): 8(ptr) Variable Function
|
|
87(param): 8(ptr) Variable Function
|
|
84: 7(fvec4) Load 83(pos)
|
|
Store 81(pos) 84
|
|
88: 7(fvec4) Load 81(pos)
|
|
Store 87(param) 88
|
|
89: 7(fvec4) FunctionCall 11(@main(vf4;) 87(param)
|
|
Store 86(@entryPointOutput) 89
|
|
Return
|
|
FunctionEnd
|
|
11(@main(vf4;): 7(fvec4) Function None 9
|
|
10(pos): 8(ptr) FunctionParameter
|
|
12: Label
|
|
24(packed): 23(ptr) Variable Function
|
|
47(i): 45(ptr) Variable Function
|
|
69(packed2): 23(ptr) Variable Function
|
|
28: 13 Load 27(tex)
|
|
30: 29(ptr) AccessChain 24(packed) 25
|
|
Store 30 28
|
|
35: 34(ptr) AccessChain 24(packed) 31 25
|
|
Store 35 33
|
|
40: 39(ptr) AccessChain 24(packed) 36 25
|
|
Store 40 38
|
|
43: 42(ptr) AccessChain 24(packed) 41
|
|
Store 43 37
|
|
46: 45(ptr) AccessChain 24(packed) 44
|
|
Store 46 41
|
|
Store 47(i) 25
|
|
Branch 48
|
|
48: Label
|
|
LoopMerge 50 51 None
|
|
Branch 52
|
|
52: Label
|
|
53: 21(int) Load 47(i)
|
|
55: 54(bool) SLessThan 53 31
|
|
BranchConditional 55 49 50
|
|
49: Label
|
|
56: 21(int) Load 47(i)
|
|
57: 21(int) Load 47(i)
|
|
58: 39(ptr) AccessChain 24(packed) 36 57
|
|
59: 18(fvec2) Load 58
|
|
60: 34(ptr) AccessChain 24(packed) 31 56
|
|
61: 14(fvec3) Load 60
|
|
62: 18(fvec2) VectorShuffle 61 61 0 1
|
|
63: 18(fvec2) FAdd 62 59
|
|
64: 34(ptr) AccessChain 24(packed) 31 56
|
|
65: 14(fvec3) Load 64
|
|
66: 14(fvec3) VectorShuffle 65 63 3 4 2
|
|
Store 64 66
|
|
Branch 51
|
|
51: Label
|
|
67: 21(int) Load 47(i)
|
|
68: 21(int) IAdd 67 31
|
|
Store 47(i) 68
|
|
Branch 48
|
|
50: Label
|
|
70: 22(Packed) Load 24(packed)
|
|
Store 69(packed2) 70
|
|
71: 7(fvec4) Load 10(pos)
|
|
72: 34(ptr) AccessChain 69(packed2) 31 25
|
|
73: 14(fvec3) Load 72
|
|
74: 6(float) CompositeExtract 73 0
|
|
75: 6(float) CompositeExtract 73 1
|
|
76: 6(float) CompositeExtract 73 2
|
|
77: 7(fvec4) CompositeConstruct 74 75 76 32
|
|
78: 7(fvec4) FAdd 71 77
|
|
ReturnValue 78
|
|
FunctionEnd
|