
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.
173 lines
8.0 KiB
Plaintext
173 lines
8.0 KiB
Plaintext
hlsl.synthesizeInput.frag
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:7 Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
|
|
0:7 Function Parameters:
|
|
0:7 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:? Sequence
|
|
0:8 Branch: Return with expression
|
|
0:8 Construct vec4 ( temp 4-component vector of float)
|
|
0:8 Convert uint to float ( temp float)
|
|
0:8 no_interp: direct index for structure ( temp uint)
|
|
0:8 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:8 Constant:
|
|
0:8 1 (const int)
|
|
0:8 interp: direct index for structure ( temp float)
|
|
0:8 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:8 Constant:
|
|
0:8 0 (const int)
|
|
0:8 Constant:
|
|
0:8 0.000000
|
|
0:8 Constant:
|
|
0:8 1.000000
|
|
0:7 Function Definition: main( ( temp void)
|
|
0:7 Function Parameters:
|
|
0:? Sequence
|
|
0:7 Sequence
|
|
0:7 move second child to first child ( temp float)
|
|
0:7 interp: direct index for structure ( temp float)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:7 Constant:
|
|
0:7 0 (const int)
|
|
0:? 'input.interp' (layout( location=0) in float)
|
|
0:7 move second child to first child ( temp uint)
|
|
0:7 no_interp: direct index for structure ( temp uint)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:7 Constant:
|
|
0:7 1 (const int)
|
|
0:? 'input.no_interp' (layout( location=1) flat in uint)
|
|
0:7 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:7 Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:? 'input.interp' (layout( location=0) in float)
|
|
0:? 'input.no_interp' (layout( location=1) flat in uint)
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:7 Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
|
|
0:7 Function Parameters:
|
|
0:7 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:? Sequence
|
|
0:8 Branch: Return with expression
|
|
0:8 Construct vec4 ( temp 4-component vector of float)
|
|
0:8 Convert uint to float ( temp float)
|
|
0:8 no_interp: direct index for structure ( temp uint)
|
|
0:8 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:8 Constant:
|
|
0:8 1 (const int)
|
|
0:8 interp: direct index for structure ( temp float)
|
|
0:8 'input' ( in structure{ temp float interp, temp uint no_interp})
|
|
0:8 Constant:
|
|
0:8 0 (const int)
|
|
0:8 Constant:
|
|
0:8 0.000000
|
|
0:8 Constant:
|
|
0:8 1.000000
|
|
0:7 Function Definition: main( ( temp void)
|
|
0:7 Function Parameters:
|
|
0:? Sequence
|
|
0:7 Sequence
|
|
0:7 move second child to first child ( temp float)
|
|
0:7 interp: direct index for structure ( temp float)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:7 Constant:
|
|
0:7 0 (const int)
|
|
0:? 'input.interp' (layout( location=0) in float)
|
|
0:7 move second child to first child ( temp uint)
|
|
0:7 no_interp: direct index for structure ( temp uint)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:7 Constant:
|
|
0:7 1 (const int)
|
|
0:? 'input.no_interp' (layout( location=1) flat in uint)
|
|
0:7 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:7 Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
|
|
0:? 'input' ( temp structure{ temp float interp, temp uint no_interp})
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:? 'input.interp' (layout( location=0) in float)
|
|
0:? 'input.no_interp' (layout( location=1) flat in uint)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000a
|
|
// Id's are bound by 44
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 32 36 40
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source HLSL 500
|
|
Name 4 "main"
|
|
Name 8 "PSInput"
|
|
MemberName 8(PSInput) 0 "interp"
|
|
MemberName 8(PSInput) 1 "no_interp"
|
|
Name 13 "@main(struct-PSInput-f1-u11;"
|
|
Name 12 "input"
|
|
Name 30 "input"
|
|
Name 32 "input.interp"
|
|
Name 36 "input.no_interp"
|
|
Name 40 "@entryPointOutput"
|
|
Name 41 "param"
|
|
Decorate 32(input.interp) Location 0
|
|
Decorate 36(input.no_interp) Flat
|
|
Decorate 36(input.no_interp) Location 1
|
|
Decorate 40(@entryPointOutput) Location 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeInt 32 0
|
|
8(PSInput): TypeStruct 6(float) 7(int)
|
|
9: TypePointer Function 8(PSInput)
|
|
10: TypeVector 6(float) 4
|
|
11: TypeFunction 10(fvec4) 9(ptr)
|
|
15: TypeInt 32 1
|
|
16: 15(int) Constant 1
|
|
17: TypePointer Function 7(int)
|
|
21: 15(int) Constant 0
|
|
22: TypePointer Function 6(float)
|
|
25: 6(float) Constant 0
|
|
26: 6(float) Constant 1065353216
|
|
31: TypePointer Input 6(float)
|
|
32(input.interp): 31(ptr) Variable Input
|
|
35: TypePointer Input 7(int)
|
|
36(input.no_interp): 35(ptr) Variable Input
|
|
39: TypePointer Output 10(fvec4)
|
|
40(@entryPointOutput): 39(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
30(input): 9(ptr) Variable Function
|
|
41(param): 9(ptr) Variable Function
|
|
33: 6(float) Load 32(input.interp)
|
|
34: 22(ptr) AccessChain 30(input) 21
|
|
Store 34 33
|
|
37: 7(int) Load 36(input.no_interp)
|
|
38: 17(ptr) AccessChain 30(input) 16
|
|
Store 38 37
|
|
42: 8(PSInput) Load 30(input)
|
|
Store 41(param) 42
|
|
43: 10(fvec4) FunctionCall 13(@main(struct-PSInput-f1-u11;) 41(param)
|
|
Store 40(@entryPointOutput) 43
|
|
Return
|
|
FunctionEnd
|
|
13(@main(struct-PSInput-f1-u11;): 10(fvec4) Function None 11
|
|
12(input): 9(ptr) FunctionParameter
|
|
14: Label
|
|
18: 17(ptr) AccessChain 12(input) 16
|
|
19: 7(int) Load 18
|
|
20: 6(float) ConvertUToF 19
|
|
23: 22(ptr) AccessChain 12(input) 21
|
|
24: 6(float) Load 23
|
|
27: 10(fvec4) CompositeConstruct 20 24 25 26
|
|
ReturnValue 27
|
|
FunctionEnd
|