diff --git a/src/target.zig b/src/target.zig index 95c9798f65..4b9d9af722 100644 --- a/src/target.zig +++ b/src/target.zig @@ -487,7 +487,14 @@ pub fn minFunctionAlignment(target: std.Target) Alignment { pub fn supportsFunctionAlignment(target: std.Target) bool { return switch (target.cpu.arch) { - .wasm32, .wasm64 => false, + .nvptx, + .nvptx64, + .spirv, + .spirv32, + .spirv64, + .wasm32, + .wasm64, + => false, else => true, }; } diff --git a/test/cases/compile_errors/function_alignment_on_unsupported_target.zig b/test/cases/compile_errors/function_alignment_on_unsupported_target.zig new file mode 100644 index 0000000000..7b033e0f60 --- /dev/null +++ b/test/cases/compile_errors/function_alignment_on_unsupported_target.zig @@ -0,0 +1,7 @@ +export fn entry() align(0) void {} + +// error +// backend=stage2 +// target=nvptx-cuda,nvptx64-cuda,spirv-vulkan,spirv32-opencl,spirv64-opencl,wasm32-freestanding,wasm64-freestanding +// +// :1:25: error: target does not support function alignment