From ccf2611c024ab12dcccd978f3f501d4ee9fc52bc Mon Sep 17 00:00:00 2001 From: Yong He Date: Mon, 2 Oct 2023 03:33:58 -0700 Subject: Add SPIRV intrinsics for ShaderExecutionReordering and RW/Buffer. (#3252) * Add SPIRV intrinsics for ShaderExecutionReordering. * Add intrinsics for `Buffer` and `RWBuffer`. * Various spirv fixes. * Marshal bool vector type. * Inline global constants + OpFOrdNotEqual->OpFUnordNotEqual. * Fix. --------- Co-authored-by: Yong He --- tests/cross-compile/rw-buffer.slang | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'tests/cross-compile') diff --git a/tests/cross-compile/rw-buffer.slang b/tests/cross-compile/rw-buffer.slang index f5246ed78..7cd04e93f 100644 --- a/tests/cross-compile/rw-buffer.slang +++ b/tests/cross-compile/rw-buffer.slang @@ -2,13 +2,26 @@ // Confirm that writing into a `RWBuffer` generates appropriate GLSL/SPIR-V. -//TEST:CROSS_COMPILE: -profile ps_5_0 -entry main -target spirv-assembly +//TEST:SIMPLE(filecheck=CHECK): -profile ps_5_0 -entry main -target spirv-assembly +//TEST:SIMPLE(filecheck=CHECK): -profile ps_5_0 -entry main -target spirv-assembly -emit-spirv-directly RWBuffer buffer; - +Buffer inBuffer; float4 main(float u : U, int idx : IDX) : SV_Target { - buffer[idx] = u; + // CHECK-DAG: OpImageQuerySize + + // CHECK-DAG: OpImageRead + + // CHECK-DAG: OpImageFetch + + // CHECK-DAG: OpImageWrite + + uint s1, s2; + buffer.GetDimensions(s1); + buffer.GetDimensions(s2); + + buffer[idx] = buffer[idx] + inBuffer[idx] + s1 + s2; return u; } -- cgit v1.2.3