summaryrefslogtreecommitdiff
path: root/tests/compute
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2020-01-21 18:49:44 -0500
committerTim Foley <tfoleyNV@users.noreply.github.com>2020-01-21 15:49:44 -0800
commit5988ce80f580d57ce6718a61c86da6296caf0845 (patch)
tree5549f197d437c578556bb25d65d57ff213bbb55b /tests/compute
parent47392bc72b826b4ad427b703391a77e697735a65 (diff)
HLSL intrinsic coverage (#1169)
* Added hlsl-intrinsic test folder. Enabled ceil as works across targets. * log10 support. * Fix float % on CPU/CUDA to match HLSL which is fmod (not fremainder). * Added log10 tests back to scalar-float.slang * Don't add the ( for $Sx - it's clearer what's going on without it.
Diffstat (limited to 'tests/compute')
-rw-r--r--tests/compute/hlsl-scalar-float-intrinsic.slang88
-rw-r--r--tests/compute/hlsl-scalar-float-intrinsic.slang.expected.txt4
2 files changed, 0 insertions, 92 deletions
diff --git a/tests/compute/hlsl-scalar-float-intrinsic.slang b/tests/compute/hlsl-scalar-float-intrinsic.slang
deleted file mode 100644
index 213db4b23..000000000
--- a/tests/compute/hlsl-scalar-float-intrinsic.slang
+++ /dev/null
@@ -1,88 +0,0 @@
-//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute
-//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute
-//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12
-//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute
-//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-cuda -compute
-
-//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name outputBuffer
-RWStructuredBuffer<int> outputBuffer;
-
-[numthreads(4, 1, 1)]
-void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
-{
- int idx = int(dispatchThreadID.x);
-
- float f = idx * (1.0f / (4.0f - 1));
-
- int it = 0;
- float ft = 0.0f;
-
- // fmod
- // ft += f % 0.5f;
-
- ft += sin(f);
- ft += cos(f);
- ft += tan(f);
-
- ft += asin(f);
- ft += acos(f);
- ft += atan(f);
-
- ft += atan2(f, 2.0);
-
- {
- float sf, cf;
- sincos(f, sf, cf);
-
- ft += sf;
- ft += cf;
- }
-
- ft += rcp(1.0 + f);
- ft += sign(f - 0.5);
-
- ft += saturate(f * 4 - 2.0);
-
- ft += sqrt(f);
- ft += rsqrt(1.0f + f);
-
- ft += exp2(f);
- ft += exp(f);
-
-
- ft += frac(f * 3);
-// ft += ceil(f * 5 - 3);
-
- ft += floor(f * 10 - 7);
- ft += trunc(f * 7);
-
-
- ft += log(f + 10.0);
- ft += log2(f * 3 + 2);
-
- // ft += log10(f * 10 + 4);
-
- ft += abs(f * 4 - 2.0f);
-
- ft += min(0.5, f);
- ft += max(f, 0.75);
-
- ft += pow(0.5, f);
-
- ft += smoothstep(0.2, 0.7, f);
- ft += lerp(-100, 100, f);
-
-
- ft += clamp(f, 0.1, 0.3);
-
- ft += step(f, 0.5);
-
- int vi = asint(f - f) + idx;
-
- ft += float(vi);
-
- uint vu = asuint(f);
- ft += asfloat(vu);
-
- outputBuffer[idx] = int(ft * 16);
-} \ No newline at end of file
diff --git a/tests/compute/hlsl-scalar-float-intrinsic.slang.expected.txt b/tests/compute/hlsl-scalar-float-intrinsic.slang.expected.txt
deleted file mode 100644
index 04d17659c..000000000
--- a/tests/compute/hlsl-scalar-float-intrinsic.slang.expected.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-FFFFFA3C
-FFFFFEEC
-3CA
-8C1