From a0458266d7cd5d802b8c51e6a997b4bf0d9beb82 Mon Sep 17 00:00:00 2001 From: Yong He Date: Fri, 3 Nov 2017 09:38:02 -0400 Subject: in-progress work --- tests/compute/assoctype-complex.slang | 20 ++++---------------- tests/compute/generics-constraint1.slang | 2 +- tests/compute/generics-constructor.slang | 17 +++++++++++++++++ 3 files changed, 22 insertions(+), 17 deletions(-) create mode 100644 tests/compute/generics-constructor.slang (limited to 'tests') diff --git a/tests/compute/assoctype-complex.slang b/tests/compute/assoctype-complex.slang index de3f1a103..f29d231b6 100644 --- a/tests/compute/assoctype-complex.slang +++ b/tests/compute/assoctype-complex.slang @@ -30,30 +30,18 @@ struct Simple : ISimple return v0.sub(4, v1.sub(1,2)); } }; -/* + __generic T.U.V test(T simple, T.U v0, T.U v1) { return simple.add(v0, v1); } -__generic -T test(T v0, T v1) -{ - return v0 + v1; -} -*/ -__generic -T test(T v0, T v1) -{ - return T(3.0); -} [numthreads(4, 1, 1)] void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID) { - //Simple s; - //Val v0, v1; - //float outVal = test(s, v0, v1); // == 1.0 - float outVal = test(1.0, 2.0); + Simple s; + Val v0, v1; + float outVal = test(s, v0, v1); // == 1.0 outputBuffer[dispatchThreadID.x] = outVal; } \ No newline at end of file diff --git a/tests/compute/generics-constraint1.slang b/tests/compute/generics-constraint1.slang index ff90c1cc9..aa8d398e8 100644 --- a/tests/compute/generics-constraint1.slang +++ b/tests/compute/generics-constraint1.slang @@ -6,7 +6,7 @@ RWStructuredBuffer outputBuffer; __generic T test(T v0, T v1) { - return T(3.0); + return v0; } [numthreads(4, 1, 1)] diff --git a/tests/compute/generics-constructor.slang b/tests/compute/generics-constructor.slang new file mode 100644 index 000000000..c7473cc8b --- /dev/null +++ b/tests/compute/generics-constructor.slang @@ -0,0 +1,17 @@ +//TEST(smoke, compute):COMPARE_COMPUTE:-xslang -use-ir +//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):dxbinding(0),glbinding(0),out + +RWStructuredBuffer outputBuffer; + +__generic +T test(T v0, T v1) +{ + return T(3.0); +} + +[numthreads(4, 1, 1)] +void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID) +{ + float outVal = test(1.0, 2.0); + outputBuffer[dispatchThreadID.x] = outVal; +} \ No newline at end of file -- cgit v1.2.3