[lld] [llvm] [lld][ELF] improve AMD error message (PR #135082)

Maksim Levental via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 9 14:09:42 PDT 2025


https://github.com/makslevental created https://github.com/llvm/llvm-project/pull/135082

Improve AMD error message to say it's about `amd-hsa` specifically.

>From 8b71209731d49407ecfe655312450026386615ac Mon Sep 17 00:00:00 2001
From: Maksim Levental <maksim.levental at gmail.com>
Date: Wed, 9 Apr 2025 17:08:29 -0400
Subject: [PATCH] [lld][ELF] improve AMD error message

---
 lld/ELF/Arch/AMDGPU.cpp                   | 10 +++++-----
 llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp |  3 ++-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/lld/ELF/Arch/AMDGPU.cpp b/lld/ELF/Arch/AMDGPU.cpp
index 52fc779855a36..25a05da983bd7 100644
--- a/lld/ELF/Arch/AMDGPU.cpp
+++ b/lld/ELF/Arch/AMDGPU.cpp
@@ -79,8 +79,8 @@ uint32_t AMDGPU::calcEFlagsV4() const {
 
     if (retXnack == EF_AMDGPU_FEATURE_XNACK_UNSUPPORTED_V4 ||
         (retXnack != EF_AMDGPU_FEATURE_XNACK_ANY_V4 &&
-            (getEFlags(f) & EF_AMDGPU_FEATURE_XNACK_V4)
-                != EF_AMDGPU_FEATURE_XNACK_ANY_V4)) {
+         (getEFlags(f) & EF_AMDGPU_FEATURE_XNACK_V4) !=
+             EF_AMDGPU_FEATURE_XNACK_ANY_V4)) {
       if (retXnack != (getEFlags(f) & EF_AMDGPU_FEATURE_XNACK_V4)) {
         Err(ctx) << "incompatible xnack: " << f;
         return 0;
@@ -92,8 +92,8 @@ uint32_t AMDGPU::calcEFlagsV4() const {
 
     if (retSramEcc == EF_AMDGPU_FEATURE_SRAMECC_UNSUPPORTED_V4 ||
         (retSramEcc != EF_AMDGPU_FEATURE_SRAMECC_ANY_V4 &&
-            (getEFlags(f) & EF_AMDGPU_FEATURE_SRAMECC_V4) !=
-                EF_AMDGPU_FEATURE_SRAMECC_ANY_V4)) {
+         (getEFlags(f) & EF_AMDGPU_FEATURE_SRAMECC_V4) !=
+             EF_AMDGPU_FEATURE_SRAMECC_ANY_V4)) {
       if (retSramEcc != (getEFlags(f) & EF_AMDGPU_FEATURE_SRAMECC_V4)) {
         Err(ctx) << "incompatible sramecc: " << f;
         return 0;
@@ -143,7 +143,7 @@ uint32_t AMDGPU::calcEFlags() const {
   case ELFABIVERSION_AMDGPU_HSA_V6:
     return calcEFlagsV6();
   default:
-    Err(ctx) << "unknown abi version: " << abiVersion;
+    Err(ctx) << "unknown AMD abi version: " << abiVersion;
     return 0;
   }
 }
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
index bbd262748d680..85ea867700968 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
@@ -815,7 +815,8 @@ enum IGLPStrategyID : int {
   MFMASmallGemmOptID = 0,
   MFMASmallGemmSingleWaveOptID = 1,
   MFMAExpInterleaveID = 2,
-  MFMAExpSimpleInterleaveID = 3
+  MFMAExpSimpleInterleaveID = 3,
+  MFMAExpSimpleInterleaveIDMYSCHEDULER = 4
 };
 
 // Implement a IGLP scheduling strategy.



More information about the llvm-commits mailing list