Commit 86e49d17 by Rex Xu

HLSL: Move frexp() to a separate test file.

parent aa3c64c2
hlsl.intrinsic.frexp.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:3 Function Definition: PixelShaderFunctionS(f1;f1; ( temp float)
0:3 Function Parameters:
0:3 'inF0' ( in float)
0:3 'inF1' ( in float)
0:? Sequence
0:4 Sequence
0:4 move second child to first child ( temp float)
0:4 'r000' ( temp float)
0:4 frexp ( temp float)
0:4 'inF0' ( in float)
0:4 'inF1' ( in float)
0:5 Branch: Return with expression
0:5 Constant:
0:5 0.000000
0:9 Function Definition: PixelShaderFunction2(vf2;vf2; ( temp 2-component vector of float)
0:9 Function Parameters:
0:9 'inF0' ( in 2-component vector of float)
0:9 'inF1' ( in 2-component vector of float)
0:? Sequence
0:10 Sequence
0:10 move second child to first child ( temp 2-component vector of float)
0:10 'r000' ( temp 2-component vector of float)
0:10 frexp ( temp 2-component vector of float)
0:10 'inF0' ( in 2-component vector of float)
0:10 'inF1' ( in 2-component vector of float)
0:11 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:15 Function Definition: PixelShaderFunction3(vf3;vf3; ( temp 3-component vector of float)
0:15 Function Parameters:
0:15 'inF0' ( in 3-component vector of float)
0:15 'inF1' ( in 3-component vector of float)
0:? Sequence
0:16 Sequence
0:16 move second child to first child ( temp 3-component vector of float)
0:16 'r000' ( temp 3-component vector of float)
0:16 frexp ( temp 3-component vector of float)
0:16 'inF0' ( in 3-component vector of float)
0:16 'inF1' ( in 3-component vector of float)
0:17 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:21 Function Definition: PixelShaderFunction(vf4;vf4; ( temp 4-component vector of float)
0:21 Function Parameters:
0:21 'inF0' ( in 4-component vector of float)
0:21 'inF1' ( in 4-component vector of float)
0:? Sequence
0:22 Sequence
0:22 move second child to first child ( temp 4-component vector of float)
0:22 'r000' ( temp 4-component vector of float)
0:22 frexp ( temp 4-component vector of float)
0:22 'inF0' ( in 4-component vector of float)
0:22 'inF1' ( in 4-component vector of float)
0:23 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:33 Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
0:33 Function Parameters:
0:? Sequence
0:35 move second child to first child ( temp 4-component vector of float)
0:35 color: direct index for structure ( temp 4-component vector of float)
0:35 'ps_output' ( temp structure{ temp 4-component vector of float color})
0:35 Constant:
0:35 0 (const int)
0:35 Constant:
0:35 1.000000
0:35 1.000000
0:35 1.000000
0:35 1.000000
0:36 Branch: Return with expression
0:36 'ps_output' ( temp structure{ temp 4-component vector of float color})
0:33 Function Definition: main( ( temp void)
0:33 Function Parameters:
0:? Sequence
0:33 Sequence
0:33 move second child to first child ( temp 4-component vector of float)
0:? 'color' (layout( location=0) out 4-component vector of float)
0:33 color: direct index for structure ( temp 4-component vector of float)
0:33 Function Call: @main( ( temp structure{ temp 4-component vector of float color})
0:33 Constant:
0:33 0 (const int)
0:? Linker Objects
0:? 'color' (layout( location=0) out 4-component vector of float)
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:3 Function Definition: PixelShaderFunctionS(f1;f1; ( temp float)
0:3 Function Parameters:
0:3 'inF0' ( in float)
0:3 'inF1' ( in float)
0:? Sequence
0:4 Sequence
0:4 move second child to first child ( temp float)
0:4 'r000' ( temp float)
0:4 frexp ( temp float)
0:4 'inF0' ( in float)
0:4 'inF1' ( in float)
0:5 Branch: Return with expression
0:5 Constant:
0:5 0.000000
0:9 Function Definition: PixelShaderFunction2(vf2;vf2; ( temp 2-component vector of float)
0:9 Function Parameters:
0:9 'inF0' ( in 2-component vector of float)
0:9 'inF1' ( in 2-component vector of float)
0:? Sequence
0:10 Sequence
0:10 move second child to first child ( temp 2-component vector of float)
0:10 'r000' ( temp 2-component vector of float)
0:10 frexp ( temp 2-component vector of float)
0:10 'inF0' ( in 2-component vector of float)
0:10 'inF1' ( in 2-component vector of float)
0:11 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:15 Function Definition: PixelShaderFunction3(vf3;vf3; ( temp 3-component vector of float)
0:15 Function Parameters:
0:15 'inF0' ( in 3-component vector of float)
0:15 'inF1' ( in 3-component vector of float)
0:? Sequence
0:16 Sequence
0:16 move second child to first child ( temp 3-component vector of float)
0:16 'r000' ( temp 3-component vector of float)
0:16 frexp ( temp 3-component vector of float)
0:16 'inF0' ( in 3-component vector of float)
0:16 'inF1' ( in 3-component vector of float)
0:17 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:21 Function Definition: PixelShaderFunction(vf4;vf4; ( temp 4-component vector of float)
0:21 Function Parameters:
0:21 'inF0' ( in 4-component vector of float)
0:21 'inF1' ( in 4-component vector of float)
0:? Sequence
0:22 Sequence
0:22 move second child to first child ( temp 4-component vector of float)
0:22 'r000' ( temp 4-component vector of float)
0:22 frexp ( temp 4-component vector of float)
0:22 'inF0' ( in 4-component vector of float)
0:22 'inF1' ( in 4-component vector of float)
0:23 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:33 Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
0:33 Function Parameters:
0:? Sequence
0:35 move second child to first child ( temp 4-component vector of float)
0:35 color: direct index for structure ( temp 4-component vector of float)
0:35 'ps_output' ( temp structure{ temp 4-component vector of float color})
0:35 Constant:
0:35 0 (const int)
0:35 Constant:
0:35 1.000000
0:35 1.000000
0:35 1.000000
0:35 1.000000
0:36 Branch: Return with expression
0:36 'ps_output' ( temp structure{ temp 4-component vector of float color})
0:33 Function Definition: main( ( temp void)
0:33 Function Parameters:
0:? Sequence
0:33 Sequence
0:33 move second child to first child ( temp 4-component vector of float)
0:? 'color' (layout( location=0) out 4-component vector of float)
0:33 color: direct index for structure ( temp 4-component vector of float)
0:33 Function Call: @main( ( temp structure{ temp 4-component vector of float color})
0:33 Constant:
0:33 0 (const int)
0:? Linker Objects
0:? 'color' (layout( location=0) out 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 94
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 91
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 11 "PixelShaderFunctionS(f1;f1;"
Name 9 "inF0"
Name 10 "inF1"
Name 18 "PixelShaderFunction2(vf2;vf2;"
Name 16 "inF0"
Name 17 "inF1"
Name 25 "PixelShaderFunction3(vf3;vf3;"
Name 23 "inF0"
Name 24 "inF1"
Name 32 "PixelShaderFunction(vf4;vf4;"
Name 30 "inF0"
Name 31 "inF1"
Name 34 "PS_OUTPUT"
MemberName 34(PS_OUTPUT) 0 "color"
Name 36 "@main("
Name 38 "r000"
Name 41 "ResType"
Name 48 "r000"
Name 51 "ResType"
Name 60 "r000"
Name 63 "ResType"
Name 71 "r000"
Name 74 "ResType"
Name 83 "ps_output"
Name 91 "color"
Decorate 91(color) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypePointer Function 6(float)
8: TypeFunction 6(float) 7(ptr) 7(ptr)
13: TypeVector 6(float) 2
14: TypePointer Function 13(fvec2)
15: TypeFunction 13(fvec2) 14(ptr) 14(ptr)
20: TypeVector 6(float) 3
21: TypePointer Function 20(fvec3)
22: TypeFunction 20(fvec3) 21(ptr) 21(ptr)
27: TypeVector 6(float) 4
28: TypePointer Function 27(fvec4)
29: TypeFunction 27(fvec4) 28(ptr) 28(ptr)
34(PS_OUTPUT): TypeStruct 27(fvec4)
35: TypeFunction 34(PS_OUTPUT)
40: TypeInt 32 1
41(ResType): TypeStruct 6(float) 40(int)
45: 6(float) Constant 0
50: TypeVector 40(int) 2
51(ResType): TypeStruct 13(fvec2) 50(ivec2)
55: 6(float) Constant 1065353216
56: 6(float) Constant 1073741824
57: 13(fvec2) ConstantComposite 55 56
62: TypeVector 40(int) 3
63(ResType): TypeStruct 20(fvec3) 62(ivec3)
67: 6(float) Constant 1077936128
68: 20(fvec3) ConstantComposite 55 56 67
73: TypeVector 40(int) 4
74(ResType): TypeStruct 27(fvec4) 73(ivec4)
78: 6(float) Constant 1082130432
79: 27(fvec4) ConstantComposite 55 56 67 78
82: TypePointer Function 34(PS_OUTPUT)
84: 40(int) Constant 0
85: 27(fvec4) ConstantComposite 55 55 55 55
90: TypePointer Output 27(fvec4)
91(color): 90(ptr) Variable Output
4(main): 2 Function None 3
5: Label
92:34(PS_OUTPUT) FunctionCall 36(@main()
93: 27(fvec4) CompositeExtract 92 0
Store 91(color) 93
Return
FunctionEnd
11(PixelShaderFunctionS(f1;f1;): 6(float) Function None 8
9(inF0): 7(ptr) FunctionParameter
10(inF1): 7(ptr) FunctionParameter
12: Label
38(r000): 7(ptr) Variable Function
39: 6(float) Load 9(inF0)
42: 41(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 39
43: 40(int) CompositeExtract 42 1
Store 10(inF1) 43
44: 6(float) CompositeExtract 42 0
Store 38(r000) 44
ReturnValue 45
FunctionEnd
18(PixelShaderFunction2(vf2;vf2;): 13(fvec2) Function None 15
16(inF0): 14(ptr) FunctionParameter
17(inF1): 14(ptr) FunctionParameter
19: Label
48(r000): 14(ptr) Variable Function
49: 13(fvec2) Load 16(inF0)
52: 51(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 49
53: 50(ivec2) CompositeExtract 52 1
Store 17(inF1) 53
54: 13(fvec2) CompositeExtract 52 0
Store 48(r000) 54
ReturnValue 57
FunctionEnd
25(PixelShaderFunction3(vf3;vf3;): 20(fvec3) Function None 22
23(inF0): 21(ptr) FunctionParameter
24(inF1): 21(ptr) FunctionParameter
26: Label
60(r000): 21(ptr) Variable Function
61: 20(fvec3) Load 23(inF0)
64: 63(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 61
65: 62(ivec3) CompositeExtract 64 1
Store 24(inF1) 65
66: 20(fvec3) CompositeExtract 64 0
Store 60(r000) 66
ReturnValue 68
FunctionEnd
32(PixelShaderFunction(vf4;vf4;): 27(fvec4) Function None 29
30(inF0): 28(ptr) FunctionParameter
31(inF1): 28(ptr) FunctionParameter
33: Label
71(r000): 28(ptr) Variable Function
72: 27(fvec4) Load 30(inF0)
75: 74(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 72
76: 73(ivec4) CompositeExtract 75 1
Store 31(inF1) 76
77: 27(fvec4) CompositeExtract 75 0
Store 71(r000) 77
ReturnValue 79
FunctionEnd
36(@main():34(PS_OUTPUT) Function None 35
37: Label
83(ps_output): 82(ptr) Variable Function
86: 28(ptr) AccessChain 83(ps_output) 84
Store 86 85
87:34(PS_OUTPUT) Load 83(ps_output)
ReturnValue 87
FunctionEnd
hlsl.intrinsic.frexp.vert
Shader version: 450
0:? Sequence
0:2 Function Definition: VertexShaderFunctionS(f1;f1; ( temp float)
0:2 Function Parameters:
0:2 'inF0' ( in float)
0:2 'inF1' ( in float)
0:? Sequence
0:3 frexp ( temp float)
0:3 'inF0' ( in float)
0:3 'inF1' ( in float)
0:4 Branch: Return with expression
0:4 Constant:
0:4 0.000000
0:8 Function Definition: VertexShaderFunction2(vf2;vf2; ( temp 2-component vector of float)
0:8 Function Parameters:
0:8 'inF0' ( in 2-component vector of float)
0:8 'inF1' ( in 2-component vector of float)
0:? Sequence
0:9 frexp ( temp 2-component vector of float)
0:9 'inF0' ( in 2-component vector of float)
0:9 'inF1' ( in 2-component vector of float)
0:10 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:14 Function Definition: VertexShaderFunction3(vf3;vf3; ( temp 3-component vector of float)
0:14 Function Parameters:
0:14 'inF0' ( in 3-component vector of float)
0:14 'inF1' ( in 3-component vector of float)
0:? Sequence
0:15 frexp ( temp 3-component vector of float)
0:15 'inF0' ( in 3-component vector of float)
0:15 'inF1' ( in 3-component vector of float)
0:16 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:20 Function Definition: VertexShaderFunction4(vf4;vf4; ( temp 4-component vector of float)
0:20 Function Parameters:
0:20 'inF0' ( in 4-component vector of float)
0:20 'inF1' ( in 4-component vector of float)
0:? Sequence
0:21 frexp ( temp 4-component vector of float)
0:21 'inF0' ( in 4-component vector of float)
0:21 'inF1' ( in 4-component vector of float)
0:22 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:? Linker Objects
Linked vertex stage:
WARNING: Linking vertex stage: Entry point not found
Shader version: 450
0:? Sequence
0:2 Function Definition: VertexShaderFunctionS(f1;f1; ( temp float)
0:2 Function Parameters:
0:2 'inF0' ( in float)
0:2 'inF1' ( in float)
0:? Sequence
0:3 frexp ( temp float)
0:3 'inF0' ( in float)
0:3 'inF1' ( in float)
0:4 Branch: Return with expression
0:4 Constant:
0:4 0.000000
0:8 Function Definition: VertexShaderFunction2(vf2;vf2; ( temp 2-component vector of float)
0:8 Function Parameters:
0:8 'inF0' ( in 2-component vector of float)
0:8 'inF1' ( in 2-component vector of float)
0:? Sequence
0:9 frexp ( temp 2-component vector of float)
0:9 'inF0' ( in 2-component vector of float)
0:9 'inF1' ( in 2-component vector of float)
0:10 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:14 Function Definition: VertexShaderFunction3(vf3;vf3; ( temp 3-component vector of float)
0:14 Function Parameters:
0:14 'inF0' ( in 3-component vector of float)
0:14 'inF1' ( in 3-component vector of float)
0:? Sequence
0:15 frexp ( temp 3-component vector of float)
0:15 'inF0' ( in 3-component vector of float)
0:15 'inF1' ( in 3-component vector of float)
0:16 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:20 Function Definition: VertexShaderFunction4(vf4;vf4; ( temp 4-component vector of float)
0:20 Function Parameters:
0:20 'inF0' ( in 4-component vector of float)
0:20 'inF1' ( in 4-component vector of float)
0:? Sequence
0:21 frexp ( temp 4-component vector of float)
0:21 'inF0' ( in 4-component vector of float)
0:21 'inF1' ( in 4-component vector of float)
0:22 Branch: Return with expression
0:? Constant:
0:? 1.000000
0:? 2.000000
0:? 3.000000
0:? 4.000000
0:? Linker Objects
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 74
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "VertexShaderFunction"
Name 4 "VertexShaderFunction"
Name 11 "VertexShaderFunctionS(f1;f1;"
Name 9 "inF0"
Name 10 "inF1"
Name 18 "VertexShaderFunction2(vf2;vf2;"
Name 16 "inF0"
Name 17 "inF1"
Name 25 "VertexShaderFunction3(vf3;vf3;"
Name 23 "inF0"
Name 24 "inF1"
Name 32 "VertexShaderFunction4(vf4;vf4;"
Name 30 "inF0"
Name 31 "inF1"
Name 36 "ResType"
Name 45 "ResType"
Name 56 "ResType"
Name 66 "ResType"
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypePointer Function 6(float)
8: TypeFunction 6(float) 7(ptr) 7(ptr)
13: TypeVector 6(float) 2
14: TypePointer Function 13(fvec2)
15: TypeFunction 13(fvec2) 14(ptr) 14(ptr)
20: TypeVector 6(float) 3
21: TypePointer Function 20(fvec3)
22: TypeFunction 20(fvec3) 21(ptr) 21(ptr)
27: TypeVector 6(float) 4
28: TypePointer Function 27(fvec4)
29: TypeFunction 27(fvec4) 28(ptr) 28(ptr)
35: TypeInt 32 1
36(ResType): TypeStruct 6(float) 35(int)
40: 6(float) Constant 0
44: TypeVector 35(int) 2
45(ResType): TypeStruct 13(fvec2) 44(ivec2)
49: 6(float) Constant 1065353216
50: 6(float) Constant 1073741824
51: 13(fvec2) ConstantComposite 49 50
55: TypeVector 35(int) 3
56(ResType): TypeStruct 20(fvec3) 55(ivec3)
60: 6(float) Constant 1077936128
61: 20(fvec3) ConstantComposite 49 50 60
65: TypeVector 35(int) 4
66(ResType): TypeStruct 27(fvec4) 65(ivec4)
70: 6(float) Constant 1082130432
71: 27(fvec4) ConstantComposite 49 50 60 70
4(VertexShaderFunction): 2 Function None 3
5: Label
Return
FunctionEnd
11(VertexShaderFunctionS(f1;f1;): 6(float) Function None 8
9(inF0): 7(ptr) FunctionParameter
10(inF1): 7(ptr) FunctionParameter
12: Label
34: 6(float) Load 9(inF0)
37: 36(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 34
38: 35(int) CompositeExtract 37 1
Store 10(inF1) 38
39: 6(float) CompositeExtract 37 0
ReturnValue 40
FunctionEnd
18(VertexShaderFunction2(vf2;vf2;): 13(fvec2) Function None 15
16(inF0): 14(ptr) FunctionParameter
17(inF1): 14(ptr) FunctionParameter
19: Label
43: 13(fvec2) Load 16(inF0)
46: 45(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 43
47: 44(ivec2) CompositeExtract 46 1
Store 17(inF1) 47
48: 13(fvec2) CompositeExtract 46 0
ReturnValue 51
FunctionEnd
25(VertexShaderFunction3(vf3;vf3;): 20(fvec3) Function None 22
23(inF0): 21(ptr) FunctionParameter
24(inF1): 21(ptr) FunctionParameter
26: Label
54: 20(fvec3) Load 23(inF0)
57: 56(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 54
58: 55(ivec3) CompositeExtract 57 1
Store 24(inF1) 58
59: 20(fvec3) CompositeExtract 57 0
ReturnValue 61
FunctionEnd
32(VertexShaderFunction4(vf4;vf4;): 27(fvec4) Function None 29
30(inF0): 28(ptr) FunctionParameter
31(inF1): 28(ptr) FunctionParameter
33: Label
64: 27(fvec4) Load 30(inF0)
67: 66(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 64
68: 65(ivec4) CompositeExtract 67 1
Store 31(inF1) 68
69: 27(fvec4) CompositeExtract 67 0
ReturnValue 71
FunctionEnd
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
float PixelShaderFunctionS(float inF0, float inF1)
{
float r000 = frexp(inF0, inF1);
return 0.0;
}
float2 PixelShaderFunction2(float2 inF0, float2 inF1)
{
float2 r000 = frexp(inF0, inF1);
return float2(1,2);
}
float3 PixelShaderFunction3(float3 inF0, float3 inF1)
{
float3 r000 = frexp(inF0, inF1);
return float3(1,2,3);
}
float4 PixelShaderFunction(float4 inF0, float4 inF1)
{
float4 r000 = frexp(inF0, inF1);
return float4(1,2,3,4);
}
// TODO: FXC doesn't accept this with (), but glslang doesn't accept it without.
#define MATFNS(MT) \
MT r000 = frexp(inF0, inF1);
struct PS_OUTPUT { float4 color : SV_Target0; };
PS_OUTPUT main()
{
PS_OUTPUT ps_output;
ps_output.color = 1.0;
return ps_output;
};
float VertexShaderFunctionS(float inF0, float inF1)
{
frexp(inF0, inF1);
return 0.0;
}
float2 VertexShaderFunction2(float2 inF0, float2 inF1)
{
frexp(inF0, inF1);
return float2(1,2);
}
float3 VertexShaderFunction3(float3 inF0, float3 inF1)
{
frexp(inF0, inF1);
return float3(1,2,3);
}
float4 VertexShaderFunction4(float4 inF0, float4 inF1)
{
frexp(inF0, inF1);
return float4(1,2,3,4);
}
// TODO: FXC doesn't accept this with (), but glslang doesn't accept it without.
#define MATFNS() \
frexp(inF0, inF1);
...@@ -52,7 +52,6 @@ float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint i ...@@ -52,7 +52,6 @@ float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint i
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
float r033 = fmod(inF0, inF1); float r033 = fmod(inF0, inF1);
float r034 = frac(inF0); float r034 = frac(inF0);
float r035 = frexp(inF0, inF1);
float r036 = fwidth(inF0); float r036 = fwidth(inF0);
bool r037 = isinf(inF0); bool r037 = isinf(inF0);
bool r038 = isnan(inF0); bool r038 = isnan(inF0);
...@@ -136,7 +135,6 @@ float2 PixelShaderFunction2(float2 inF0, float2 inF1, float2 inF2, uint2 inU0, u ...@@ -136,7 +135,6 @@ float2 PixelShaderFunction2(float2 inF0, float2 inF1, float2 inF2, uint2 inU0, u
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
float2 r035 = fmod(inF0, inF1); float2 r035 = fmod(inF0, inF1);
float2 r036 = frac(inF0); float2 r036 = frac(inF0);
float2 r037 = frexp(inF0, inF1);
float2 r038 = fwidth(inF0); float2 r038 = fwidth(inF0);
bool2 r039 = isinf(inF0); bool2 r039 = isinf(inF0);
bool2 r040 = isnan(inF0); bool2 r040 = isnan(inF0);
...@@ -217,7 +215,6 @@ float3 PixelShaderFunction3(float3 inF0, float3 inF1, float3 inF2, uint3 inU0, u ...@@ -217,7 +215,6 @@ float3 PixelShaderFunction3(float3 inF0, float3 inF1, float3 inF2, uint3 inU0, u
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
float3 r036 = fmod(inF0, inF1); float3 r036 = fmod(inF0, inF1);
float3 r037 = frac(inF0); float3 r037 = frac(inF0);
float3 r038 = frexp(inF0, inF1);
float3 r039 = fwidth(inF0); float3 r039 = fwidth(inF0);
bool3 r040 = isinf(inF0); bool3 r040 = isinf(inF0);
bool3 r041 = isnan(inF0); bool3 r041 = isnan(inF0);
...@@ -299,7 +296,6 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ui ...@@ -299,7 +296,6 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ui
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
float4 r036 = fmod(inF0, inF1); float4 r036 = fmod(inF0, inF1);
float4 r037 = frac(inF0); float4 r037 = frac(inF0);
float4 r038 = frexp(inF0, inF1);
float4 r039 = fwidth(inF0); float4 r039 = fwidth(inF0);
bool4 r040 = isinf(inF0); bool4 r040 = isinf(inF0);
bool4 r041 = isnan(inF0); bool4 r041 = isnan(inF0);
...@@ -369,7 +365,6 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ui ...@@ -369,7 +365,6 @@ float4 PixelShaderFunction(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ui
MT r021 = floor(inF0); \ MT r021 = floor(inF0); \
MT r022 = fmod(inF0, inF1); \ MT r022 = fmod(inF0, inF1); \
MT r023 = frac(inF0); \ MT r023 = frac(inF0); \
MT r024 = frexp(inF0, inF1); \
MT r025 = fwidth(inF0); \ MT r025 = fwidth(inF0); \
MT r026 = ldexp(inF0, inF1); \ MT r026 = ldexp(inF0, inF1); \
MT r026a = lerp(inF0, inF1, inF2); \ MT r026a = lerp(inF0, inF1, inF2); \
......
...@@ -28,7 +28,6 @@ float VertexShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint ...@@ -28,7 +28,6 @@ float VertexShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
fmod(inF0, inF1); fmod(inF0, inF1);
frac(inF0); frac(inF0);
frexp(inF0, inF1);
isinf(inF0); isinf(inF0);
isnan(inF0); isnan(inF0);
ldexp(inF0, inF1); ldexp(inF0, inF1);
...@@ -99,7 +98,6 @@ float2 VertexShaderFunction2(float2 inF0, float2 inF1, float2 inF2, uint2 inU0, ...@@ -99,7 +98,6 @@ float2 VertexShaderFunction2(float2 inF0, float2 inF1, float2 inF2, uint2 inU0,
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
fmod(inF0, inF1); fmod(inF0, inF1);
frac(inF0); frac(inF0);
frexp(inF0, inF1);
isinf(inF0); isinf(inF0);
isnan(inF0); isnan(inF0);
ldexp(inF0, inF1); ldexp(inF0, inF1);
...@@ -170,7 +168,6 @@ float3 VertexShaderFunction3(float3 inF0, float3 inF1, float3 inF2, uint3 inU0, ...@@ -170,7 +168,6 @@ float3 VertexShaderFunction3(float3 inF0, float3 inF1, float3 inF2, uint3 inU0,
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
fmod(inF0, inF1); fmod(inF0, inF1);
frac(inF0); frac(inF0);
frexp(inF0, inF1);
isinf(inF0); isinf(inF0);
isnan(inF0); isnan(inF0);
ldexp(inF0, inF1); ldexp(inF0, inF1);
...@@ -241,7 +238,6 @@ float4 VertexShaderFunction4(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ...@@ -241,7 +238,6 @@ float4 VertexShaderFunction4(float4 inF0, float4 inF1, float4 inF2, uint4 inU0,
// TODO: fma(inD0, inD1, inD2); // TODO: fma(inD0, inD1, inD2);
fmod(inF0, inF1); fmod(inF0, inF1);
frac(inF0); frac(inF0);
frexp(inF0, inF1);
isinf(inF0); isinf(inF0);
isnan(inF0); isnan(inF0);
ldexp(inF0, inF1); ldexp(inF0, inF1);
...@@ -305,7 +301,6 @@ float4 VertexShaderFunction4(float4 inF0, float4 inF1, float4 inF2, uint4 inU0, ...@@ -305,7 +301,6 @@ float4 VertexShaderFunction4(float4 inF0, float4 inF1, float4 inF2, uint4 inU0,
floor(inF0); \ floor(inF0); \
fmod(inF0, inF1); \ fmod(inF0, inF1); \
frac(inF0); \ frac(inF0); \
frexp(inF0, inF1); \
ldexp(inF0, inF1); \ ldexp(inF0, inF1); \
lerp(inF0, inF1, inF2); \ lerp(inF0, inF1, inF2); \
log(inF0); \ log(inF0); \
......
...@@ -138,6 +138,7 @@ INSTANTIATE_TEST_CASE_P( ...@@ -138,6 +138,7 @@ INSTANTIATE_TEST_CASE_P(
{"hlsl.intrinsics.f1632.frag", "main"}, {"hlsl.intrinsics.f1632.frag", "main"},
{"hlsl.intrinsics.f3216.frag", "main"}, {"hlsl.intrinsics.f3216.frag", "main"},
{"hlsl.intrinsics.frag", "main"}, {"hlsl.intrinsics.frag", "main"},
{"hlsl.intrinsic.frexp.frag", "main"},
{"hlsl.intrinsics.lit.frag", "PixelShaderFunction"}, {"hlsl.intrinsics.lit.frag", "PixelShaderFunction"},
{"hlsl.intrinsics.negative.comp", "ComputeShaderFunction"}, {"hlsl.intrinsics.negative.comp", "ComputeShaderFunction"},
{"hlsl.intrinsics.negative.frag", "PixelShaderFunction"}, {"hlsl.intrinsics.negative.frag", "PixelShaderFunction"},
...@@ -239,6 +240,7 @@ INSTANTIATE_TEST_CASE_P( ...@@ -239,6 +240,7 @@ INSTANTIATE_TEST_CASE_P(
{"hlsl.structStructName.frag", "main"}, {"hlsl.structStructName.frag", "main"},
{"hlsl.this.frag", "main"}, {"hlsl.this.frag", "main"},
{"hlsl.intrinsics.vert", "VertexShaderFunction"}, {"hlsl.intrinsics.vert", "VertexShaderFunction"},
{"hlsl.intrinsic.frexp.vert", "VertexShaderFunction"},
{"hlsl.matType.frag", "PixelShaderFunction"}, {"hlsl.matType.frag", "PixelShaderFunction"},
{"hlsl.matType.bool.frag", "main"}, {"hlsl.matType.bool.frag", "main"},
{"hlsl.matType.int.frag", "main"}, {"hlsl.matType.int.frag", "main"},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment