Revert "Reland '[flang] Allow to pass an async id to allocate the descriptor (#118713...
[llvm-project.git] / clang / test / CodeGen / AArch64 / v8.5a-scalar-frint3264-intrinsic.c
blob169743051d6d7655219ad5ee616c175fd0688fb2
1 // RUN: %clang_cc1 -triple arm64-none-linux-gnu -target-feature +v8.5a\
2 // RUN: -flax-vector-conversions=none -disable-O0-optnone -emit-llvm -o - %s \
3 // RUN: | opt -S -passes=mem2reg \
4 // RUN: | FileCheck %s
6 // REQUIRES: aarch64-registered-target
8 #include <arm_acle.h>
10 // CHECK-LABEL: test_rint32zf
11 // CHECK: [[RND:%.*]] = call float @llvm.aarch64.frint32z.f32(float %a)
12 // CHECK: ret float [[RND]]
13 float test_rint32zf(float a) {
14 return __rint32zf(a);
17 // CHECK-LABEL: test_rint32z
18 // CHECK: [[RND:%.*]] = call double @llvm.aarch64.frint32z.f64(double %a)
19 // CHECK: ret double [[RND]]
20 double test_rint32z(double a) {
21 return __rint32z(a);
24 // CHECK-LABEL: test_rint64zf
25 // CHECK: [[RND:%.*]] = call float @llvm.aarch64.frint64z.f32(float %a)
26 // CHECK: ret float [[RND]]
27 float test_rint64zf(float a) {
28 return __rint64zf(a);
31 // CHECK-LABEL: test_rint64z
32 // CHECK: [[RND:%.*]] = call double @llvm.aarch64.frint64z.f64(double %a)
33 // CHECK: ret double [[RND]]
34 double test_rint64z(double a) {
35 return __rint64z(a);
38 // CHECK-LABEL: test_rint32xf
39 // CHECK: [[RND:%.*]] = call float @llvm.aarch64.frint32x.f32(float %a)
40 // CHECK: ret float [[RND]]
41 float test_rint32xf(float a) {
42 return __rint32xf(a);
45 // CHECK-LABEL: test_rint32x
46 // CHECK: [[RND:%.*]] = call double @llvm.aarch64.frint32x.f64(double %a)
47 // CHECK: ret double [[RND]]
48 double test_rint32x(double a) {
49 return __rint32x(a);
52 // CHECK-LABEL: test_rint64xf
53 // CHECK: [[RND:%.*]] = call float @llvm.aarch64.frint64x.f32(float %a)
54 // CHECK: ret float [[RND]]
55 float test_rint64xf(float a) {
56 return __rint64xf(a);
59 // CHECK-LABEL: test_rint64x
60 // CHECK: [[RND:%.*]] = call double @llvm.aarch64.frint64x.f64(double %a)
61 // CHECK: ret double [[RND]]
62 double test_rint64x(double a) {
63 return __rint64x(a);