11// RUN: %clang_cc1 -triple=aarch64-gnu-linux -emit-llvm -O1 %s -o - | FileCheck --check-prefix=NO-MATH-ERRNO %s
22// RUN: %clang_cc1 -triple=aarch64-gnu-linux -emit-llvm -fmath-errno %s -o - | FileCheck --check-prefix=MATH-ERRNO %s
33
4- void sincos (double , double * , double * );
5- void sincosf (float , float * , float * );
6- void sincosl (long double , long double * , long double * );
7-
84// NO-MATH-ERRNO-LABEL: @sincos_f32
95// NO-MATH-ERRNO: [[SINCOS:%.*]] = tail call { float, float } @llvm.sincos.f32(float {{.*}})
106// NO-MATH-ERRNO-NEXT: [[SIN:%.*]] = extractvalue { float, float } [[SINCOS]], 0
@@ -16,7 +12,7 @@ void sincosl(long double, long double*, long double*);
1612// MATH-ERRNO: call void @sincosf(
1713//
1814void sincos_f32 (float x , float * fp0 , float * fp1 ) {
19- sincosf (x , fp0 , fp1 );
15+ __builtin_sincosf (x , fp0 , fp1 );
2016}
2117
2218// NO-MATH-ERRNO-LABEL: @sincos_f64
@@ -30,7 +26,7 @@ void sincos_f32(float x, float* fp0, float* fp1) {
3026// MATH-ERRNO: call void @sincos(
3127//
3228void sincos_f64 (double x , double * dp0 , double * dp1 ) {
33- sincos (x , dp0 , dp1 );
29+ __builtin_sincos (x , dp0 , dp1 );
3430}
3531
3632// NO-MATH-ERRNO-LABEL: @sincos_f128
@@ -44,5 +40,5 @@ void sincos_f64(double x, double* dp0, double* dp1) {
4440// MATH-ERRNO: call void @sincosl(
4541//
4642void sincos_f128 (long double x , long double * ldp0 , long double * ldp1 ) {
47- sincosl (x , ldp0 , ldp1 );
43+ __builtin_sincosl (x , ldp0 , ldp1 );
4844}
0 commit comments