File tree Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Expand file tree Collapse file tree 2 files changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -103,7 +103,7 @@ struct RuntimeLibcallsInfo {
103
103
// opcode.
104
104
CmpInst::Predicate SoftFloatCompareLibcallPredicates[RTLIB::UNKNOWN_LIBCALL];
105
105
106
- static bool darwinHasSinCos (const Triple &TT) {
106
+ static bool darwinHasSinCosStret (const Triple &TT) {
107
107
assert (TT.isOSDarwin () && " should be called with darwin triple" );
108
108
// Don't bother with 32 bit x86.
109
109
if (TT.getArch () == Triple::x86)
@@ -118,6 +118,12 @@ struct RuntimeLibcallsInfo {
118
118
return true ;
119
119
}
120
120
121
+ // / Return true if the target has sincosf/sincos/sincosl functions
122
+ static bool hasSinCos (const Triple &TT) {
123
+ return TT.isGNUEnvironment () || TT.isOSFuchsia () ||
124
+ (TT.isAndroid () && !TT.isAndroidVersionLT (9 ));
125
+ }
126
+
121
127
void initSoftFloatCmpLibcallPredicates ();
122
128
123
129
// / Set default libcall names. If a target wants to opt-out of a libcall it
Original file line number Diff line number Diff line change @@ -170,7 +170,7 @@ void RuntimeLibcallsInfo::initLibcalls(const Triple &TT) {
170
170
break ;
171
171
}
172
172
173
- if (darwinHasSinCos (TT)) {
173
+ if (darwinHasSinCosStret (TT)) {
174
174
setLibcallName (RTLIB::SINCOS_STRET_F32, " __sincosf_stret" );
175
175
setLibcallName (RTLIB::SINCOS_STRET_F64, " __sincos_stret" );
176
176
if (TT.isWatchABI ()) {
@@ -214,8 +214,7 @@ void RuntimeLibcallsInfo::initLibcalls(const Triple &TT) {
214
214
setLibcallName (RTLIB::EXP10_F64, " __exp10" );
215
215
}
216
216
217
- if (TT.isGNUEnvironment () || TT.isOSFuchsia () ||
218
- (TT.isAndroid () && !TT.isAndroidVersionLT (9 ))) {
217
+ if (hasSinCos (TT)) {
219
218
setLibcallName (RTLIB::SINCOS_F32, " sincosf" );
220
219
setLibcallName (RTLIB::SINCOS_F64, " sincos" );
221
220
setLibcallName (RTLIB::SINCOS_F80, " sincosl" );
You can’t perform that action at this time.
0 commit comments