From 51dc26eaa3895ce9493703243963a0577e318eb9 Mon Sep 17 00:00:00 2001 From: Pema Malling Date: Mon, 22 Apr 2024 01:51:18 +0200 Subject: Flag to prevent packing of cbuffer elements in HLSL backend. (#3993) --- .../no-hlsl-pack-constant-buffer-elements.slang | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 tests/language-feature/no-hlsl-pack-constant-buffer-elements.slang (limited to 'tests') diff --git a/tests/language-feature/no-hlsl-pack-constant-buffer-elements.slang b/tests/language-feature/no-hlsl-pack-constant-buffer-elements.slang new file mode 100644 index 000000000..84b574432 --- /dev/null +++ b/tests/language-feature/no-hlsl-pack-constant-buffer-elements.slang @@ -0,0 +1,22 @@ +//TEST:SIMPLE(filecheck=CHECK):-target hlsl -entry main -profile cs_6_0 -no-hlsl-pack-constant-buffer-elements +//TEST:SIMPLE(filecheck=DXIL): -target dxil -entry main -profile cs_6_0 -no-hlsl-pack-constant-buffer-elements + +// DXIL: define void @main() + +// Test that -no-hlsl-pack-constant-buffer-elements prevents packing of elements in the output HLSL code. + +// CHECK-DAG: cbuffer {{.*}} : +cbuffer MyCB +{ + float member0; + float member1; +} + +RWStructuredBuffer MyBuffer; + +// CHECK-DAG: {{.*}} = member0{{.*}} + member1{{.*}}; +[numthreads(1,1,1)] +void main() +{ + MyBuffer[0] = member0 + member1; +} -- cgit v1.2.3