From 0405d77ec3f25f4afd2254f62201a80d26b67731 Mon Sep 17 00:00:00 2001 From: Tim Northover Date: Thu, 17 Aug 2017 23:14:01 +0000 Subject: [PATCH] GlobalISel (AArch64): fix ABI at border between GPRs and SP. If a struct would end up half in GPRs and half on SP the ABI says it should actually go entirely on the stack. We were getting this wrong in GlobalISel before, causing compatibility issues. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@311137 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Driver/ToolChains/Arch/ARM.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Driver/ToolChains/Arch/ARM.cpp b/lib/Driver/ToolChains/Arch/ARM.cpp index 49bb23535d..c69efd96e8 100644 --- a/lib/Driver/ToolChains/Arch/ARM.cpp +++ b/lib/Driver/ToolChains/Arch/ARM.cpp @@ -438,7 +438,7 @@ void arm::getARMTargetFeatures(const ToolChain &TC, // // The above behavior is consistent with GCC. int VersionNum = getARMSubArchVersionNumber(Triple); - if (Triple.isOSDarwin() || Triple.isOSNetBSD()) { + if (Triple.isOSBinFormatMachO() || Triple.isOSNetBSD()) { if (VersionNum < 6 || Triple.getSubArch() == llvm::Triple::SubArchType::ARMSubArch_v6m) Features.push_back("+strict-align"); -- 2.50.1