https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/147880
None >From 2e6f353668f81dee8410aaf03dc01dd71b6394c6 Mon Sep 17 00:00:00 2001 From: Matt Arsenault <matthew.arsena...@amd.com> Date: Thu, 10 Jul 2025 09:11:27 +0900 Subject: [PATCH] AArch64: Fix asserting on unexpected triples --- .../AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp | 2 +- .../CodeGen/AArch64/unsupported-object-format-err.ll | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp index f918e3cbc7b80..5c8f57664a2cc 100644 --- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp +++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp @@ -356,7 +356,7 @@ static MCAsmInfo *createAArch64MCAsmInfo(const MCRegisterInfo &MRI, else if (TheTriple.isOSBinFormatCOFF()) MAI = new AArch64MCAsmInfoGNUCOFF(); else - llvm_unreachable("Invalid target"); // FIXME: This is not unreachable + reportFatalUsageError("unsupported object format"); // Initial state of the frame pointer is SP. unsigned Reg = MRI.getDwarfRegNum(AArch64::SP, true); diff --git a/llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll b/llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll new file mode 100644 index 0000000000000..740bde5e43c15 --- /dev/null +++ b/llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll @@ -0,0 +1,10 @@ +; RUN: not llc -mtriple=aarch64-pc-unknown-xcoff -filetype=null %s 2>&1 | FileCheck %s +; RUN: not llc -mtriple=aarch64-pc-unknown-goff -filetype=null %s 2>&1 | FileCheck %s + +; Make sure there is no crash or assert with unexpected object +; formats. + +; CHECK: LLVM ERROR: unsupported object format +define void @foo() { + ret void +} _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits