@@ -1159,6 +1159,74 @@ long double call_sqrtl(long double f) {
1159
1159
// LLVM: }
1160
1160
}
1161
1161
1162
+ // tan
1163
+
1164
+ float my_tanf (float f ) {
1165
+ return __builtin_tanf (f );
1166
+ // CHECK: cir.func @my_tanf
1167
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.float
1168
+
1169
+ // LLVM: define dso_local float @my_tanf(float %0)
1170
+ // LLVM: %{{.+}} = call float @llvm.tan.f32(float %{{.+}})
1171
+ // LLVM: }
1172
+ }
1173
+
1174
+ double my_tan (double f ) {
1175
+ return __builtin_tan (f );
1176
+ // CHECK: cir.func @my_tan
1177
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.double
1178
+
1179
+ // LLVM: define dso_local double @my_tan(double %0)
1180
+ // LLVM: %{{.+}} = call double @llvm.tan.f64(double %{{.+}})
1181
+ // LLVM: }
1182
+ }
1183
+
1184
+ long double my_tanl (long double f ) {
1185
+ return __builtin_tanl (f );
1186
+ // CHECK: cir.func @my_tanl
1187
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.long_double<!cir.f80>
1188
+ // AARCH64: {{.+}} = cir.tan {{.+}} : !cir.long_double<!cir.double>
1189
+
1190
+ // LLVM: define dso_local x86_fp80 @my_tanl(x86_fp80 %0)
1191
+ // LLVM: %{{.+}} = call x86_fp80 @llvm.tan.f80(x86_fp80 %{{.+}})
1192
+ // LLVM: }
1193
+ }
1194
+
1195
+ float tanf (float );
1196
+ double tan (double );
1197
+ long double tanl (long double );
1198
+
1199
+ float call_tanf (float f ) {
1200
+ return tanf (f );
1201
+ // CHECK: cir.func @call_tanf
1202
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.float
1203
+
1204
+ // LLVM: define dso_local float @call_tanf(float %0)
1205
+ // LLVM: %{{.+}} = call float @llvm.tan.f32(float %{{.+}})
1206
+ // LLVM: }
1207
+ }
1208
+
1209
+ double call_tan (double f ) {
1210
+ return tan (f );
1211
+ // CHECK: cir.func @call_tan
1212
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.double
1213
+
1214
+ // LLVM: define dso_local double @call_tan(double %0)
1215
+ // LLVM: %{{.+}} = call double @llvm.tan.f64(double %{{.+}})
1216
+ // LLVM: }
1217
+ }
1218
+
1219
+ long double call_tanl (long double f ) {
1220
+ return tanl (f );
1221
+ // CHECK: cir.func @call_tanl
1222
+ // CHECK: {{.+}} = cir.tan {{.+}} : !cir.long_double<!cir.f80>
1223
+ // AARCH64: {{.+}} = cir.tan {{.+}} : !cir.long_double<!cir.double>
1224
+
1225
+ // LLVM: define dso_local x86_fp80 @call_tanl(x86_fp80 %0)
1226
+ // LLVM: %{{.+}} = call x86_fp80 @llvm.tan.f80(x86_fp80 %{{.+}})
1227
+ // LLVM: }
1228
+ }
1229
+
1162
1230
// trunc
1163
1231
1164
1232
float my_truncf (float f ) {
0 commit comments