[clang] 00f263b - [HIP][SPIR-V] Enable -spirv-preserve-auxdata (#209520)
via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 15 07:37:40 PDT 2026
Author: Marcos Maronas
Date: 2026-07-15T15:37:35+01:00
New Revision: 00f263b209a834eca2092d4a91d25b5413caea39
URL: https://github.com/llvm/llvm-project/commit/00f263b209a834eca2092d4a91d25b5413caea39
DIFF: https://github.com/llvm/llvm-project/commit/00f263b209a834eca2092d4a91d25b5413caea39.diff
LOG: [HIP][SPIR-V] Enable -spirv-preserve-auxdata (#209520)
Function attributes such as `convergent` are only kept through SPIRV if
`-spirv-preserve-auxdata` is enabled. This is important to keep the
translation as accurate as possible. Also, this aligns with the
translator path.
Added:
Modified:
clang/lib/Driver/ToolChains/HIPAMD.cpp
clang/test/Driver/spirv-amd-toolchain.c
Removed:
################################################################################
diff --git a/clang/lib/Driver/ToolChains/HIPAMD.cpp b/clang/lib/Driver/ToolChains/HIPAMD.cpp
index 9ceefe4f18f03..245cf642cf853 100644
--- a/clang/lib/Driver/ToolChains/HIPAMD.cpp
+++ b/clang/lib/Driver/ToolChains/HIPAMD.cpp
@@ -176,8 +176,8 @@ void AMDGCN::Linker::constructLinkAndEmitSpirvCommand(
llvm::opt::ArgStringList CmdArgs;
CmdArgs.append({"-cc1", "-triple=spirv64-amd-amdhsa", "-emit-obj",
- "-disable-llvm-optzns", LinkedBCFile.getFilename(), "-o",
- Output.getFilename()});
+ "-disable-llvm-optzns", "-mllvm", "-spirv-preserve-auxdata",
+ LinkedBCFile.getFilename(), "-o", Output.getFilename()});
const Driver &Driver = getToolChain().getDriver();
const char *Exec = Driver.getDriverProgramPath();
diff --git a/clang/test/Driver/spirv-amd-toolchain.c b/clang/test/Driver/spirv-amd-toolchain.c
index edd142329c4d4..356440a308a23 100644
--- a/clang/test/Driver/spirv-amd-toolchain.c
+++ b/clang/test/Driver/spirv-amd-toolchain.c
@@ -29,4 +29,4 @@
// RUN: | FileCheck %s --check-prefix=INVOCATION-SPIRV-BACKEND
// INVOCATION-SPIRV-BACKEND: "-cc1" "-triple" "spirv64-amd-amdhsa" {{.*}}"-flto=full" "-flto-unit"{{.*}}"-disable-llvm-optzns" {{.*}} "-o" "[[OUTPUT:.+]]" "-x" "c"
// INVOCATION-SPIRV-BACKEND: "{{.*}}llvm-link" "-o" "[[LINKED_OUTPUT:.+]]" "[[OUTPUT]]"
-// INVOCATION-SPIRV-BACKEND: "-cc1" "-triple=spirv64-amd-amdhsa" "-emit-obj" {{.*}} "[[LINKED_OUTPUT]]" "-o" "a.out"
+// INVOCATION-SPIRV-BACKEND: "-cc1" "-triple=spirv64-amd-amdhsa" "-emit-obj" {{.*}} "-mllvm" "-spirv-preserve-auxdata" "[[LINKED_OUTPUT]]" "-o" "a.out"
More information about the cfe-commits
mailing list