[llvm] AsmPrinter: Do not use report_fatal_error fir AIX XXStructor error (PR #145273)

via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 22 23:07:30 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-backend-powerpc

Author: Matt Arsenault (arsenm)

<details>
<summary>Changes</summary>



---
Full diff: https://github.com/llvm/llvm-project/pull/145273.diff


2 Files Affected:

- (modified) llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (+4-2) 
- (modified) llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll (+3-3) 


``````````diff
diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 403963f33b65c..541373520ffb0 100644
--- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -3243,9 +3243,11 @@ void AsmPrinter::preprocessXXStructorList(const DataLayout &DL,
     S.Priority = Priority->getLimitedValue(65535);
     S.Func = CS->getOperand(1);
     if (!CS->getOperand(2)->isNullValue()) {
-      if (TM.getTargetTriple().isOSAIX())
-        llvm::report_fatal_error(
+      if (TM.getTargetTriple().isOSAIX()) {
+        CS->getContext().emitError(
             "associated data of XXStructor list is not yet supported on AIX");
+      }
+
       S.ComdatKey =
           dyn_cast<GlobalValue>(CS->getOperand(2)->stripPointerCasts());
     }
diff --git a/llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll b/llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll
index e0a77c84b81a9..b8aba26b574c1 100644
--- a/llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll
+++ b/llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll
@@ -1,5 +1,5 @@
-; RUN: not --crash llc -mtriple powerpc-ibm-aix-xcoff < %s 2>&1 | FileCheck %s
-; RUN: not --crash llc -mtriple powerpc64-ibm-aix-xcoff < %s 2>&1 | FileCheck %s
+; RUN: not llc -mtriple powerpc-ibm-aix-xcoff < %s 2>&1 | FileCheck %s
+; RUN: not llc -mtriple powerpc64-ibm-aix-xcoff < %s 2>&1 | FileCheck %s
 
 @v = global i8 0
 
@@ -9,4 +9,4 @@ define void @foo() {
   ret void
 }
 
-; CHECK: LLVM ERROR: associated data of XXStructor list is not yet supported on AIX
+; CHECK: error: associated data of XXStructor list is not yet supported on AIX

``````````

</details>


https://github.com/llvm/llvm-project/pull/145273


More information about the llvm-commits mailing list