mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-14 13:51:04 +00:00
d3f1122a44
Rationalizes the entire tracking of the linker object nodes, effecting GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before their type snapshot for linker objects. Should only effect things when the rest of the AST contained no reference to the symbol, because normal AST nodes were not stale. Also will only effect such objects when their types were edited.
126 lines
5.6 KiB
Plaintext
126 lines
5.6 KiB
Plaintext
hlsl.precise.frag
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:6 Function Definition: MyFunction(f1;vf3; (temp void)
|
|
0:6 Function Parameters:
|
|
0:6 'myfloat' (noContraction in float)
|
|
0:6 'myfloat3' (noContraction out 3-component vector of float)
|
|
0:9 Function Definition: main( (temp structure{noContraction temp 4-component vector of float color})
|
|
0:9 Function Parameters:
|
|
0:? Sequence
|
|
0:11 move second child to first child (noContraction temp 4-component vector of float)
|
|
0:11 color: direct index for structure (noContraction temp 4-component vector of float)
|
|
0:11 'ps_output' (temp structure{noContraction temp 4-component vector of float color})
|
|
0:11 Constant:
|
|
0:11 0 (const int)
|
|
0:11 Constant:
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:12 Sequence
|
|
0:12 Sequence
|
|
0:12 move second child to first child (noContraction temp 4-component vector of float)
|
|
0:? 'color' (layout(location=0 ) noContraction out 4-component vector of float)
|
|
0:12 color: direct index for structure (noContraction temp 4-component vector of float)
|
|
0:12 'ps_output' (temp structure{noContraction temp 4-component vector of float color})
|
|
0:12 Constant:
|
|
0:12 0 (const int)
|
|
0:12 Branch: Return
|
|
0:? Linker Objects
|
|
0:? 'color' (layout(location=0 ) noContraction out 4-component vector of float)
|
|
0:? 'precisefloat' (noContraction global float)
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:6 Function Definition: MyFunction(f1;vf3; (temp void)
|
|
0:6 Function Parameters:
|
|
0:6 'myfloat' (noContraction in float)
|
|
0:6 'myfloat3' (noContraction out 3-component vector of float)
|
|
0:9 Function Definition: main( (temp structure{noContraction temp 4-component vector of float color})
|
|
0:9 Function Parameters:
|
|
0:? Sequence
|
|
0:11 move second child to first child (noContraction temp 4-component vector of float)
|
|
0:11 color: direct index for structure (noContraction temp 4-component vector of float)
|
|
0:11 'ps_output' (temp structure{noContraction temp 4-component vector of float color})
|
|
0:11 Constant:
|
|
0:11 0 (const int)
|
|
0:11 Constant:
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:11 1.000000
|
|
0:12 Sequence
|
|
0:12 Sequence
|
|
0:12 move second child to first child (noContraction temp 4-component vector of float)
|
|
0:? 'color' (layout(location=0 ) noContraction out 4-component vector of float)
|
|
0:12 color: direct index for structure (noContraction temp 4-component vector of float)
|
|
0:12 'ps_output' (temp structure{noContraction temp 4-component vector of float color})
|
|
0:12 Constant:
|
|
0:12 0 (const int)
|
|
0:12 Branch: Return
|
|
0:? Linker Objects
|
|
0:? 'color' (layout(location=0 ) noContraction out 4-component vector of float)
|
|
0:? 'precisefloat' (noContraction global float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 32
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 26
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Name 4 "main"
|
|
Name 13 "MyFunction(f1;vf3;"
|
|
Name 11 "myfloat"
|
|
Name 12 "myfloat3"
|
|
Name 16 "PS_OUTPUT"
|
|
MemberName 16(PS_OUTPUT) 0 "color"
|
|
Name 18 "ps_output"
|
|
Name 26 "color"
|
|
Name 31 "precisefloat"
|
|
Decorate 26(color) Location 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypePointer Function 6(float)
|
|
8: TypeVector 6(float) 3
|
|
9: TypePointer Function 8(fvec3)
|
|
10: TypeFunction 2 7(ptr) 9(ptr)
|
|
15: TypeVector 6(float) 4
|
|
16(PS_OUTPUT): TypeStruct 15(fvec4)
|
|
17: TypePointer Function 16(PS_OUTPUT)
|
|
19: TypeInt 32 1
|
|
20: 19(int) Constant 0
|
|
21: 6(float) Constant 1065353216
|
|
22: 15(fvec4) ConstantComposite 21 21 21 21
|
|
23: TypePointer Function 15(fvec4)
|
|
25: TypePointer Output 15(fvec4)
|
|
26(color): 25(ptr) Variable Output
|
|
30: TypePointer Private 6(float)
|
|
31(precisefloat): 30(ptr) Variable Private
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
18(ps_output): 17(ptr) Variable Function
|
|
24: 23(ptr) AccessChain 18(ps_output) 20
|
|
Store 24 22
|
|
27: 23(ptr) AccessChain 18(ps_output) 20
|
|
28: 15(fvec4) Load 27
|
|
Store 26(color) 28
|
|
Return
|
|
FunctionEnd
|
|
13(MyFunction(f1;vf3;): 2 Function None 10
|
|
11(myfloat): 7(ptr) FunctionParameter
|
|
12(myfloat3): 9(ptr) FunctionParameter
|
|
14: Label
|
|
Return
|
|
FunctionEnd
|