From a1827ee5e9b8088b23db3fa688b7bd62b7bbe9ac Mon Sep 17 00:00:00 2001 From: Yong He Date: Fri, 23 Feb 2024 19:05:23 -0800 Subject: SPIRV Fixes. (#3622) * Use SpvSourceLanguageSlang enum. * Fix spirv entrypoint interface. * Cleanup. * Add error on unknown spirv opcode. * Fix CI. * Fix. --- tests/spirv/multi-entry-point-input-var.slang | 13 +++++++++++++ tests/spirv/unknown-opcode.slang | 16 ++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 tests/spirv/multi-entry-point-input-var.slang create mode 100644 tests/spirv/unknown-opcode.slang (limited to 'tests/spirv') diff --git a/tests/spirv/multi-entry-point-input-var.slang b/tests/spirv/multi-entry-point-input-var.slang new file mode 100644 index 000000000..9475f268f --- /dev/null +++ b/tests/spirv/multi-entry-point-input-var.slang @@ -0,0 +1,13 @@ +//TEST:SIMPLE(filecheck=CHECK): -target spirv -fvk-use-entrypoint-name -emit-spirv-directly + +// CHECK: OpEntryPoint + +[shader("vertex")] +float4 vmain(uint vertex_id : SV_VertexID) : SV_Position { + return float4(vertex_id, 0, 0, 1); +} + +[shader("pixel")] +float4 pmain(float4 position : SV_Position) : SV_Target { + return position; +} \ No newline at end of file diff --git a/tests/spirv/unknown-opcode.slang b/tests/spirv/unknown-opcode.slang new file mode 100644 index 000000000..4358a5cd4 --- /dev/null +++ b/tests/spirv/unknown-opcode.slang @@ -0,0 +1,16 @@ + +//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -stage compute -entry main -target spirv -emit-spirv-directly + +void main() +{ + spirv_asm + { + // CHECK: ([[#@LINE+1]]): error + unknownOpCode + }; + spirv_asm + { + // CHECK-NOT: ([[#@LINE+1]]): error + 5 + }; +} -- cgit v1.2.3