From 1e1a49ccf595dcc99bd9792a47199ec89d5b4370 Mon Sep 17 00:00:00 2001 From: Yong He Date: Fri, 11 Jul 2025 16:54:43 -0700 Subject: Fixup address spaces after inlining. (#7731) * Fixup address spaces after inlining. * add -O0 --- tests/spirv/pointer-access.slang | 48 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 tests/spirv/pointer-access.slang (limited to 'tests') diff --git a/tests/spirv/pointer-access.slang b/tests/spirv/pointer-access.slang new file mode 100644 index 000000000..281613640 --- /dev/null +++ b/tests/spirv/pointer-access.slang @@ -0,0 +1,48 @@ +//TEST:SIMPLE(filecheck=CHECK): -target spirv -O0 + +//CHECK: OpEntryPoint + +struct Result +{ + float3 value; +}; + +struct Indirect +{ + float scale; +}; + +struct PushConstant +{ + Indirect *ptr; +}; + +struct Payload +{ + uint seed; +}; + +ConstantBuffer pushConstants; + +Result f3(Indirect ss, float2 randomSample) +{ + Result result; + result.value = randomSample.x; + return result; +} + +float3 f2(inout uint seed) +{ + return f3(*pushConstants.ptr, float2(seed)).value; +} + +float3 f1(inout Payload payload) +{ + return f2(payload.seed); +} + +[shader("closesthit")] +void main(inout Payload payload, in BuiltInTriangleIntersectionAttributes attr) +{ + f1(payload); +} \ No newline at end of file -- cgit v1.2.3