Skip to content

Commit 9e831d5

Browse files
authored
[AArch64] Pass -mabi option through to multilib (#110874)
Pass the -mabi option through to multilib, so that it can be used for library selection.
1 parent 856774d commit 9e831d5

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

clang/lib/Driver/ToolChain.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,11 @@ static void getAArch64MultilibFlags(const Driver &D,
227227
if (BranchProtectionArg) {
228228
Result.push_back(BranchProtectionArg->getAsString(Args));
229229
}
230+
231+
const Arg *ABIArg = Args.getLastArgNoClaim(options::OPT_mabi_EQ);
232+
if (ABIArg) {
233+
Result.push_back(ABIArg->getAsString(Args));
234+
}
230235
}
231236

232237
static void getARMMultilibFlags(const Driver &D,

clang/test/Driver/print-multi-selection-flags.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@
1919
// CHECK-HARD: -mfloat-abi=hard
2020
// CHECK-HARD: -mfpu=fpv5-d16
2121

22+
// RUN: %clang -print-multi-flags-experimental --target=aarch64-none-elf -mabi=aapcs | FileCheck --check-prefix=CHECK-ABI-AAPCS %s
23+
// RUN: %clang -print-multi-flags-experimental --target=aarch64-none-elf -mabi=aapcs-soft | FileCheck --check-prefix=CHECK-ABI-AAPCS-SOFT %s
24+
// CHECK-ABI-AAPCS: -mabi=aapcs
25+
// CHECK-ABI-AAPCS-SOFT: -mabi=aapcs-soft
26+
2227
// RUN: %clang -print-multi-flags-experimental --target=arm-none-eabi -mfloat-abi=soft -march=armv8-m.main+nofp | FileCheck --check-prefix=CHECK-V8MMAIN-NOFP %s
2328
// CHECK-V8MMAIN-NOFP: --target=thumbv8m.main-unknown-none-eabi
2429
// CHECK-V8MMAIN-NOFP: -mfloat-abi=soft

0 commit comments

Comments
 (0)