diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/bugs/gh-6632.slang | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/bugs/gh-6632.slang b/tests/bugs/gh-6632.slang new file mode 100644 index 000000000..f9240e63b --- /dev/null +++ b/tests/bugs/gh-6632.slang @@ -0,0 +1,29 @@ +//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK):-cpu + +// CHECK: 40000000 + +//TEST_INPUT:ubuffer(data=[0], stride=4):out,name=outputBuffer + +// Non-differentiable function with no_diff parameters and return type +no_diff float targetFunc(no_diff float x) +{ + return x * 2.0f; +} + +[Differentiable] +float errorForward(no_diff float x) +{ + float result = targetFunc(x); + return result; +} + +RWStructuredBuffer<float> outputBuffer; + +[numthreads(1, 1, 1)] +void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID) +{ + float input = 1.0f; + + outputBuffer[0] = errorForward(input); +} + |
