From d87493a46c00be37b820a473c0827bbb865eb222 Mon Sep 17 00:00:00 2001 From: Yong He Date: Mon, 2 Oct 2023 15:39:34 -0700 Subject: More direct-SPIRV fixes. (#3257) * More direct-SPIRV fixes. * Fix array-reg-to-mem. --------- Co-authored-by: Yong He --- tests/spirv/mutating-method-syn.slang | 38 +++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 tests/spirv/mutating-method-syn.slang (limited to 'tests') diff --git a/tests/spirv/mutating-method-syn.slang b/tests/spirv/mutating-method-syn.slang new file mode 100644 index 000000000..14adc001f --- /dev/null +++ b/tests/spirv/mutating-method-syn.slang @@ -0,0 +1,38 @@ +// mutating-method-syn.slang +//TEST(compute, vulkan):COMPARE_COMPUTE_EX(filecheck-buffer=CHECK):-vk -compute +// Test ability to directly output SPIR-V + +interface IFoo +{ + [mutating] + int bar(inout int y); +} + +struct Val : IFoo +{ + int x; + + int bar(int y) + { + return x + y; + } +} + +int test(inout T f, inout int y) +{ + return f.bar(y); +} + +//TEST_INPUT:set result = out ubuffer(data=[0 0 0 0], stride=4) + +RWStructuredBuffer result; +[numthreads(1,1,1)] +void computeMain() +{ + Val v; + int y = 0; + v.x = 1; + + // CHECK: 1 + result[0] = test(v, y); +} -- cgit v1.2.3