
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.
532 lines
23 KiB
Plaintext
532 lines
23 KiB
Plaintext
hlsl.init2.frag
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:3 Function Definition: Test1( ( temp void)
|
|
0:3 Function Parameters:
|
|
0:? Sequence
|
|
0:5 Sequence
|
|
0:5 move second child to first child ( temp structure{ temp 2-component vector of float a})
|
|
0:5 'test1' ( temp structure{ temp 2-component vector of float a})
|
|
0:5 Constant:
|
|
0:5 1.000000
|
|
0:5 2.000000
|
|
0:9 Sequence
|
|
0:9 move second child to first child ( temp structure{ temp 2-component vector of float a})
|
|
0:9 'test2' ( temp structure{ temp 2-component vector of float a})
|
|
0:9 Constant:
|
|
0:9 3.000000
|
|
0:9 4.000000
|
|
0:17 Sequence
|
|
0:17 move second child to first child ( temp float)
|
|
0:17 'test4' ( temp float)
|
|
0:17 Constant:
|
|
0:17 7.000000
|
|
0:20 Sequence
|
|
0:20 move second child to first child ( temp structure{ temp float a, temp float b, temp float c})
|
|
0:20 'test5' ( temp structure{ temp float a, temp float b, temp float c})
|
|
0:20 Constant:
|
|
0:20 8.000000
|
|
0:20 9.000000
|
|
0:20 10.000000
|
|
0:22 Constant:
|
|
0:22 10.000000
|
|
0:25 Sequence
|
|
0:25 move second child to first child ( temp float)
|
|
0:25 'n' ( temp float)
|
|
0:25 Constant:
|
|
0:25 0.000000
|
|
0:26 Sequence
|
|
0:26 move second child to first child ( temp 8-element array of 3-component vector of float)
|
|
0:26 'a' ( const (read only) 8-element array of 3-component vector of float)
|
|
0:26 Construct vec3 ( temp 8-element array of 3-component vector of float)
|
|
0:27 vector-scale ( temp 3-component vector of float)
|
|
0:27 Constant:
|
|
0:27 0.577350
|
|
0:27 0.577350
|
|
0:27 0.577350
|
|
0:27 add second child into first child ( temp float)
|
|
0:27 'n' ( temp float)
|
|
0:27 Constant:
|
|
0:27 1.000000
|
|
0:28 vector-scale ( temp 3-component vector of float)
|
|
0:28 Constant:
|
|
0:28 -0.577350
|
|
0:28 -0.577350
|
|
0:28 -0.577350
|
|
0:28 add second child into first child ( temp float)
|
|
0:28 'n' ( temp float)
|
|
0:28 Constant:
|
|
0:28 1.000000
|
|
0:29 vector-scale ( temp 3-component vector of float)
|
|
0:29 Constant:
|
|
0:29 -0.577350
|
|
0:29 -0.577350
|
|
0:29 0.577350
|
|
0:29 add second child into first child ( temp float)
|
|
0:29 'n' ( temp float)
|
|
0:29 Constant:
|
|
0:29 1.000000
|
|
0:30 vector-scale ( temp 3-component vector of float)
|
|
0:30 Constant:
|
|
0:30 -0.577350
|
|
0:30 0.577350
|
|
0:30 -0.577350
|
|
0:30 add second child into first child ( temp float)
|
|
0:30 'n' ( temp float)
|
|
0:30 Constant:
|
|
0:30 1.000000
|
|
0:31 vector-scale ( temp 3-component vector of float)
|
|
0:31 Constant:
|
|
0:31 -0.577350
|
|
0:31 0.577350
|
|
0:31 0.577350
|
|
0:31 add second child into first child ( temp float)
|
|
0:31 'n' ( temp float)
|
|
0:31 Constant:
|
|
0:31 1.000000
|
|
0:32 vector-scale ( temp 3-component vector of float)
|
|
0:32 Constant:
|
|
0:32 0.577350
|
|
0:32 -0.577350
|
|
0:32 -0.577350
|
|
0:32 add second child into first child ( temp float)
|
|
0:32 'n' ( temp float)
|
|
0:32 Constant:
|
|
0:32 1.000000
|
|
0:33 vector-scale ( temp 3-component vector of float)
|
|
0:33 Constant:
|
|
0:33 0.577350
|
|
0:33 -0.577350
|
|
0:33 0.577350
|
|
0:33 add second child into first child ( temp float)
|
|
0:33 'n' ( temp float)
|
|
0:33 Constant:
|
|
0:33 1.000000
|
|
0:34 vector-scale ( temp 3-component vector of float)
|
|
0:34 Constant:
|
|
0:34 0.577350
|
|
0:34 0.577350
|
|
0:34 -0.577350
|
|
0:34 add second child into first child ( temp float)
|
|
0:34 'n' ( temp float)
|
|
0:34 Constant:
|
|
0:34 1.000000
|
|
0:36 Sequence
|
|
0:36 move second child to first child ( temp structure{ temp 3-component vector of float a})
|
|
0:36 'oneNonConst' ( const (read only) structure{ temp 3-component vector of float a})
|
|
0:36 Construct structure ( temp structure{ temp 3-component vector of float a})
|
|
0:36 vector-scale ( temp 3-component vector of float)
|
|
0:36 Constant:
|
|
0:36 -0.577350
|
|
0:36 0.577350
|
|
0:36 0.577350
|
|
0:36 add second child into first child ( temp float)
|
|
0:36 'n' ( temp float)
|
|
0:36 Constant:
|
|
0:36 1.000000
|
|
0:38 Sequence
|
|
0:38 move second child to first child ( temp structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 'twoNonConst' ( const (read only) structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 Construct structure ( temp structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 vector-scale ( temp 3-component vector of float)
|
|
0:38 Constant:
|
|
0:38 -0.577350
|
|
0:38 0.577350
|
|
0:38 0.577350
|
|
0:38 add second child into first child ( temp float)
|
|
0:38 'n' ( temp float)
|
|
0:38 Constant:
|
|
0:38 1.000000
|
|
0:39 vector-scale ( temp 3-component vector of float)
|
|
0:39 Constant:
|
|
0:39 -0.577350
|
|
0:39 0.577350
|
|
0:39 0.577350
|
|
0:39 add second child into first child ( temp float)
|
|
0:39 'n' ( temp float)
|
|
0:39 Constant:
|
|
0:39 1.000000
|
|
0:45 Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Function Parameters:
|
|
0:? Sequence
|
|
0:46 Function Call: Test1( ( temp void)
|
|
0:49 move second child to first child ( temp 4-component vector of float)
|
|
0:49 color: direct index for structure ( temp 4-component vector of float)
|
|
0:49 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:49 Constant:
|
|
0:49 0 (const int)
|
|
0:49 Constant:
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:50 Branch: Return with expression
|
|
0:50 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Function Definition: main( ( temp void)
|
|
0:45 Function Parameters:
|
|
0:? Sequence
|
|
0:45 Sequence
|
|
0:45 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
|
|
0:45 color: direct index for structure ( temp 4-component vector of float)
|
|
0:45 Function Call: @main( ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Constant:
|
|
0:45 0 (const int)
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:3 Function Definition: Test1( ( temp void)
|
|
0:3 Function Parameters:
|
|
0:? Sequence
|
|
0:5 Sequence
|
|
0:5 move second child to first child ( temp structure{ temp 2-component vector of float a})
|
|
0:5 'test1' ( temp structure{ temp 2-component vector of float a})
|
|
0:5 Constant:
|
|
0:5 1.000000
|
|
0:5 2.000000
|
|
0:9 Sequence
|
|
0:9 move second child to first child ( temp structure{ temp 2-component vector of float a})
|
|
0:9 'test2' ( temp structure{ temp 2-component vector of float a})
|
|
0:9 Constant:
|
|
0:9 3.000000
|
|
0:9 4.000000
|
|
0:17 Sequence
|
|
0:17 move second child to first child ( temp float)
|
|
0:17 'test4' ( temp float)
|
|
0:17 Constant:
|
|
0:17 7.000000
|
|
0:20 Sequence
|
|
0:20 move second child to first child ( temp structure{ temp float a, temp float b, temp float c})
|
|
0:20 'test5' ( temp structure{ temp float a, temp float b, temp float c})
|
|
0:20 Constant:
|
|
0:20 8.000000
|
|
0:20 9.000000
|
|
0:20 10.000000
|
|
0:22 Constant:
|
|
0:22 10.000000
|
|
0:25 Sequence
|
|
0:25 move second child to first child ( temp float)
|
|
0:25 'n' ( temp float)
|
|
0:25 Constant:
|
|
0:25 0.000000
|
|
0:26 Sequence
|
|
0:26 move second child to first child ( temp 8-element array of 3-component vector of float)
|
|
0:26 'a' ( const (read only) 8-element array of 3-component vector of float)
|
|
0:26 Construct vec3 ( temp 8-element array of 3-component vector of float)
|
|
0:27 vector-scale ( temp 3-component vector of float)
|
|
0:27 Constant:
|
|
0:27 0.577350
|
|
0:27 0.577350
|
|
0:27 0.577350
|
|
0:27 add second child into first child ( temp float)
|
|
0:27 'n' ( temp float)
|
|
0:27 Constant:
|
|
0:27 1.000000
|
|
0:28 vector-scale ( temp 3-component vector of float)
|
|
0:28 Constant:
|
|
0:28 -0.577350
|
|
0:28 -0.577350
|
|
0:28 -0.577350
|
|
0:28 add second child into first child ( temp float)
|
|
0:28 'n' ( temp float)
|
|
0:28 Constant:
|
|
0:28 1.000000
|
|
0:29 vector-scale ( temp 3-component vector of float)
|
|
0:29 Constant:
|
|
0:29 -0.577350
|
|
0:29 -0.577350
|
|
0:29 0.577350
|
|
0:29 add second child into first child ( temp float)
|
|
0:29 'n' ( temp float)
|
|
0:29 Constant:
|
|
0:29 1.000000
|
|
0:30 vector-scale ( temp 3-component vector of float)
|
|
0:30 Constant:
|
|
0:30 -0.577350
|
|
0:30 0.577350
|
|
0:30 -0.577350
|
|
0:30 add second child into first child ( temp float)
|
|
0:30 'n' ( temp float)
|
|
0:30 Constant:
|
|
0:30 1.000000
|
|
0:31 vector-scale ( temp 3-component vector of float)
|
|
0:31 Constant:
|
|
0:31 -0.577350
|
|
0:31 0.577350
|
|
0:31 0.577350
|
|
0:31 add second child into first child ( temp float)
|
|
0:31 'n' ( temp float)
|
|
0:31 Constant:
|
|
0:31 1.000000
|
|
0:32 vector-scale ( temp 3-component vector of float)
|
|
0:32 Constant:
|
|
0:32 0.577350
|
|
0:32 -0.577350
|
|
0:32 -0.577350
|
|
0:32 add second child into first child ( temp float)
|
|
0:32 'n' ( temp float)
|
|
0:32 Constant:
|
|
0:32 1.000000
|
|
0:33 vector-scale ( temp 3-component vector of float)
|
|
0:33 Constant:
|
|
0:33 0.577350
|
|
0:33 -0.577350
|
|
0:33 0.577350
|
|
0:33 add second child into first child ( temp float)
|
|
0:33 'n' ( temp float)
|
|
0:33 Constant:
|
|
0:33 1.000000
|
|
0:34 vector-scale ( temp 3-component vector of float)
|
|
0:34 Constant:
|
|
0:34 0.577350
|
|
0:34 0.577350
|
|
0:34 -0.577350
|
|
0:34 add second child into first child ( temp float)
|
|
0:34 'n' ( temp float)
|
|
0:34 Constant:
|
|
0:34 1.000000
|
|
0:36 Sequence
|
|
0:36 move second child to first child ( temp structure{ temp 3-component vector of float a})
|
|
0:36 'oneNonConst' ( const (read only) structure{ temp 3-component vector of float a})
|
|
0:36 Construct structure ( temp structure{ temp 3-component vector of float a})
|
|
0:36 vector-scale ( temp 3-component vector of float)
|
|
0:36 Constant:
|
|
0:36 -0.577350
|
|
0:36 0.577350
|
|
0:36 0.577350
|
|
0:36 add second child into first child ( temp float)
|
|
0:36 'n' ( temp float)
|
|
0:36 Constant:
|
|
0:36 1.000000
|
|
0:38 Sequence
|
|
0:38 move second child to first child ( temp structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 'twoNonConst' ( const (read only) structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 Construct structure ( temp structure{ temp 3-component vector of float a, temp 3-component vector of float b})
|
|
0:38 vector-scale ( temp 3-component vector of float)
|
|
0:38 Constant:
|
|
0:38 -0.577350
|
|
0:38 0.577350
|
|
0:38 0.577350
|
|
0:38 add second child into first child ( temp float)
|
|
0:38 'n' ( temp float)
|
|
0:38 Constant:
|
|
0:38 1.000000
|
|
0:39 vector-scale ( temp 3-component vector of float)
|
|
0:39 Constant:
|
|
0:39 -0.577350
|
|
0:39 0.577350
|
|
0:39 0.577350
|
|
0:39 add second child into first child ( temp float)
|
|
0:39 'n' ( temp float)
|
|
0:39 Constant:
|
|
0:39 1.000000
|
|
0:45 Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Function Parameters:
|
|
0:? Sequence
|
|
0:46 Function Call: Test1( ( temp void)
|
|
0:49 move second child to first child ( temp 4-component vector of float)
|
|
0:49 color: direct index for structure ( temp 4-component vector of float)
|
|
0:49 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:49 Constant:
|
|
0:49 0 (const int)
|
|
0:49 Constant:
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:49 1.000000
|
|
0:50 Branch: Return with expression
|
|
0:50 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Function Definition: main( ( temp void)
|
|
0:45 Function Parameters:
|
|
0:? Sequence
|
|
0:45 Sequence
|
|
0:45 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
|
|
0:45 color: direct index for structure ( temp 4-component vector of float)
|
|
0:45 Function Call: @main( ( temp structure{ temp 4-component vector of float color})
|
|
0:45 Constant:
|
|
0:45 0 (const int)
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000a
|
|
// Id's are bound by 112
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 109
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source HLSL 500
|
|
Name 4 "main"
|
|
Name 6 "Test1("
|
|
Name 10 "PS_OUTPUT"
|
|
MemberName 10(PS_OUTPUT) 0 "color"
|
|
Name 12 "@main("
|
|
Name 15 "mystruct"
|
|
MemberName 15(mystruct) 0 "a"
|
|
Name 17 "test1"
|
|
Name 22 "test2"
|
|
Name 28 "test4"
|
|
Name 30 "mystruct2"
|
|
MemberName 30(mystruct2) 0 "a"
|
|
MemberName 30(mystruct2) 1 "b"
|
|
MemberName 30(mystruct2) 2 "c"
|
|
Name 32 "test5"
|
|
Name 37 "n"
|
|
Name 44 "a"
|
|
Name 80 "one"
|
|
MemberName 80(one) 0 "a"
|
|
Name 82 "oneNonConst"
|
|
Name 87 "two"
|
|
MemberName 87(two) 0 "a"
|
|
MemberName 87(two) 1 "b"
|
|
Name 89 "twoNonConst"
|
|
Name 99 "ps_output"
|
|
Name 109 "@entryPointOutput.color"
|
|
Decorate 109(@entryPointOutput.color) Location 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
8: TypeFloat 32
|
|
9: TypeVector 8(float) 4
|
|
10(PS_OUTPUT): TypeStruct 9(fvec4)
|
|
11: TypeFunction 10(PS_OUTPUT)
|
|
14: TypeVector 8(float) 2
|
|
15(mystruct): TypeStruct 14(fvec2)
|
|
16: TypePointer Function 15(mystruct)
|
|
18: 8(float) Constant 1065353216
|
|
19: 8(float) Constant 1073741824
|
|
20: 14(fvec2) ConstantComposite 18 19
|
|
21:15(mystruct) ConstantComposite 20
|
|
23: 8(float) Constant 1077936128
|
|
24: 8(float) Constant 1082130432
|
|
25: 14(fvec2) ConstantComposite 23 24
|
|
26:15(mystruct) ConstantComposite 25
|
|
27: TypePointer Function 8(float)
|
|
29: 8(float) Constant 1088421888
|
|
30(mystruct2): TypeStruct 8(float) 8(float) 8(float)
|
|
31: TypePointer Function 30(mystruct2)
|
|
33: 8(float) Constant 1090519040
|
|
34: 8(float) Constant 1091567616
|
|
35: 8(float) Constant 1092616192
|
|
36:30(mystruct2) ConstantComposite 33 34 35
|
|
38: 8(float) Constant 0
|
|
39: TypeVector 8(float) 3
|
|
40: TypeInt 32 0
|
|
41: 40(int) Constant 8
|
|
42: TypeArray 39(fvec3) 41
|
|
43: TypePointer Function 42
|
|
45: 8(float) Constant 1058262330
|
|
46: 39(fvec3) ConstantComposite 45 45 45
|
|
50: 8(float) Constant 3205745978
|
|
51: 39(fvec3) ConstantComposite 50 50 50
|
|
55: 39(fvec3) ConstantComposite 50 50 45
|
|
59: 39(fvec3) ConstantComposite 50 45 50
|
|
63: 39(fvec3) ConstantComposite 50 45 45
|
|
67: 39(fvec3) ConstantComposite 45 50 50
|
|
71: 39(fvec3) ConstantComposite 45 50 45
|
|
75: 39(fvec3) ConstantComposite 45 45 50
|
|
80(one): TypeStruct 39(fvec3)
|
|
81: TypePointer Function 80(one)
|
|
87(two): TypeStruct 39(fvec3) 39(fvec3)
|
|
88: TypePointer Function 87(two)
|
|
98: TypePointer Function 10(PS_OUTPUT)
|
|
100: TypeInt 32 1
|
|
101: 100(int) Constant 0
|
|
102: 9(fvec4) ConstantComposite 18 18 18 18
|
|
103: TypePointer Function 9(fvec4)
|
|
108: TypePointer Output 9(fvec4)
|
|
109(@entryPointOutput.color): 108(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
110:10(PS_OUTPUT) FunctionCall 12(@main()
|
|
111: 9(fvec4) CompositeExtract 110 0
|
|
Store 109(@entryPointOutput.color) 111
|
|
Return
|
|
FunctionEnd
|
|
6(Test1(): 2 Function None 3
|
|
7: Label
|
|
17(test1): 16(ptr) Variable Function
|
|
22(test2): 16(ptr) Variable Function
|
|
28(test4): 27(ptr) Variable Function
|
|
32(test5): 31(ptr) Variable Function
|
|
37(n): 27(ptr) Variable Function
|
|
44(a): 43(ptr) Variable Function
|
|
82(oneNonConst): 81(ptr) Variable Function
|
|
89(twoNonConst): 88(ptr) Variable Function
|
|
Store 17(test1) 21
|
|
Store 22(test2) 26
|
|
Store 28(test4) 29
|
|
Store 32(test5) 36
|
|
Store 37(n) 38
|
|
47: 8(float) Load 37(n)
|
|
48: 8(float) FAdd 47 18
|
|
Store 37(n) 48
|
|
49: 39(fvec3) VectorTimesScalar 46 48
|
|
52: 8(float) Load 37(n)
|
|
53: 8(float) FAdd 52 18
|
|
Store 37(n) 53
|
|
54: 39(fvec3) VectorTimesScalar 51 53
|
|
56: 8(float) Load 37(n)
|
|
57: 8(float) FAdd 56 18
|
|
Store 37(n) 57
|
|
58: 39(fvec3) VectorTimesScalar 55 57
|
|
60: 8(float) Load 37(n)
|
|
61: 8(float) FAdd 60 18
|
|
Store 37(n) 61
|
|
62: 39(fvec3) VectorTimesScalar 59 61
|
|
64: 8(float) Load 37(n)
|
|
65: 8(float) FAdd 64 18
|
|
Store 37(n) 65
|
|
66: 39(fvec3) VectorTimesScalar 63 65
|
|
68: 8(float) Load 37(n)
|
|
69: 8(float) FAdd 68 18
|
|
Store 37(n) 69
|
|
70: 39(fvec3) VectorTimesScalar 67 69
|
|
72: 8(float) Load 37(n)
|
|
73: 8(float) FAdd 72 18
|
|
Store 37(n) 73
|
|
74: 39(fvec3) VectorTimesScalar 71 73
|
|
76: 8(float) Load 37(n)
|
|
77: 8(float) FAdd 76 18
|
|
Store 37(n) 77
|
|
78: 39(fvec3) VectorTimesScalar 75 77
|
|
79: 42 CompositeConstruct 49 54 58 62 66 70 74 78
|
|
Store 44(a) 79
|
|
83: 8(float) Load 37(n)
|
|
84: 8(float) FAdd 83 18
|
|
Store 37(n) 84
|
|
85: 39(fvec3) VectorTimesScalar 63 84
|
|
86: 80(one) CompositeConstruct 85
|
|
Store 82(oneNonConst) 86
|
|
90: 8(float) Load 37(n)
|
|
91: 8(float) FAdd 90 18
|
|
Store 37(n) 91
|
|
92: 39(fvec3) VectorTimesScalar 63 91
|
|
93: 8(float) Load 37(n)
|
|
94: 8(float) FAdd 93 18
|
|
Store 37(n) 94
|
|
95: 39(fvec3) VectorTimesScalar 63 94
|
|
96: 87(two) CompositeConstruct 92 95
|
|
Store 89(twoNonConst) 96
|
|
Return
|
|
FunctionEnd
|
|
12(@main():10(PS_OUTPUT) Function None 11
|
|
13: Label
|
|
99(ps_output): 98(ptr) Variable Function
|
|
97: 2 FunctionCall 6(Test1()
|
|
104: 103(ptr) AccessChain 99(ps_output) 101
|
|
Store 104 102
|
|
105:10(PS_OUTPUT) Load 99(ps_output)
|
|
ReturnValue 105
|
|
FunctionEnd
|