Add asdouble, fma, & mad intrinsics and change profile to allow doubles when parsing prototypes

This commit is contained in:
LoopDawg 2016-06-22 15:20:14 -06:00
parent e5a807276f
commit 1b7fd0f7b7
13 changed files with 810 additions and 745 deletions

View File

@ -0,0 +1,117 @@
hlsl.intrinsics.double.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (temp float)
0:5 Function Parameters:
0:5 'inDV1a' (in double)
0:5 'inDV1b' (in double)
0:5 'inDV1c' (in double)
0:5 'inDV2' (in 2-component vector of double)
0:5 'inDV3' (in 3-component vector of double)
0:5 'inDV4' (in 4-component vector of double)
0:5 'inU1a' (in uint)
0:5 'inU1b' (in uint)
0:? Sequence
0:6 move second child to first child (temp double)
0:6 'r00' (temp double)
0:6 fma (global double)
0:6 'inDV1a' (in double)
0:6 'inDV1b' (in double)
0:6 'inDV1c' (in double)
0:7 move second child to first child (temp double)
0:7 'r01' (temp double)
0:7 uint64BitsToDouble (temp double)
0:7 Construct uvec2 (temp 2-component vector of uint)
0:7 'inU1a' (in uint)
0:7 'inU1b' (in uint)
0:9 Branch: Return with expression
0:9 Constant:
0:9 0.000000
0:? Linker Objects
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (temp float)
0:5 Function Parameters:
0:5 'inDV1a' (in double)
0:5 'inDV1b' (in double)
0:5 'inDV1c' (in double)
0:5 'inDV2' (in 2-component vector of double)
0:5 'inDV3' (in 3-component vector of double)
0:5 'inDV4' (in 4-component vector of double)
0:5 'inU1a' (in uint)
0:5 'inU1b' (in uint)
0:? Sequence
0:6 move second child to first child (temp double)
0:6 'r00' (temp double)
0:6 fma (global double)
0:6 'inDV1a' (in double)
0:6 'inDV1b' (in double)
0:6 'inDV1c' (in double)
0:7 move second child to first child (temp double)
0:7 'r01' (temp double)
0:7 uint64BitsToDouble (temp double)
0:7 Construct uvec2 (temp 2-component vector of uint)
0:7 'inU1a' (in uint)
0:7 'inU1b' (in uint)
0:9 Branch: Return with expression
0:9 Constant:
0:9 0.000000
0:? Linker Objects
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 30
Capability Shader
Capability Float64
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 10 12 14 20 22
ExecutionMode 4 OriginUpperLeft
Source HLSL 450
Name 4 "PixelShaderFunction"
Name 8 "r00"
Name 10 "inDV1a"
Name 12 "inDV1b"
Name 14 "inDV1c"
Name 17 "r01"
Name 20 "inU1a"
Name 22 "inU1b"
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 64
7: TypePointer Function 6(float)
9: TypePointer Input 6(float)
10(inDV1a): 9(ptr) Variable Input
12(inDV1b): 9(ptr) Variable Input
14(inDV1c): 9(ptr) Variable Input
18: TypeInt 32 0
19: TypePointer Input 18(int)
20(inU1a): 19(ptr) Variable Input
22(inU1b): 19(ptr) Variable Input
24: TypeVector 18(int) 2
27: TypeFloat 32
28: 27(float) Constant 0
4(PixelShaderFunction): 2 Function None 3
5: Label
8(r00): 7(ptr) Variable Function
17(r01): 7(ptr) Variable Function
11: 6(float) Load 10(inDV1a)
13: 6(float) Load 12(inDV1b)
15: 6(float) Load 14(inDV1c)
16: 6(float) ExtInst 1(GLSL.std.450) 50(Fma) 11 13 15
Store 8(r00) 16
21: 18(int) Load 20(inU1a)
23: 18(int) Load 22(inU1b)
25: 24(ivec2) CompositeConstruct 21 23
26: 6(float) Bitcast 25
Store 17(r01) 26
ReturnValue 28
FunctionEnd

View File

@ -18,7 +18,6 @@ ERROR: 0:22: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:23: 'f16tof32' : no matching overloaded function found
ERROR: 0:24: 'firstbithigh' : no matching overloaded function found
ERROR: 0:25: 'firstbitlow' : no matching overloaded function found
ERROR: 0:26: 'fma' : no matching overloaded function found
ERROR: 0:27: 'fwidth' : no matching overloaded function found
ERROR: 0:28: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:29: 'InterlockedAdd' : no matching overloaded function found
@ -61,7 +60,6 @@ ERROR: 0:83: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:84: 'f16tof32' : no matching overloaded function found
ERROR: 0:85: 'firstbithigh' : no matching overloaded function found
ERROR: 0:86: 'firstbitlow' : no matching overloaded function found
ERROR: 0:87: 'fma' : no matching overloaded function found
ERROR: 0:88: 'fwidth' : no matching overloaded function found
ERROR: 0:89: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:90: 'InterlockedAdd' : no matching overloaded function found
@ -96,7 +94,6 @@ ERROR: 0:128: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:129: 'f16tof32' : no matching overloaded function found
ERROR: 0:130: 'firstbithigh' : no matching overloaded function found
ERROR: 0:131: 'firstbitlow' : no matching overloaded function found
ERROR: 0:132: 'fma' : no matching overloaded function found
ERROR: 0:133: 'fwidth' : no matching overloaded function found
ERROR: 0:134: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:135: 'InterlockedAdd' : no matching overloaded function found
@ -131,7 +128,6 @@ ERROR: 0:173: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:174: 'f16tof32' : no matching overloaded function found
ERROR: 0:175: 'firstbithigh' : no matching overloaded function found
ERROR: 0:176: 'firstbitlow' : no matching overloaded function found
ERROR: 0:177: 'fma' : no matching overloaded function found
ERROR: 0:178: 'fwidth' : no matching overloaded function found
ERROR: 0:179: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:180: 'InterlockedAdd' : no matching overloaded function found
@ -150,7 +146,7 @@ ERROR: 0:192: 'InterlockedXor' : no matching overloaded function found
ERROR: 0:193: 'noise' : no matching overloaded function found
ERROR: 0:194: 'reversebits' : no matching overloaded function found
ERROR: 0:195: 'transpose' : no matching overloaded function found
ERROR: 151 compilation errors. No code generated.
ERROR: 147 compilation errors. No code generated.
Shader version: 450
@ -201,8 +197,6 @@ ERROR: node is still EOpNull!
0:24 0.000000
0:25 Constant:
0:25 0.000000
0:26 Constant:
0:26 0.000000
0:27 Constant:
0:27 0.000000
0:28 Constant:
@ -307,8 +301,6 @@ ERROR: node is still EOpNull!
0:85 0.000000
0:86 Constant:
0:86 0.000000
0:87 Constant:
0:87 0.000000
0:88 Constant:
0:88 0.000000
0:89 Constant:
@ -388,8 +380,6 @@ ERROR: node is still EOpNull!
0:130 0.000000
0:131 Constant:
0:131 0.000000
0:132 Constant:
0:132 0.000000
0:133 Constant:
0:133 0.000000
0:134 Constant:
@ -470,8 +460,6 @@ ERROR: node is still EOpNull!
0:175 0.000000
0:176 Constant:
0:176 0.000000
0:177 Constant:
0:177 0.000000
0:178 Constant:
0:178 0.000000
0:179 Constant:
@ -568,8 +556,6 @@ ERROR: node is still EOpNull!
0:24 0.000000
0:25 Constant:
0:25 0.000000
0:26 Constant:
0:26 0.000000
0:27 Constant:
0:27 0.000000
0:28 Constant:
@ -674,8 +660,6 @@ ERROR: node is still EOpNull!
0:85 0.000000
0:86 Constant:
0:86 0.000000
0:87 Constant:
0:87 0.000000
0:88 Constant:
0:88 0.000000
0:89 Constant:
@ -755,8 +739,6 @@ ERROR: node is still EOpNull!
0:130 0.000000
0:131 Constant:
0:131 0.000000
0:132 Constant:
0:132 0.000000
0:133 Constant:
0:133 0.000000
0:134 Constant:
@ -837,8 +819,6 @@ ERROR: node is still EOpNull!
0:175 0.000000
0:176 Constant:
0:176 0.000000
0:177 Constant:
0:177 0.000000
0:178 Constant:
0:178 0.000000
0:179 Constant:

View File

@ -8,7 +8,6 @@ ERROR: 0:10: 'determinant' : no matching overloaded function found
ERROR: 0:12: 'f16tof32' : no matching overloaded function found
ERROR: 0:13: 'firstbithigh' : no matching overloaded function found
ERROR: 0:14: 'firstbitlow' : no matching overloaded function found
ERROR: 0:15: 'fma' : no matching overloaded function found
ERROR: 0:23: 'length' : no matching overloaded function found
ERROR: 0:24: 'msad4' : no matching overloaded function found
ERROR: 0:25: 'normalize' : no matching overloaded function found
@ -27,7 +26,6 @@ ERROR: 0:51: 'determinant' : no matching overloaded function found
ERROR: 0:52: 'f16tof32' : no matching overloaded function found
ERROR: 0:53: 'firstbithigh' : no matching overloaded function found
ERROR: 0:54: 'firstbitlow' : no matching overloaded function found
ERROR: 0:55: 'fma' : no matching overloaded function found
ERROR: 0:56: 'reversebits' : no matching overloaded function found
ERROR: 0:57: 'transpose' : no matching overloaded function found
ERROR: 0:64: 'CheckAccessFullyMapped' : no matching overloaded function found
@ -37,7 +35,6 @@ ERROR: 0:67: 'determinant' : no matching overloaded function found
ERROR: 0:68: 'f16tof32' : no matching overloaded function found
ERROR: 0:69: 'firstbithigh' : no matching overloaded function found
ERROR: 0:70: 'firstbitlow' : no matching overloaded function found
ERROR: 0:71: 'fma' : no matching overloaded function found
ERROR: 0:72: 'reversebits' : no matching overloaded function found
ERROR: 0:73: 'transpose' : no matching overloaded function found
ERROR: 0:81: 'CheckAccessFullyMapped' : no matching overloaded function found
@ -47,52 +44,48 @@ ERROR: 0:84: 'determinant' : no matching overloaded function found
ERROR: 0:85: 'f16tof32' : no matching overloaded function found
ERROR: 0:86: 'firstbithigh' : no matching overloaded function found
ERROR: 0:87: 'firstbitlow' : no matching overloaded function found
ERROR: 0:88: 'fma' : no matching overloaded function found
ERROR: 0:89: 'reversebits' : no matching overloaded function found
ERROR: 0:90: 'transpose' : no matching overloaded function found
ERROR: 0:118: 'countbits' : no matching overloaded function found
ERROR: 0:118: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:118: 'cross' : no matching overloaded function found
ERROR: 0:118: 'f16tof32' : no matching overloaded function found
ERROR: 0:118: 'firstbithigh' : no matching overloaded function found
ERROR: 0:118: 'firstbitlow' : no matching overloaded function found
ERROR: 0:118: 'fma' : no matching overloaded function found
ERROR: 0:118: 'reversebits' : no matching overloaded function found
ERROR: 0:118: 'length' : no matching overloaded function found
ERROR: 0:118: 'noise' : no matching overloaded function found
ERROR: 0:118: 'normalize' : no matching overloaded function found
ERROR: 0:118: 'reflect' : no matching overloaded function found
ERROR: 0:118: 'refract' : no matching overloaded function found
ERROR: 0:118: 'reversebits' : no matching overloaded function found
ERROR: 0:126: 'countbits' : no matching overloaded function found
ERROR: 0:126: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:126: 'cross' : no matching overloaded function found
ERROR: 0:126: 'f16tof32' : no matching overloaded function found
ERROR: 0:126: 'firstbithigh' : no matching overloaded function found
ERROR: 0:126: 'firstbitlow' : no matching overloaded function found
ERROR: 0:126: 'fma' : no matching overloaded function found
ERROR: 0:126: 'reversebits' : no matching overloaded function found
ERROR: 0:126: 'length' : no matching overloaded function found
ERROR: 0:126: 'noise' : no matching overloaded function found
ERROR: 0:126: 'normalize' : no matching overloaded function found
ERROR: 0:126: 'reflect' : no matching overloaded function found
ERROR: 0:126: 'refract' : no matching overloaded function found
ERROR: 0:126: 'reversebits' : no matching overloaded function found
ERROR: 0:134: 'countbits' : no matching overloaded function found
ERROR: 0:134: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:134: 'cross' : no matching overloaded function found
ERROR: 0:134: 'f16tof32' : no matching overloaded function found
ERROR: 0:134: 'firstbithigh' : no matching overloaded function found
ERROR: 0:134: 'firstbitlow' : no matching overloaded function found
ERROR: 0:134: 'fma' : no matching overloaded function found
ERROR: 0:134: 'reversebits' : no matching overloaded function found
ERROR: 0:134: 'length' : no matching overloaded function found
ERROR: 0:134: 'noise' : no matching overloaded function found
ERROR: 0:134: 'normalize' : no matching overloaded function found
ERROR: 0:134: 'reflect' : no matching overloaded function found
ERROR: 0:134: 'refract' : no matching overloaded function found
ERROR: 0:134: 'reversebits' : no matching overloaded function found
ERROR: 93 compilation errors. No code generated.
ERROR: 0:117: 'countbits' : no matching overloaded function found
ERROR: 0:117: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:117: 'cross' : no matching overloaded function found
ERROR: 0:117: 'f16tof32' : no matching overloaded function found
ERROR: 0:117: 'firstbithigh' : no matching overloaded function found
ERROR: 0:117: 'firstbitlow' : no matching overloaded function found
ERROR: 0:117: 'reversebits' : no matching overloaded function found
ERROR: 0:117: 'length' : no matching overloaded function found
ERROR: 0:117: 'noise' : no matching overloaded function found
ERROR: 0:117: 'normalize' : no matching overloaded function found
ERROR: 0:117: 'reflect' : no matching overloaded function found
ERROR: 0:117: 'refract' : no matching overloaded function found
ERROR: 0:117: 'reversebits' : no matching overloaded function found
ERROR: 0:125: 'countbits' : no matching overloaded function found
ERROR: 0:125: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:125: 'cross' : no matching overloaded function found
ERROR: 0:125: 'f16tof32' : no matching overloaded function found
ERROR: 0:125: 'firstbithigh' : no matching overloaded function found
ERROR: 0:125: 'firstbitlow' : no matching overloaded function found
ERROR: 0:125: 'reversebits' : no matching overloaded function found
ERROR: 0:125: 'length' : no matching overloaded function found
ERROR: 0:125: 'noise' : no matching overloaded function found
ERROR: 0:125: 'normalize' : no matching overloaded function found
ERROR: 0:125: 'reflect' : no matching overloaded function found
ERROR: 0:125: 'refract' : no matching overloaded function found
ERROR: 0:125: 'reversebits' : no matching overloaded function found
ERROR: 0:133: 'countbits' : no matching overloaded function found
ERROR: 0:133: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:133: 'cross' : no matching overloaded function found
ERROR: 0:133: 'f16tof32' : no matching overloaded function found
ERROR: 0:133: 'firstbithigh' : no matching overloaded function found
ERROR: 0:133: 'firstbitlow' : no matching overloaded function found
ERROR: 0:133: 'reversebits' : no matching overloaded function found
ERROR: 0:133: 'length' : no matching overloaded function found
ERROR: 0:133: 'noise' : no matching overloaded function found
ERROR: 0:133: 'normalize' : no matching overloaded function found
ERROR: 0:133: 'reflect' : no matching overloaded function found
ERROR: 0:133: 'refract' : no matching overloaded function found
ERROR: 0:133: 'reversebits' : no matching overloaded function found
ERROR: 86 compilation errors. No code generated.
Shader version: 450
@ -123,8 +116,6 @@ ERROR: node is still EOpNull!
0:13 0.000000
0:14 Constant:
0:14 0.000000
0:15 Constant:
0:15 0.000000
0:23 Constant:
0:23 0.000000
0:24 Constant:
@ -181,8 +172,6 @@ ERROR: node is still EOpNull!
0:53 0.000000
0:54 Constant:
0:54 0.000000
0:55 Constant:
0:55 0.000000
0:56 Constant:
0:56 0.000000
0:57 Constant:
@ -212,8 +201,6 @@ ERROR: node is still EOpNull!
0:69 0.000000
0:70 Constant:
0:70 0.000000
0:71 Constant:
0:71 0.000000
0:72 Constant:
0:72 0.000000
0:73 Constant:
@ -223,7 +210,7 @@ ERROR: node is still EOpNull!
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:115 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:80 Function Parameters:
0:80 'inF0' (in 4-component vector of float)
0:80 'inF1' (in 4-component vector of float)
@ -244,8 +231,6 @@ ERROR: node is still EOpNull!
0:86 0.000000
0:87 Constant:
0:87 0.000000
0:88 Constant:
0:88 0.000000
0:89 Constant:
0:89 0.000000
0:90 Constant:
@ -256,81 +241,77 @@ ERROR: node is still EOpNull!
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:123 Function Definition: PixelShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:116 Function Parameters:
0:116 'inF0' (in 2X2 matrix of float)
0:116 'inF1' (in 2X2 matrix of float)
0:116 'inF2' (in 2X2 matrix of float)
0:122 Function Definition: PixelShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:115 Function Parameters:
0:115 'inF0' (in 2X2 matrix of float)
0:115 'inF1' (in 2X2 matrix of float)
0:115 'inF2' (in 2X2 matrix of float)
0:? Sequence
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:120 Branch: Return with expression
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:119 Branch: Return with expression
0:? Constant:
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:131 Function Definition: PixelShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:124 Function Parameters:
0:124 'inF0' (in 3X3 matrix of float)
0:124 'inF1' (in 3X3 matrix of float)
0:124 'inF2' (in 3X3 matrix of float)
0:130 Function Definition: PixelShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:123 Function Parameters:
0:123 'inF0' (in 3X3 matrix of float)
0:123 'inF1' (in 3X3 matrix of float)
0:123 'inF2' (in 3X3 matrix of float)
0:? Sequence
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:128 Branch: Return with expression
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:127 Branch: Return with expression
0:? Constant:
0:? 3.000000
0:? 3.000000
@ -341,41 +322,39 @@ ERROR: node is still EOpNull!
0:? 3.000000
0:? 3.000000
0:? 3.000000
0:138 Function Definition: PixelShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:132 Function Parameters:
0:132 'inF0' (in 4X4 matrix of float)
0:132 'inF1' (in 4X4 matrix of float)
0:132 'inF2' (in 4X4 matrix of float)
0:137 Function Definition: PixelShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:131 Function Parameters:
0:131 'inF0' (in 4X4 matrix of float)
0:131 'inF1' (in 4X4 matrix of float)
0:131 'inF2' (in 4X4 matrix of float)
0:? Sequence
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:136 Branch: Return with expression
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:135 Branch: Return with expression
0:? Constant:
0:? 4.000000
0:? 4.000000
@ -427,8 +406,6 @@ ERROR: node is still EOpNull!
0:13 0.000000
0:14 Constant:
0:14 0.000000
0:15 Constant:
0:15 0.000000
0:23 Constant:
0:23 0.000000
0:24 Constant:
@ -485,8 +462,6 @@ ERROR: node is still EOpNull!
0:53 0.000000
0:54 Constant:
0:54 0.000000
0:55 Constant:
0:55 0.000000
0:56 Constant:
0:56 0.000000
0:57 Constant:
@ -516,8 +491,6 @@ ERROR: node is still EOpNull!
0:69 0.000000
0:70 Constant:
0:70 0.000000
0:71 Constant:
0:71 0.000000
0:72 Constant:
0:72 0.000000
0:73 Constant:
@ -527,7 +500,7 @@ ERROR: node is still EOpNull!
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:115 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:80 Function Parameters:
0:80 'inF0' (in 4-component vector of float)
0:80 'inF1' (in 4-component vector of float)
@ -548,8 +521,6 @@ ERROR: node is still EOpNull!
0:86 0.000000
0:87 Constant:
0:87 0.000000
0:88 Constant:
0:88 0.000000
0:89 Constant:
0:89 0.000000
0:90 Constant:
@ -560,81 +531,77 @@ ERROR: node is still EOpNull!
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:123 Function Definition: PixelShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:116 Function Parameters:
0:116 'inF0' (in 2X2 matrix of float)
0:116 'inF1' (in 2X2 matrix of float)
0:116 'inF2' (in 2X2 matrix of float)
0:122 Function Definition: PixelShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:115 Function Parameters:
0:115 'inF0' (in 2X2 matrix of float)
0:115 'inF1' (in 2X2 matrix of float)
0:115 'inF2' (in 2X2 matrix of float)
0:? Sequence
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:118 Constant:
0:118 0.000000
0:120 Branch: Return with expression
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:117 Constant:
0:117 0.000000
0:119 Branch: Return with expression
0:? Constant:
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:131 Function Definition: PixelShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:124 Function Parameters:
0:124 'inF0' (in 3X3 matrix of float)
0:124 'inF1' (in 3X3 matrix of float)
0:124 'inF2' (in 3X3 matrix of float)
0:130 Function Definition: PixelShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:123 Function Parameters:
0:123 'inF0' (in 3X3 matrix of float)
0:123 'inF1' (in 3X3 matrix of float)
0:123 'inF2' (in 3X3 matrix of float)
0:? Sequence
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:126 Constant:
0:126 0.000000
0:128 Branch: Return with expression
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:125 Constant:
0:125 0.000000
0:127 Branch: Return with expression
0:? Constant:
0:? 3.000000
0:? 3.000000
@ -645,41 +612,39 @@ ERROR: node is still EOpNull!
0:? 3.000000
0:? 3.000000
0:? 3.000000
0:138 Function Definition: PixelShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:132 Function Parameters:
0:132 'inF0' (in 4X4 matrix of float)
0:132 'inF1' (in 4X4 matrix of float)
0:132 'inF2' (in 4X4 matrix of float)
0:137 Function Definition: PixelShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:131 Function Parameters:
0:131 'inF0' (in 4X4 matrix of float)
0:131 'inF1' (in 4X4 matrix of float)
0:131 'inF2' (in 4X4 matrix of float)
0:? Sequence
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:134 Constant:
0:134 0.000000
0:136 Branch: Return with expression
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:133 Constant:
0:133 0.000000
0:135 Branch: Return with expression
0:? Constant:
0:? 4.000000
0:? 4.000000

View File

@ -23,7 +23,6 @@ ERROR: 0:38: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:39: 'f16tof32' : no matching overloaded function found
ERROR: 0:40: 'firstbithigh' : no matching overloaded function found
ERROR: 0:41: 'firstbitlow' : no matching overloaded function found
ERROR: 0:42: 'fma' : no matching overloaded function found
ERROR: 0:43: 'fwidth' : no matching overloaded function found
ERROR: 0:44: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:45: 'InterlockedAdd' : no matching overloaded function found
@ -68,7 +67,6 @@ ERROR: 0:101: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:102: 'f16tof32' : no matching overloaded function found
ERROR: 0:103: 'firstbithigh' : no matching overloaded function found
ERROR: 0:104: 'firstbitlow' : no matching overloaded function found
ERROR: 0:105: 'fma' : no matching overloaded function found
ERROR: 0:106: 'fwidth' : no matching overloaded function found
ERROR: 0:107: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:108: 'InterlockedAdd' : no matching overloaded function found
@ -103,7 +101,6 @@ ERROR: 0:146: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:147: 'f16tof32' : no matching overloaded function found
ERROR: 0:148: 'firstbithigh' : no matching overloaded function found
ERROR: 0:149: 'firstbitlow' : no matching overloaded function found
ERROR: 0:150: 'fma' : no matching overloaded function found
ERROR: 0:151: 'fwidth' : no matching overloaded function found
ERROR: 0:152: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:153: 'InterlockedAdd' : no matching overloaded function found
@ -138,7 +135,6 @@ ERROR: 0:191: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:192: 'f16tof32' : no matching overloaded function found
ERROR: 0:193: 'firstbithigh' : no matching overloaded function found
ERROR: 0:194: 'firstbitlow' : no matching overloaded function found
ERROR: 0:195: 'fma' : no matching overloaded function found
ERROR: 0:196: 'fwidth' : no matching overloaded function found
ERROR: 0:197: 'InterlockedAdd' : no matching overloaded function found
ERROR: 0:198: 'InterlockedAdd' : no matching overloaded function found
@ -157,82 +153,79 @@ ERROR: 0:210: 'InterlockedXor' : no matching overloaded function found
ERROR: 0:211: 'noise' : no matching overloaded function found
ERROR: 0:212: 'reversebits' : no matching overloaded function found
ERROR: 0:213: 'transpose' : no matching overloaded function found
ERROR: 0:254: 'countbits' : no matching overloaded function found
ERROR: 0:254: 'cross' : no matching overloaded function found
ERROR: 0:254: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:254: 'ddx' : no matching overloaded function found
ERROR: 0:254: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:254: 'ddx_fine' : no matching overloaded function found
ERROR: 0:254: 'ddy' : no matching overloaded function found
ERROR: 0:254: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:254: 'ddy_fine' : no matching overloaded function found
ERROR: 0:254: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:254: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:254: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:254: 'f16tof32' : no matching overloaded function found
ERROR: 0:254: 'firstbithigh' : no matching overloaded function found
ERROR: 0:254: 'firstbitlow' : no matching overloaded function found
ERROR: 0:254: 'fma' : no matching overloaded function found
ERROR: 0:254: 'fwidth' : no matching overloaded function found
ERROR: 0:254: 'noise' : no matching overloaded function found
ERROR: 0:254: 'reversebits' : no matching overloaded function found
ERROR: 0:254: 'length' : no matching overloaded function found
ERROR: 0:254: 'noise' : no matching overloaded function found
ERROR: 0:254: 'normalize' : no matching overloaded function found
ERROR: 0:254: 'reflect' : no matching overloaded function found
ERROR: 0:254: 'refract' : no matching overloaded function found
ERROR: 0:254: 'reversebits' : no matching overloaded function found
ERROR: 0:262: 'countbits' : no matching overloaded function found
ERROR: 0:262: 'cross' : no matching overloaded function found
ERROR: 0:262: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:262: 'ddx' : no matching overloaded function found
ERROR: 0:262: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:262: 'ddx_fine' : no matching overloaded function found
ERROR: 0:262: 'ddy' : no matching overloaded function found
ERROR: 0:262: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:262: 'ddy_fine' : no matching overloaded function found
ERROR: 0:262: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:262: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:262: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:262: 'f16tof32' : no matching overloaded function found
ERROR: 0:262: 'firstbithigh' : no matching overloaded function found
ERROR: 0:262: 'firstbitlow' : no matching overloaded function found
ERROR: 0:262: 'fma' : no matching overloaded function found
ERROR: 0:262: 'fwidth' : no matching overloaded function found
ERROR: 0:262: 'noise' : no matching overloaded function found
ERROR: 0:262: 'reversebits' : no matching overloaded function found
ERROR: 0:262: 'length' : no matching overloaded function found
ERROR: 0:262: 'noise' : no matching overloaded function found
ERROR: 0:262: 'normalize' : no matching overloaded function found
ERROR: 0:262: 'reflect' : no matching overloaded function found
ERROR: 0:262: 'refract' : no matching overloaded function found
ERROR: 0:262: 'reversebits' : no matching overloaded function found
ERROR: 0:270: 'countbits' : no matching overloaded function found
ERROR: 0:270: 'cross' : no matching overloaded function found
ERROR: 0:270: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:270: 'ddx' : no matching overloaded function found
ERROR: 0:270: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:270: 'ddx_fine' : no matching overloaded function found
ERROR: 0:270: 'ddy' : no matching overloaded function found
ERROR: 0:270: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:270: 'ddy_fine' : no matching overloaded function found
ERROR: 0:270: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:270: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:270: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:270: 'f16tof32' : no matching overloaded function found
ERROR: 0:270: 'firstbithigh' : no matching overloaded function found
ERROR: 0:270: 'firstbitlow' : no matching overloaded function found
ERROR: 0:270: 'fma' : no matching overloaded function found
ERROR: 0:270: 'fwidth' : no matching overloaded function found
ERROR: 0:270: 'noise' : no matching overloaded function found
ERROR: 0:270: 'reversebits' : no matching overloaded function found
ERROR: 0:270: 'length' : no matching overloaded function found
ERROR: 0:270: 'noise' : no matching overloaded function found
ERROR: 0:270: 'normalize' : no matching overloaded function found
ERROR: 0:270: 'reflect' : no matching overloaded function found
ERROR: 0:270: 'refract' : no matching overloaded function found
ERROR: 0:270: 'reversebits' : no matching overloaded function found
ERROR: 233 compilation errors. No code generated.
ERROR: 0:253: 'countbits' : no matching overloaded function found
ERROR: 0:253: 'cross' : no matching overloaded function found
ERROR: 0:253: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:253: 'ddx' : no matching overloaded function found
ERROR: 0:253: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:253: 'ddx_fine' : no matching overloaded function found
ERROR: 0:253: 'ddy' : no matching overloaded function found
ERROR: 0:253: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:253: 'ddy_fine' : no matching overloaded function found
ERROR: 0:253: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:253: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:253: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:253: 'f16tof32' : no matching overloaded function found
ERROR: 0:253: 'firstbithigh' : no matching overloaded function found
ERROR: 0:253: 'firstbitlow' : no matching overloaded function found
ERROR: 0:253: 'fwidth' : no matching overloaded function found
ERROR: 0:253: 'noise' : no matching overloaded function found
ERROR: 0:253: 'reversebits' : no matching overloaded function found
ERROR: 0:253: 'length' : no matching overloaded function found
ERROR: 0:253: 'noise' : no matching overloaded function found
ERROR: 0:253: 'normalize' : no matching overloaded function found
ERROR: 0:253: 'reflect' : no matching overloaded function found
ERROR: 0:253: 'refract' : no matching overloaded function found
ERROR: 0:253: 'reversebits' : no matching overloaded function found
ERROR: 0:261: 'countbits' : no matching overloaded function found
ERROR: 0:261: 'cross' : no matching overloaded function found
ERROR: 0:261: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:261: 'ddx' : no matching overloaded function found
ERROR: 0:261: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:261: 'ddx_fine' : no matching overloaded function found
ERROR: 0:261: 'ddy' : no matching overloaded function found
ERROR: 0:261: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:261: 'ddy_fine' : no matching overloaded function found
ERROR: 0:261: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:261: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:261: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:261: 'f16tof32' : no matching overloaded function found
ERROR: 0:261: 'firstbithigh' : no matching overloaded function found
ERROR: 0:261: 'firstbitlow' : no matching overloaded function found
ERROR: 0:261: 'fwidth' : no matching overloaded function found
ERROR: 0:261: 'noise' : no matching overloaded function found
ERROR: 0:261: 'reversebits' : no matching overloaded function found
ERROR: 0:261: 'length' : no matching overloaded function found
ERROR: 0:261: 'noise' : no matching overloaded function found
ERROR: 0:261: 'normalize' : no matching overloaded function found
ERROR: 0:261: 'reflect' : no matching overloaded function found
ERROR: 0:261: 'refract' : no matching overloaded function found
ERROR: 0:261: 'reversebits' : no matching overloaded function found
ERROR: 0:269: 'countbits' : no matching overloaded function found
ERROR: 0:269: 'cross' : no matching overloaded function found
ERROR: 0:269: 'D3DCOLORtoUBYTE4' : no matching overloaded function found
ERROR: 0:269: 'ddx' : no matching overloaded function found
ERROR: 0:269: 'ddx_coarse' : no matching overloaded function found
ERROR: 0:269: 'ddx_fine' : no matching overloaded function found
ERROR: 0:269: 'ddy' : no matching overloaded function found
ERROR: 0:269: 'ddy_coarse' : no matching overloaded function found
ERROR: 0:269: 'ddy_fine' : no matching overloaded function found
ERROR: 0:269: 'EvaluateAttributeAtCentroid' : no matching overloaded function found
ERROR: 0:269: 'EvaluateAttributeAtSample' : no matching overloaded function found
ERROR: 0:269: 'EvaluateAttributeSnapped' : no matching overloaded function found
ERROR: 0:269: 'f16tof32' : no matching overloaded function found
ERROR: 0:269: 'firstbithigh' : no matching overloaded function found
ERROR: 0:269: 'firstbitlow' : no matching overloaded function found
ERROR: 0:269: 'fwidth' : no matching overloaded function found
ERROR: 0:269: 'noise' : no matching overloaded function found
ERROR: 0:269: 'reversebits' : no matching overloaded function found
ERROR: 0:269: 'length' : no matching overloaded function found
ERROR: 0:269: 'noise' : no matching overloaded function found
ERROR: 0:269: 'normalize' : no matching overloaded function found
ERROR: 0:269: 'reflect' : no matching overloaded function found
ERROR: 0:269: 'refract' : no matching overloaded function found
ERROR: 0:269: 'reversebits' : no matching overloaded function found
ERROR: 226 compilation errors. No code generated.
Shader version: 450
@ -292,8 +285,6 @@ ERROR: node is still EOpNull!
0:40 0.000000
0:41 Constant:
0:41 0.000000
0:42 Constant:
0:42 0.000000
0:43 Constant:
0:43 0.000000
0:44 Constant:
@ -402,8 +393,6 @@ ERROR: node is still EOpNull!
0:103 0.000000
0:104 Constant:
0:104 0.000000
0:105 Constant:
0:105 0.000000
0:106 Constant:
0:106 0.000000
0:107 Constant:
@ -483,8 +472,6 @@ ERROR: node is still EOpNull!
0:148 0.000000
0:149 Constant:
0:149 0.000000
0:150 Constant:
0:150 0.000000
0:151 Constant:
0:151 0.000000
0:152 Constant:
@ -526,7 +513,7 @@ ERROR: node is still EOpNull!
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:251 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:176 Function Parameters:
0:176 'inF0' (in 4-component vector of float)
0:176 'inF1' (in 4-component vector of float)
@ -565,8 +552,6 @@ ERROR: node is still EOpNull!
0:193 0.000000
0:194 Constant:
0:194 0.000000
0:195 Constant:
0:195 0.000000
0:196 Constant:
0:196 0.000000
0:197 Constant:
@ -609,125 +594,121 @@ ERROR: node is still EOpNull!
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:259 Function Definition: VertexShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:252 Function Parameters:
0:252 'inF0' (in 2X2 matrix of float)
0:252 'inF1' (in 2X2 matrix of float)
0:252 'inF2' (in 2X2 matrix of float)
0:258 Function Definition: VertexShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:251 Function Parameters:
0:251 'inF0' (in 2X2 matrix of float)
0:251 'inF1' (in 2X2 matrix of float)
0:251 'inF2' (in 2X2 matrix of float)
0:? Sequence
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:256 Branch: Return with expression
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:255 Branch: Return with expression
0:? Constant:
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:267 Function Definition: VertexShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:260 Function Parameters:
0:260 'inF0' (in 3X3 matrix of float)
0:260 'inF1' (in 3X3 matrix of float)
0:260 'inF2' (in 3X3 matrix of float)
0:266 Function Definition: VertexShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:259 Function Parameters:
0:259 'inF0' (in 3X3 matrix of float)
0:259 'inF1' (in 3X3 matrix of float)
0:259 'inF2' (in 3X3 matrix of float)
0:? Sequence
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:264 Branch: Return with expression
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:263 Branch: Return with expression
0:? Constant:
0:? 3.000000
0:? 3.000000
@ -738,63 +719,61 @@ ERROR: node is still EOpNull!
0:? 3.000000
0:? 3.000000
0:? 3.000000
0:274 Function Definition: VertexShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:268 Function Parameters:
0:268 'inF0' (in 4X4 matrix of float)
0:268 'inF1' (in 4X4 matrix of float)
0:268 'inF2' (in 4X4 matrix of float)
0:273 Function Definition: VertexShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:267 Function Parameters:
0:267 'inF0' (in 4X4 matrix of float)
0:267 'inF1' (in 4X4 matrix of float)
0:267 'inF2' (in 4X4 matrix of float)
0:? Sequence
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:272 Branch: Return with expression
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:271 Branch: Return with expression
0:? Constant:
0:? 4.000000
0:? 4.000000
@ -887,8 +866,6 @@ ERROR: node is still EOpNull!
0:40 0.000000
0:41 Constant:
0:41 0.000000
0:42 Constant:
0:42 0.000000
0:43 Constant:
0:43 0.000000
0:44 Constant:
@ -997,8 +974,6 @@ ERROR: node is still EOpNull!
0:103 0.000000
0:104 Constant:
0:104 0.000000
0:105 Constant:
0:105 0.000000
0:106 Constant:
0:106 0.000000
0:107 Constant:
@ -1078,8 +1053,6 @@ ERROR: node is still EOpNull!
0:148 0.000000
0:149 Constant:
0:149 0.000000
0:150 Constant:
0:150 0.000000
0:151 Constant:
0:151 0.000000
0:152 Constant:
@ -1121,7 +1094,7 @@ ERROR: node is still EOpNull!
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:251 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float)
0:176 Function Parameters:
0:176 'inF0' (in 4-component vector of float)
0:176 'inF1' (in 4-component vector of float)
@ -1160,8 +1133,6 @@ ERROR: node is still EOpNull!
0:193 0.000000
0:194 Constant:
0:194 0.000000
0:195 Constant:
0:195 0.000000
0:196 Constant:
0:196 0.000000
0:197 Constant:
@ -1204,125 +1175,121 @@ ERROR: node is still EOpNull!
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:259 Function Definition: VertexShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:252 Function Parameters:
0:252 'inF0' (in 2X2 matrix of float)
0:252 'inF1' (in 2X2 matrix of float)
0:252 'inF2' (in 2X2 matrix of float)
0:258 Function Definition: VertexShaderFunction(mf22;mf22;mf22; (temp 2X2 matrix of float)
0:251 Function Parameters:
0:251 'inF0' (in 2X2 matrix of float)
0:251 'inF1' (in 2X2 matrix of float)
0:251 'inF2' (in 2X2 matrix of float)
0:? Sequence
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:254 Constant:
0:254 0.000000
0:256 Branch: Return with expression
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:253 Constant:
0:253 0.000000
0:255 Branch: Return with expression
0:? Constant:
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:? 2.000000
0:267 Function Definition: VertexShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:260 Function Parameters:
0:260 'inF0' (in 3X3 matrix of float)
0:260 'inF1' (in 3X3 matrix of float)
0:260 'inF2' (in 3X3 matrix of float)
0:266 Function Definition: VertexShaderFunction(mf33;mf33;mf33; (temp 3X3 matrix of float)
0:259 Function Parameters:
0:259 'inF0' (in 3X3 matrix of float)
0:259 'inF1' (in 3X3 matrix of float)
0:259 'inF2' (in 3X3 matrix of float)
0:? Sequence
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:262 Constant:
0:262 0.000000
0:264 Branch: Return with expression
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:261 Constant:
0:261 0.000000
0:263 Branch: Return with expression
0:? Constant:
0:? 3.000000
0:? 3.000000
@ -1333,63 +1300,61 @@ ERROR: node is still EOpNull!
0:? 3.000000
0:? 3.000000
0:? 3.000000
0:274 Function Definition: VertexShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:268 Function Parameters:
0:268 'inF0' (in 4X4 matrix of float)
0:268 'inF1' (in 4X4 matrix of float)
0:268 'inF2' (in 4X4 matrix of float)
0:273 Function Definition: VertexShaderFunction(mf44;mf44;mf44; (temp 4X4 matrix of float)
0:267 Function Parameters:
0:267 'inF0' (in 4X4 matrix of float)
0:267 'inF1' (in 4X4 matrix of float)
0:267 'inF2' (in 4X4 matrix of float)
0:? Sequence
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:270 Constant:
0:270 0.000000
0:272 Branch: Return with expression
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:269 Constant:
0:269 0.000000
0:271 Branch: Return with expression
0:? Constant:
0:? 4.000000
0:? 4.000000

View File

@ -0,0 +1,11 @@
float PixelShaderFunction(double inDV1a, double inDV1b, double inDV1c,
double2 inDV2, double3 inDV3, double4 inDV4,
uint inU1a, uint inU1b)
{
double r00 = fma(inDV1a, inDV1b, inDV1c);
double r01 = asdouble(inU1a, inU1b);
return 0.0;
}

View File

@ -23,7 +23,7 @@ float ComputeShaderFunction(float inF0, float inF1, float inF2, int inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua, gs_ub); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua, gs_ub, out_u1); // expected error: only valid in pixel stage
@ -84,7 +84,7 @@ float2 ComputeShaderFunction(float2 inF0, float2 inF1, float2 inF2, int2 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua2, gs_ub2); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua2, gs_ub2, out_u2); // expected error: only valid in pixel stage
@ -129,7 +129,7 @@ float3 ComputeShaderFunction(float3 inF0, float3 inF1, float3 inF2, int3 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua3, gs_ub3); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua3, gs_ub3, out_u3); // expected error: only valid in pixel stage
@ -174,7 +174,7 @@ float4 ComputeShaderFunction(float4 inF0, float4 inF1, float4 inF2, int4 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua4, gs_ub4); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua4, gs_ub4, out_u4); // expected error: only valid in pixel stage

View File

@ -12,7 +12,7 @@ float PixelShaderFunction(float inF0, float inF1, float inF2, int inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
// InterlockedAdd(inI0, inI0, 3); // expected error: last parameter is out TODO: accepted even though marked as out in proto generator
// InterlockedAnd(inI0, inI0, 3); // expected error: last parameter is out TODO: accepted even though marked as out i // InterlockedMax(inI0, inI0, 3); // expected error: last parameter is out TODO: accepted even though marked as out in proto generator
// InterlockedMin(inI0, inI0, 3); // expected error: last parameter is out TODO: accepted even though marked as out in proto generator
@ -52,7 +52,7 @@ float2 PixelShaderFunction(float2 inF0, float2 inF1, float2 inF2, int2 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
reversebits(inF0); // expected error: only integer inputs
transpose(inF0); // expected error: only valid on mats
@ -68,7 +68,7 @@ float3 PixelShaderFunction(float3 inF0, float3 inF1, float3 inF2, int3 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
reversebits(inF0); // expected error: only integer inputs
transpose(inF0); // expected error: only valid on mats
@ -85,7 +85,7 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, int4 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
reversebits(inF0); // expected error: only integer inputs
transpose(inF0); // expected error: only valid on mats
@ -100,7 +100,6 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, int4 inI0)
f16tof32(inF0); \
firstbithigh(inF0); \
firstbitlow(inF0); \
fma(inF0, inF1, inF2); \
reversebits(inF0); \
length(inF0); \
noise(inF0); \

View File

@ -39,7 +39,7 @@ float VertexShaderFunction(float inF0, float inF1, float inF2, int inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua, gs_ub); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua, gs_ub, out_u1); // expected error: only valid in pixel stage
@ -102,7 +102,7 @@ float2 VertexShaderFunction(float2 inF0, float2 inF1, float2 inF2, int2 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua2, gs_ub2); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua2, gs_ub2, out_u2); // expected error: only valid in pixel stage
@ -147,7 +147,7 @@ float3 VertexShaderFunction(float3 inF0, float3 inF1, float3 inF2, int3 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua3, gs_ub3); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua3, gs_ub3, out_u3); // expected error: only valid in pixel stage
@ -192,7 +192,7 @@ float4 VertexShaderFunction(float4 inF0, float4 inF1, float4 inF2, int4 inI0)
f16tof32(inF0); // expected error: only integer inputs
firstbithigh(inF0); // expected error: only integer inputs
firstbitlow(inF0); // expected error: only integer inputs
fma(inF0, inF1, inF2); // expected error: only double inputs
// fma(inF0, inF1, inF2); // TODO: this might auto-promote: need to check against FXC
fwidth(inF0); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua4, gs_ub4); // expected error: only valid in pixel stage
InterlockedAdd(gs_ua4, gs_ub4, out_u4); // expected error: only valid in pixel stage
@ -234,7 +234,6 @@ float4 VertexShaderFunction(float4 inF0, float4 inF1, float4 inF2, int4 inI0)
f16tof32(inF0); \
firstbithigh(inF0); \
firstbitlow(inF0); \
fma(inF0, inF1, inF2); \
fwidth(inF0); \
noise(inF0); \
reversebits(inF0); \

View File

@ -524,6 +524,7 @@ enum TOperator {
EOpF16tof32, // HLSL conversion: half of an UnpackHalf2x16
EOpLit, // HLSL lighting coefficient vector
EOpTextureBias, // HLSL texture bias: will be lowered to EOpTexture
EOpAsDouble, // slightly different from EOpUint64BitsToDouble
};
class TIntermTraverser;

View File

@ -338,8 +338,8 @@ bool DeduceVersionProfile(TInfoSink& infoSink, EShLanguage stage, bool versionNo
bool correct = true;
if (source == EShSourceHlsl) {
version = 450; // TODO: GLSL parser is still used for builtins.
profile = ENoProfile;
version = 450; // TODO: GLSL parser is still used for builtins.
profile = ECoreProfile; // allow doubles in prototype parsing
return correct;
}

View File

@ -85,6 +85,7 @@ INSTANTIATE_TEST_CASE_P(
{"hlsl.intrinsics.barriers.comp", "ComputeShaderFunction"},
{"hlsl.intrinsics.comp", "ComputeShaderFunction"},
{"hlsl.intrinsics.evalfns.frag", "main"},
{"hlsl.intrinsics.double.frag", "PixelShaderFunction"},
{"hlsl.intrinsics.f1632.frag", "PixelShaderFunction"},
{"hlsl.intrinsics.frag", "PixelShaderFunction"},
{"hlsl.intrinsics.lit.frag", "PixelShaderFunction"},

View File

@ -1168,6 +1168,35 @@ void HlslParseContext::decomposeIntrinsic(const TSourceLoc& loc, TIntermTyped*&
break;
}
case EOpAsDouble:
{
// asdouble accepts two 32 bit ints. we can use EOpUint64BitsToDouble, but must
// first construct a uint64.
TIntermTyped* arg0 = argAggregate->getSequence()[0]->getAsTyped();
TIntermTyped* arg1 = argAggregate->getSequence()[1]->getAsTyped();
if (arg0->getType().isVector()) { // TODO: ...
error(loc, "double2 conversion not implemented", "asdouble", "");
break;
}
TIntermAggregate* uint64 = new TIntermAggregate(EOpConstructUVec2);
uint64->getSequence().push_back(arg0);
uint64->getSequence().push_back(arg1);
uint64->setType(TType(EbtUint, EvqTemporary, 2)); // convert 2 uints to a uint2
uint64->setLoc(loc);
// bitcast uint2 to a double
TIntermTyped* convert = new TIntermUnary(EOpUint64BitsToDouble);
convert->getAsUnaryNode()->setOperand(uint64);
convert->setLoc(loc);
convert->setType(TType(EbtDouble, EvqTemporary));
node = convert;
break;
}
case EOpF16tof32:
case EOpF32tof16:
{

View File

@ -158,9 +158,7 @@ inline bool IsValidGlsl(const char* cname, char retOrder, char retType, char arg
const bool isVec = dim0Max > 1 || argType == 'V';
const bool isMat = dim1Max > 1 || argType == 'M';
if (argType == 'D' || // avoid double args
retType == 'D' || // avoid double return
(isVec && dim0 == 1) || // avoid vec1
if ((isVec && dim0 == 1) || // avoid vec1
(isMat && dim0 == 1 && dim1 == 1)) // avoid mat1x1
return false;
@ -582,7 +580,7 @@ void TBuiltInParseablesHlsl::identifyBuiltIns(int version, EProfile profile, con
symbolTable.relateToOperator("AllMemoryBarrier", EOpMemoryBarrier);
symbolTable.relateToOperator("AllMemoryBarrierWithGroupSync", EOpAllMemoryBarrierWithGroupSync);
symbolTable.relateToOperator("any", EOpAny);
symbolTable.relateToOperator("asdouble", EOpUint64BitsToDouble);
symbolTable.relateToOperator("asdouble", EOpAsDouble);
symbolTable.relateToOperator("asfloat", EOpIntBitsToFloat);
symbolTable.relateToOperator("asin", EOpAsin);
symbolTable.relateToOperator("asint", EOpFloatBitsToInt);
@ -651,7 +649,7 @@ void TBuiltInParseablesHlsl::identifyBuiltIns(int version, EProfile profile, con
symbolTable.relateToOperator("log", EOpLog);
symbolTable.relateToOperator("log10", EOpLog10);
symbolTable.relateToOperator("log2", EOpLog2);
// symbolTable.relateToOperator("mad");
symbolTable.relateToOperator("mad", EOpFma);
symbolTable.relateToOperator("max", EOpMax);
symbolTable.relateToOperator("min", EOpMin);
symbolTable.relateToOperator("modf", EOpModf);