mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-23 01:24:30 +00:00
Resubmit r196544: Apply transformation on OS X 10.9+ and iOS 7.0+: pow(10, x) ―> __exp10(x)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197109 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -401,6 +401,31 @@ static void initialize(TargetLibraryInfo &TLI, const Triple &T,
|
||||
TLI.setAvailableWithName(LibFunc::fputs, "fputs$UNIX2003");
|
||||
}
|
||||
|
||||
// exp10 and exp10f are not available on OS X until 10.9 and iOS until 7.0
|
||||
// and their names are __exp10 and __exp10f. exp10l is not available on
|
||||
// OS X or iOS.
|
||||
if (T.isMacOSX()) {
|
||||
TLI.setUnavailable(LibFunc::exp10l);
|
||||
if (T.isMacOSXVersionLT(10, 9)) {
|
||||
TLI.setUnavailable(LibFunc::exp10);
|
||||
TLI.setUnavailable(LibFunc::exp10f);
|
||||
} else {
|
||||
TLI.setAvailableWithName(LibFunc::exp10, "__exp10");
|
||||
TLI.setAvailableWithName(LibFunc::exp10f, "__exp10f");
|
||||
}
|
||||
}
|
||||
|
||||
if (T.getOS() == Triple::IOS) {
|
||||
TLI.setUnavailable(LibFunc::exp10l);
|
||||
if (T.isOSVersionLT(7, 0)) {
|
||||
TLI.setUnavailable(LibFunc::exp10);
|
||||
TLI.setUnavailable(LibFunc::exp10f);
|
||||
} else {
|
||||
TLI.setAvailableWithName(LibFunc::exp10, "__exp10");
|
||||
TLI.setAvailableWithName(LibFunc::exp10f, "__exp10f");
|
||||
}
|
||||
}
|
||||
|
||||
// iprintf and friends are only available on XCore and TCE.
|
||||
if (T.getArch() != Triple::xcore && T.getArch() != Triple::tce) {
|
||||
TLI.setUnavailable(LibFunc::iprintf);
|
||||
|
Reference in New Issue
Block a user