TargetLoweringBase.cpp (327952) | TargetLoweringBase.cpp (328381) |
---|---|
1//===- TargetLoweringBase.cpp - Implement the TargetLoweringBase class ----===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 118 unchanged lines hidden (view full) --- 127 // A few names are different on particular architectures or environments. 128 if (TT.isOSDarwin()) { 129 // For f16/f32 conversions, Darwin uses the standard naming scheme, instead 130 // of the gnueabi-style __gnu_*_ieee. 131 // FIXME: What about other targets? 132 setLibcallName(RTLIB::FPEXT_F16_F32, "__extendhfsf2"); 133 setLibcallName(RTLIB::FPROUND_F32_F16, "__truncsfhf2"); 134 | 1//===- TargetLoweringBase.cpp - Implement the TargetLoweringBase class ----===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 118 unchanged lines hidden (view full) --- 127 // A few names are different on particular architectures or environments. 128 if (TT.isOSDarwin()) { 129 // For f16/f32 conversions, Darwin uses the standard naming scheme, instead 130 // of the gnueabi-style __gnu_*_ieee. 131 // FIXME: What about other targets? 132 setLibcallName(RTLIB::FPEXT_F16_F32, "__extendhfsf2"); 133 setLibcallName(RTLIB::FPROUND_F32_F16, "__truncsfhf2"); 134 |
135 // Darwin 10 and higher has an optimized __bzero. 136 if (!TT.isMacOSX() || !TT.isMacOSXVersionLT(10, 6) || TT.isArch64Bit()) { 137 setLibcallName(RTLIB::BZERO, TT.isAArch64() ? "bzero" : "__bzero"); | 135 // Some darwins have an optimized __bzero/bzero function. 136 switch (TT.getArch()) { 137 case Triple::x86: 138 case Triple::x86_64: 139 if (TT.isMacOSX() && !TT.isMacOSXVersionLT(10, 6)) 140 setLibcallName(RTLIB::BZERO, "__bzero"); 141 break; 142 case Triple::aarch64: 143 setLibcallName(RTLIB::BZERO, "bzero"); 144 break; 145 default: 146 break; |
138 } 139 140 if (darwinHasSinCos(TT)) { 141 setLibcallName(RTLIB::SINCOS_STRET_F32, "__sincosf_stret"); 142 setLibcallName(RTLIB::SINCOS_STRET_F64, "__sincos_stret"); 143 if (TT.isWatchABI()) { 144 setLibcallCallingConv(RTLIB::SINCOS_STRET_F32, 145 CallingConv::ARM_AAPCS_VFP); --- 1655 unchanged lines hidden --- | 147 } 148 149 if (darwinHasSinCos(TT)) { 150 setLibcallName(RTLIB::SINCOS_STRET_F32, "__sincosf_stret"); 151 setLibcallName(RTLIB::SINCOS_STRET_F64, "__sincos_stret"); 152 if (TT.isWatchABI()) { 153 setLibcallCallingConv(RTLIB::SINCOS_STRET_F32, 154 CallingConv::ARM_AAPCS_VFP); --- 1655 unchanged lines hidden --- |