[llvm] AsmPrinter: Do not use report_fatal_error fir AIX XXStructor error (PR #145273)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 22 23:05:35 PDT 2025
https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/145273
None
>From 1390d82962c5eabcb019029b4e9342c5b69bc276 Mon Sep 17 00:00:00 2001
From: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: Mon, 23 Jun 2025 15:04:18 +0900
Subject: [PATCH] AsmPrinter: Do not use report_fatal_error fir AIX XXStructor
error
---
llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 6 ++++--
llvm/test/CodeGen/PowerPC/aix-static-init-key-object.ll | 6 +++---
2 files changed, 7 insertions(+), 5 deletions(-)
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
More information about the llvm-commits
mailing list