Skip to content

Commit 7772ca4

Browse files
farzonlFarzon Lotfi
authored and
Farzon Lotfi
committed
add arm64 llvm.experimental.constrained.tan tests
1 parent 51247e4 commit 7772ca4

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

llvm/test/CodeGen/AArch64/fp-intrinsics.ll

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,13 @@ define float @cos_f32(float %x) #0 {
146146
ret float %val
147147
}
148148

149+
; CHECK-LABEL: tan_f32:
150+
; CHECK: bl tanf
151+
define float @tan_f32(float %x) #0 {
152+
%val = call float @llvm.experimental.constrained.tan.f32(float %x, metadata !"round.tonearest", metadata !"fpexcept.strict") #0
153+
ret float %val
154+
}
155+
149156
; CHECK-LABEL: pow_f32:
150157
; CHECK: bl powf
151158
define float @pow_f32(float %x, float %y) #0 {
@@ -630,6 +637,13 @@ define double @cos_f64(double %x) #0 {
630637
ret double %val
631638
}
632639

640+
; CHECK-LABEL: tan_f64:
641+
; CHECK: bl tan
642+
define double @tan_f64(double %x) #0 {
643+
%val = call double @llvm.experimental.constrained.tan.f64(double %x, metadata !"round.tonearest", metadata !"fpexcept.strict") #0
644+
ret double %val
645+
}
646+
633647
; CHECK-LABEL: pow_f64:
634648
; CHECK: bl pow
635649
define double @pow_f64(double %x, double %y) #0 {
@@ -1114,6 +1128,13 @@ define fp128 @cos_f128(fp128 %x) #0 {
11141128
ret fp128 %val
11151129
}
11161130

1131+
; CHECK-LABEL: tan_f128:
1132+
; CHECK: bl tanl
1133+
define fp128 @tan_f128(fp128 %x) #0 {
1134+
%val = call fp128 @llvm.experimental.constrained.tan.f128(fp128 %x, metadata !"round.tonearest", metadata !"fpexcept.strict") #0
1135+
ret fp128 %val
1136+
}
1137+
11171138
; CHECK-LABEL: pow_f128:
11181139
; CHECK: bl powl
11191140
define fp128 @pow_f128(fp128 %x, fp128 %y) #0 {
@@ -1491,6 +1512,13 @@ define <1 x double> @cos_v1f64(<1 x double> %x, <1 x double> %y) #0 {
14911512
ret <1 x double> %val
14921513
}
14931514

1515+
; CHECK-LABEL: tan_v1f64:
1516+
; CHECK: bl tan
1517+
define <1 x double> @tan_v1f64(<1 x double> %x, <1 x double> %y) #0 {
1518+
%val = call <1 x double> @llvm.experimental.constrained.tan.v1f64(<1 x double> %x, metadata !"round.tonearest", metadata !"fpexcept.strict") #0
1519+
ret <1 x double> %val
1520+
}
1521+
14941522
; CHECK-LABEL: pow_v1f64:
14951523
; CHECK: bl pow
14961524
define <1 x double> @pow_v1f64(<1 x double> %x, <1 x double> %y) #0 {
@@ -1555,6 +1583,7 @@ declare float @llvm.experimental.constrained.sqrt.f32(float, metadata, metadata)
15551583
declare float @llvm.experimental.constrained.powi.f32(float, i32, metadata, metadata)
15561584
declare float @llvm.experimental.constrained.sin.f32(float, metadata, metadata)
15571585
declare float @llvm.experimental.constrained.cos.f32(float, metadata, metadata)
1586+
declare float @llvm.experimental.constrained.tan.f32(float, metadata, metadata)
15581587
declare float @llvm.experimental.constrained.pow.f32(float, float, metadata, metadata)
15591588
declare float @llvm.experimental.constrained.log.f32(float, metadata, metadata)
15601589
declare float @llvm.experimental.constrained.log10.f32(float, metadata, metadata)
@@ -1599,6 +1628,7 @@ declare double @llvm.experimental.constrained.sqrt.f64(double, metadata, metadat
15991628
declare double @llvm.experimental.constrained.powi.f64(double, i32, metadata, metadata)
16001629
declare double @llvm.experimental.constrained.sin.f64(double, metadata, metadata)
16011630
declare double @llvm.experimental.constrained.cos.f64(double, metadata, metadata)
1631+
declare double @llvm.experimental.constrained.tan.f64(double, metadata, metadata)
16021632
declare double @llvm.experimental.constrained.pow.f64(double, double, metadata, metadata)
16031633
declare double @llvm.experimental.constrained.log.f64(double, metadata, metadata)
16041634
declare double @llvm.experimental.constrained.log10.f64(double, metadata, metadata)
@@ -1643,6 +1673,7 @@ declare fp128 @llvm.experimental.constrained.sqrt.f128(fp128, metadata, metadata
16431673
declare fp128 @llvm.experimental.constrained.powi.f128(fp128, i32, metadata, metadata)
16441674
declare fp128 @llvm.experimental.constrained.sin.f128(fp128, metadata, metadata)
16451675
declare fp128 @llvm.experimental.constrained.cos.f128(fp128, metadata, metadata)
1676+
declare fp128 @llvm.experimental.constrained.tan.f128(fp128, metadata, metadata)
16461677
declare fp128 @llvm.experimental.constrained.pow.f128(fp128, fp128, metadata, metadata)
16471678
declare fp128 @llvm.experimental.constrained.log.f128(fp128, metadata, metadata)
16481679
declare fp128 @llvm.experimental.constrained.log10.f128(fp128, metadata, metadata)

0 commit comments

Comments
 (0)