Skip to content

Commit 58987d2

Browse files
authored
RuntimeLibcalls: Pass in ABI name from MCOptions (#144894)
ARM needs this to compute the available libcalls.
1 parent c7d9b6e commit 58987d2

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

llvm/include/llvm/IR/RuntimeLibcalls.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ struct RuntimeLibcallsInfo {
5858
const Triple &TT,
5959
ExceptionHandling ExceptionModel = ExceptionHandling::None,
6060
FloatABI::ABIType FloatABI = FloatABI::Default,
61-
EABI EABIVersion = EABI::Default) {
62-
initLibcalls(TT, ExceptionModel, FloatABI, EABIVersion);
61+
EABI EABIVersion = EABI::Default, StringRef ABIName = "") {
62+
initLibcalls(TT, ExceptionModel, FloatABI, EABIVersion, ABIName);
6363
}
6464

6565
/// Rename the default libcall routine name for the specified libcall.
@@ -150,7 +150,8 @@ struct RuntimeLibcallsInfo {
150150
/// Set default libcall names. If a target wants to opt-out of a libcall it
151151
/// should be placed here.
152152
LLVM_ABI void initLibcalls(const Triple &TT, ExceptionHandling ExceptionModel,
153-
FloatABI::ABIType FloatABI, EABI ABIType);
153+
FloatABI::ABIType FloatABI, EABI ABIType,
154+
StringRef ABIName);
154155
};
155156

156157
} // namespace RTLIB

llvm/lib/CodeGen/TargetLoweringBase.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -633,7 +633,8 @@ void RTLIB::initCmpLibcallCCs(ISD::CondCode *CmpLibcallCCs) {
633633
/// NOTE: The TargetMachine owns TLOF.
634634
TargetLoweringBase::TargetLoweringBase(const TargetMachine &tm)
635635
: TM(tm), Libcalls(TM.getTargetTriple(), TM.Options.ExceptionModel,
636-
TM.Options.FloatABIType, TM.Options.EABIVersion) {
636+
TM.Options.FloatABIType, TM.Options.EABIVersion,
637+
TM.Options.MCOptions.getABIName()) {
637638
initActions();
638639

639640
// Perform these initializations only once.

llvm/lib/IR/RuntimeLibcalls.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ static void setLongDoubleIsF128Libm(RuntimeLibcallsInfo &Info,
359359
void RuntimeLibcallsInfo::initLibcalls(const Triple &TT,
360360
ExceptionHandling ExceptionModel,
361361
FloatABI::ABIType FloatABI,
362-
EABI EABIVersion) {
362+
EABI EABIVersion, StringRef ABIName) {
363363
initSoftFloatCmpLibcallPredicates();
364364

365365
initSoftFloatCmpLibcallPredicates();

0 commit comments

Comments
 (0)