summaryrefslogtreecommitdiff
path: root/test/CodeGen/XCore
diff options
context:
space:
mode:
authorRichard Osborne <richard@xmos.com>2011-11-01 10:51:48 +0000
committerRichard Osborne <richard@xmos.com>2011-11-01 10:51:48 +0000
commit441ed4ac23d0ceaa4ff3c4d302412368dab1d748 (patch)
treee34d5daf28012c53c1e746ca8bce3e11bf672391 /test/CodeGen/XCore
parent70ad3951e419ee0f1a612cab2f206e4478b757b5 (diff)
downloadllvm-441ed4ac23d0ceaa4ff3c4d302412368dab1d748.tar.gz
llvm-441ed4ac23d0ceaa4ff3c4d302412368dab1d748.tar.bz2
llvm-441ed4ac23d0ceaa4ff3c4d302412368dab1d748.tar.xz
Combine various XCore tests for floating point intrinsic support into a single test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143458 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/XCore')
-rw-r--r--test/CodeGen/XCore/cos.ll18
-rw-r--r--test/CodeGen/XCore/exp.ll18
-rw-r--r--test/CodeGen/XCore/exp2.ll18
-rw-r--r--test/CodeGen/XCore/float-intrinsics.ll171
-rw-r--r--test/CodeGen/XCore/log.ll18
-rw-r--r--test/CodeGen/XCore/log10.ll18
-rw-r--r--test/CodeGen/XCore/log2.ll18
-rw-r--r--test/CodeGen/XCore/pow.ll18
-rw-r--r--test/CodeGen/XCore/powi.ll18
-rw-r--r--test/CodeGen/XCore/sin.ll18
-rw-r--r--test/CodeGen/XCore/sqrt.ll18
11 files changed, 171 insertions, 180 deletions
diff --git a/test/CodeGen/XCore/cos.ll b/test/CodeGen/XCore/cos.ll
deleted file mode 100644
index 8bc5e81dba..0000000000
--- a/test/CodeGen/XCore/cos.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.cos.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl cos
- %result = call double @llvm.cos.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.cos.f32(float)
-
-; CHECK: testf:
-; CHECK: bl cosf
-define float @testf(float %F) {
- %result = call float @llvm.cos.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/exp.ll b/test/CodeGen/XCore/exp.ll
deleted file mode 100644
index f30f72ed9b..0000000000
--- a/test/CodeGen/XCore/exp.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.exp.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl exp
- %result = call double @llvm.exp.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.exp.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl expf
- %result = call float @llvm.exp.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/exp2.ll b/test/CodeGen/XCore/exp2.ll
deleted file mode 100644
index e9ff0a5574..0000000000
--- a/test/CodeGen/XCore/exp2.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.exp2.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl exp2
- %result = call double @llvm.exp2.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.exp2.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl exp2f
- %result = call float @llvm.exp2.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/float-intrinsics.ll b/test/CodeGen/XCore/float-intrinsics.ll
new file mode 100644
index 0000000000..69a40f3c79
--- /dev/null
+++ b/test/CodeGen/XCore/float-intrinsics.ll
@@ -0,0 +1,171 @@
+; RUN: llc < %s -march=xcore | FileCheck %s
+declare double @llvm.cos.f64(double)
+declare double @llvm.exp.f64(double)
+declare double @llvm.exp2.f64(double)
+declare double @llvm.log.f64(double)
+declare double @llvm.log10.f64(double)
+declare double @llvm.log2.f64(double)
+declare double @llvm.pow.f64(double, double)
+declare double @llvm.powi.f64(double, i32)
+declare double @llvm.sin.f64(double)
+declare double @llvm.sqrt.f64(double)
+
+define double @cos(double %F) {
+; CHECK: cos:
+; CHECK: bl cos
+ %result = call double @llvm.cos.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.cos.f32(float)
+
+; CHECK: cosf:
+; CHECK: bl cosf
+define float @cosf(float %F) {
+ %result = call float @llvm.cos.f32(float %F)
+ ret float %result
+}
+
+define double @exp(double %F) {
+; CHECK: exp:
+; CHECK: bl exp
+ %result = call double @llvm.exp.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.exp.f32(float)
+
+define float @expf(float %F) {
+; CHECK: expf:
+; CHECK: bl expf
+ %result = call float @llvm.exp.f32(float %F)
+ ret float %result
+}
+
+define double @exp2(double %F) {
+; CHECK: exp2:
+; CHECK: bl exp2
+ %result = call double @llvm.exp2.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.exp2.f32(float)
+
+define float @exp2f(float %F) {
+; CHECK: exp2f:
+; CHECK: bl exp2f
+ %result = call float @llvm.exp2.f32(float %F)
+ ret float %result
+}
+
+define double @log(double %F) {
+; CHECK: log:
+; CHECK: bl log
+ %result = call double @llvm.log.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.log.f32(float)
+
+define float @logf(float %F) {
+; CHECK: logf:
+; CHECK: bl logf
+ %result = call float @llvm.log.f32(float %F)
+ ret float %result
+}
+
+define double @log10(double %F) {
+; CHECK: log10:
+; CHECK: bl log10
+ %result = call double @llvm.log10.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.log10.f32(float)
+
+define float @log10f(float %F) {
+; CHECK: log10f:
+; CHECK: bl log10f
+ %result = call float @llvm.log10.f32(float %F)
+ ret float %result
+}
+
+define double @log2(double %F) {
+; CHECK: log2:
+; CHECK: bl log2
+ %result = call double @llvm.log2.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.log2.f32(float)
+
+define float @log2f(float %F) {
+; CHECK: log2f:
+; CHECK: bl log2f
+ %result = call float @llvm.log2.f32(float %F)
+ ret float %result
+}
+
+define double @pow(double %F, double %power) {
+; CHECK: pow:
+; CHECK: bl pow
+ %result = call double @llvm.pow.f64(double %F, double %power)
+ ret double %result
+}
+
+declare float @llvm.pow.f32(float, float)
+
+define float @powf(float %F, float %power) {
+; CHECK: powf:
+; CHECK: bl powf
+ %result = call float @llvm.pow.f32(float %F, float %power)
+ ret float %result
+}
+
+define double @powi(double %F, i32 %power) {
+; CHECK: powi:
+; CHECK: bl __powidf2
+ %result = call double @llvm.powi.f64(double %F, i32 %power)
+ ret double %result
+}
+
+declare float @llvm.powi.f32(float, i32)
+
+define float @powif(float %F, i32 %power) {
+; CHECK: powif:
+; CHECK: bl __powisf2
+ %result = call float @llvm.powi.f32(float %F, i32 %power)
+ ret float %result
+}
+
+define double @sin(double %F) {
+; CHECK: sin:
+; CHECK: bl sin
+ %result = call double @llvm.sin.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.sin.f32(float)
+
+define float @sinf(float %F) {
+; CHECK: sinf:
+; CHECK: bl sinf
+ %result = call float @llvm.sin.f32(float %F)
+ ret float %result
+}
+
+define double @sqrt(double %F) {
+; CHECK: sqrt:
+; CHECK: bl sqrt
+ %result = call double @llvm.sqrt.f64(double %F)
+ ret double %result
+}
+
+declare float @llvm.sqrt.f32(float)
+
+define float @sqrtf(float %F) {
+; CHECK: sqrtf:
+; CHECK: bl sqrtf
+ %result = call float @llvm.sqrt.f32(float %F)
+ ret float %result
+}
diff --git a/test/CodeGen/XCore/log.ll b/test/CodeGen/XCore/log.ll
deleted file mode 100644
index e954ab28b2..0000000000
--- a/test/CodeGen/XCore/log.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.log.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl log
- %result = call double @llvm.log.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.log.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl logf
- %result = call float @llvm.log.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/log10.ll b/test/CodeGen/XCore/log10.ll
deleted file mode 100644
index 88b29b1966..0000000000
--- a/test/CodeGen/XCore/log10.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.log10.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl log10
- %result = call double @llvm.log10.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.log10.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl log10f
- %result = call float @llvm.log10.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/log2.ll b/test/CodeGen/XCore/log2.ll
deleted file mode 100644
index 5199389766..0000000000
--- a/test/CodeGen/XCore/log2.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.log2.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl log2
- %result = call double @llvm.log2.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.log2.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl log2f
- %result = call float @llvm.log2.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/pow.ll b/test/CodeGen/XCore/pow.ll
deleted file mode 100644
index 36c7ae82ba..0000000000
--- a/test/CodeGen/XCore/pow.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.pow.f64(double, double)
-
-define double @test(double %F, double %power) {
-; CHECK: test:
-; CHECK: bl pow
- %result = call double @llvm.pow.f64(double %F, double %power)
- ret double %result
-}
-
-declare float @llvm.pow.f32(float, float)
-
-define float @testf(float %F, float %power) {
-; CHECK: testf:
-; CHECK: bl powf
- %result = call float @llvm.pow.f32(float %F, float %power)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/powi.ll b/test/CodeGen/XCore/powi.ll
deleted file mode 100644
index 3c4f097389..0000000000
--- a/test/CodeGen/XCore/powi.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.powi.f64(double, i32)
-
-define double @test(double %F, i32 %power) {
-; CHECK: test:
-; CHECK: bl __powidf2
- %result = call double @llvm.powi.f64(double %F, i32 %power)
- ret double %result
-}
-
-declare float @llvm.powi.f32(float, i32)
-
-define float @testf(float %F, i32 %power) {
-; CHECK: testf:
-; CHECK: bl __powisf2
- %result = call float @llvm.powi.f32(float %F, i32 %power)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/sin.ll b/test/CodeGen/XCore/sin.ll
deleted file mode 100644
index 09ca852198..0000000000
--- a/test/CodeGen/XCore/sin.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.sin.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl sin
- %result = call double @llvm.sin.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.sin.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl sinf
- %result = call float @llvm.sin.f32(float %F)
- ret float %result
-}
diff --git a/test/CodeGen/XCore/sqrt.ll b/test/CodeGen/XCore/sqrt.ll
deleted file mode 100644
index d65a90bb43..0000000000
--- a/test/CodeGen/XCore/sqrt.ll
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llc < %s -march=xcore | FileCheck %s
-declare double @llvm.sqrt.f64(double)
-
-define double @test(double %F) {
-; CHECK: test:
-; CHECK: bl sqrt
- %result = call double @llvm.sqrt.f64(double %F)
- ret double %result
-}
-
-declare float @llvm.sqrt.f32(float)
-
-define float @testf(float %F) {
-; CHECK: testf:
-; CHECK: bl sqrtf
- %result = call float @llvm.sqrt.f32(float %F)
- ret float %result
-}