aboutsummaryrefslogtreecommitdiffstats
path: root/test/mppa
diff options
context:
space:
mode:
authorCyril SIX <cyril.six@kalray.eu>2019-02-15 18:05:54 +0100
committerCyril SIX <cyril.six@kalray.eu>2019-02-15 18:05:54 +0100
commit3baf98aa8fe0fff0414772176ce0a0095e8b0b32 (patch)
tree519d40abd352b7b79cb785f149eea096bbd1bb0d /test/mppa
parent72504f5f53110f997c998352e916ad6c4434c76d (diff)
downloadcompcert-kvx-3baf98aa8fe0fff0414772176ce0a0095e8b0b32.tar.gz
compcert-kvx-3baf98aa8fe0fff0414772176ce0a0095e8b0b32.zip
Rajout d'opérateurs flottants, travail sur les tests --> à continuer
Diffstat (limited to 'test/mppa')
-rw-r--r--test/mppa/instr/Makefile2
-rw-r--r--test/mppa/instr/addw.c2
-rw-r--r--test/mppa/instr/andd.c2
-rw-r--r--test/mppa/instr/andw.c2
-rw-r--r--test/mppa/instr/branch.c2
-rw-r--r--test/mppa/instr/branchz.c2
-rw-r--r--test/mppa/instr/branchzu.c2
-rw-r--r--test/mppa/instr/call.c2
-rw-r--r--test/mppa/instr/cast_S64_U32.c2
-rw-r--r--test/mppa/instr/cast_U32_S64.c2
-rw-r--r--test/mppa/instr/cb.deqz.c2
-rw-r--r--test/mppa/instr/cb.dgez.c2
-rw-r--r--test/mppa/instr/cb.dgtz.c2
-rw-r--r--test/mppa/instr/cb.dlez.c2
-rw-r--r--test/mppa/instr/cb.dltz.c2
-rw-r--r--test/mppa/instr/cb.dnez.c2
-rw-r--r--test/mppa/instr/cb.wgez.c2
-rw-r--r--test/mppa/instr/cb.wgtz.c2
-rw-r--r--test/mppa/instr/cb.wlez.c2
-rw-r--r--test/mppa/instr/cb.wltz.c2
-rw-r--r--test/mppa/instr/compd.eq.c2
-rw-r--r--test/mppa/instr/compd.geu.c2
-rw-r--r--test/mppa/instr/compd.gt.c2
-rw-r--r--test/mppa/instr/compd.gtu.c2
-rw-r--r--test/mppa/instr/compd.le.c2
-rw-r--r--test/mppa/instr/compd.leu.c2
-rw-r--r--test/mppa/instr/compd.lt.c2
-rw-r--r--test/mppa/instr/compd.ltu.c2
-rw-r--r--test/mppa/instr/compd.ne.c2
-rw-r--r--test/mppa/instr/compw.eq.c2
-rw-r--r--test/mppa/instr/compw.geu.c2
-rw-r--r--test/mppa/instr/compw.gt.c2
-rw-r--r--test/mppa/instr/compw.gtu.c2
-rw-r--r--test/mppa/instr/compw.le.c2
-rw-r--r--test/mppa/instr/compw.leu.c2
-rw-r--r--test/mppa/instr/compw.lt.c2
-rw-r--r--test/mppa/instr/compw.ltu.c2
-rw-r--r--test/mppa/instr/compw.ne.c2
-rw-r--r--test/mppa/instr/div2.c2
-rw-r--r--test/mppa/instr/doubleconv.c2
-rw-r--r--test/mppa/instr/faddd.c5
-rw-r--r--test/mppa/instr/faddw.c5
-rw-r--r--test/mppa/instr/floatconv.c2
-rw-r--r--test/mppa/instr/fmuld.c7
-rw-r--r--test/mppa/instr/fmulw.c7
-rw-r--r--test/mppa/instr/fnegd.c7
-rw-r--r--test/mppa/instr/fnegw.c7
-rw-r--r--test/mppa/instr/for.c2
-rw-r--r--test/mppa/instr/forvarl.c2
-rw-r--r--test/mppa/instr/framework.h30
-rw-r--r--test/mppa/instr/fsbfd.c7
-rw-r--r--test/mppa/instr/fsbfw.c7
-rw-r--r--test/mppa/instr/indirect_call.c2
-rw-r--r--test/mppa/instr/indirect_tailcall.c2
-rw-r--r--test/mppa/instr/lbs.c2
-rw-r--r--test/mppa/instr/lbz.c2
-rw-r--r--test/mppa/instr/muld.c2
-rw-r--r--test/mppa/instr/mulw.c2
-rw-r--r--test/mppa/instr/negd.c2
-rw-r--r--test/mppa/instr/ord.c2
-rw-r--r--test/mppa/instr/sbfd.c2
-rw-r--r--test/mppa/instr/sbfw.c2
-rw-r--r--test/mppa/instr/simple.c2
-rw-r--r--test/mppa/instr/sllw.c2
-rw-r--r--test/mppa/instr/srad.c2
-rw-r--r--test/mppa/instr/srld.c2
-rw-r--r--test/mppa/instr/tailcall.c2
-rw-r--r--test/mppa/instr/udivd.c2
-rw-r--r--test/mppa/instr/umodd.c2
-rw-r--r--test/mppa/instr/xord.c2
70 files changed, 136 insertions, 68 deletions
diff --git a/test/mppa/instr/Makefile b/test/mppa/instr/Makefile
index 66e40365..b4abb6a4 100644
--- a/test/mppa/instr/Makefile
+++ b/test/mppa/instr/Makefile
@@ -2,7 +2,7 @@ K1CC ?= k1-mbr-gcc
CC ?= gcc
CCOMP ?= ccomp
OPTIM ?= -O2
-CFLAGS ?= $(OPTIM) -Wl,--wrap=printf
+CFLAGS ?= $(OPTIM)
SIMU ?= k1-mppa
TIMEOUT ?= --signal=SIGTERM 120s
diff --git a/test/mppa/instr/addw.c b/test/mppa/instr/addw.c
index be8afc67..e22024cf 100644
--- a/test/mppa/instr/addw.c
+++ b/test/mppa/instr/addw.c
@@ -2,4 +2,4 @@
BEGIN_TEST(int)
c = a+b;
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/andd.c b/test/mppa/instr/andd.c
index 5a2c7863..e3221bd7 100644
--- a/test/mppa/instr/andd.c
+++ b/test/mppa/instr/andd.c
@@ -2,4 +2,4 @@
BEGIN_TEST(long long)
c = a&b;
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/andw.c b/test/mppa/instr/andw.c
index 99de0049..799dc7fb 100644
--- a/test/mppa/instr/andw.c
+++ b/test/mppa/instr/andw.c
@@ -2,4 +2,4 @@
BEGIN_TEST(int)
c = a&b;
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/branch.c b/test/mppa/instr/branch.c
index 72e7e20e..c9937e31 100644
--- a/test/mppa/instr/branch.c
+++ b/test/mppa/instr/branch.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 1;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/branchz.c b/test/mppa/instr/branchz.c
index fb86d357..d3e021b5 100644
--- a/test/mppa/instr/branchz.c
+++ b/test/mppa/instr/branchz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 1;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/branchzu.c b/test/mppa/instr/branchzu.c
index 97adb605..d0169174 100644
--- a/test/mppa/instr/branchzu.c
+++ b/test/mppa/instr/branchzu.c
@@ -8,4 +8,4 @@ BEGIN_TEST(int)
else
c = 1;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/call.c b/test/mppa/instr/call.c
index 727cef63..ba2ec323 100644
--- a/test/mppa/instr/call.c
+++ b/test/mppa/instr/call.c
@@ -12,5 +12,5 @@ BEGIN_TEST(int)
{
c = sum(make(a), make(b));
}
-END_TEST()
+END_TEST32()
/* RETURN VALUE: 60 */
diff --git a/test/mppa/instr/cast_S64_U32.c b/test/mppa/instr/cast_S64_U32.c
index da49b2a8..2d9dc723 100644
--- a/test/mppa/instr/cast_S64_U32.c
+++ b/test/mppa/instr/cast_S64_U32.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = (unsigned int) a;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cast_U32_S64.c b/test/mppa/instr/cast_U32_S64.c
index b6bcdf6a..6f9cd059 100644
--- a/test/mppa/instr/cast_U32_S64.c
+++ b/test/mppa/instr/cast_U32_S64.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = (long long) a;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/cb.deqz.c b/test/mppa/instr/cb.deqz.c
index c56733f0..6da2ab07 100644
--- a/test/mppa/instr/cb.deqz.c
+++ b/test/mppa/instr/cb.deqz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.dgez.c b/test/mppa/instr/cb.dgez.c
index abb6ec57..7bef25ad 100644
--- a/test/mppa/instr/cb.dgez.c
+++ b/test/mppa/instr/cb.dgez.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.dgtz.c b/test/mppa/instr/cb.dgtz.c
index d4271845..1a43fb1f 100644
--- a/test/mppa/instr/cb.dgtz.c
+++ b/test/mppa/instr/cb.dgtz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.dlez.c b/test/mppa/instr/cb.dlez.c
index 18e67f06..2fb97939 100644
--- a/test/mppa/instr/cb.dlez.c
+++ b/test/mppa/instr/cb.dlez.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.dltz.c b/test/mppa/instr/cb.dltz.c
index 366aea49..a431d5d0 100644
--- a/test/mppa/instr/cb.dltz.c
+++ b/test/mppa/instr/cb.dltz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.dnez.c b/test/mppa/instr/cb.dnez.c
index 81c2cd29..44516cbe 100644
--- a/test/mppa/instr/cb.dnez.c
+++ b/test/mppa/instr/cb.dnez.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long)
else
c = 0;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/cb.wgez.c b/test/mppa/instr/cb.wgez.c
index 477f4bc6..5779ad92 100644
--- a/test/mppa/instr/cb.wgez.c
+++ b/test/mppa/instr/cb.wgez.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 0;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/cb.wgtz.c b/test/mppa/instr/cb.wgtz.c
index c9ab9a06..abb695bd 100644
--- a/test/mppa/instr/cb.wgtz.c
+++ b/test/mppa/instr/cb.wgtz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 0;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/cb.wlez.c b/test/mppa/instr/cb.wlez.c
index c3069fda..3a2e08c1 100644
--- a/test/mppa/instr/cb.wlez.c
+++ b/test/mppa/instr/cb.wlez.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 0;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/cb.wltz.c b/test/mppa/instr/cb.wltz.c
index 6cf5fcf0..5d52c72a 100644
--- a/test/mppa/instr/cb.wltz.c
+++ b/test/mppa/instr/cb.wltz.c
@@ -7,4 +7,4 @@ BEGIN_TEST(int)
else
c = 0;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compd.eq.c b/test/mppa/instr/compd.eq.c
index d19a4d20..4fe8de2a 100644
--- a/test/mppa/instr/compd.eq.c
+++ b/test/mppa/instr/compd.eq.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = ((a & 0x1LL) == (b & 0x1LL));
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.geu.c b/test/mppa/instr/compd.geu.c
index edc31183..fccf0804 100644
--- a/test/mppa/instr/compd.geu.c
+++ b/test/mppa/instr/compd.geu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = (a >= b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.gt.c b/test/mppa/instr/compd.gt.c
index 24147779..b9901436 100644
--- a/test/mppa/instr/compd.gt.c
+++ b/test/mppa/instr/compd.gt.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = (a > b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.gtu.c b/test/mppa/instr/compd.gtu.c
index 5ce82569..7b2b96a6 100644
--- a/test/mppa/instr/compd.gtu.c
+++ b/test/mppa/instr/compd.gtu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = (a > b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.le.c b/test/mppa/instr/compd.le.c
index a84aad97..6fa0f103 100644
--- a/test/mppa/instr/compd.le.c
+++ b/test/mppa/instr/compd.le.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = (a <= b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.leu.c b/test/mppa/instr/compd.leu.c
index e386bc27..1ad18281 100644
--- a/test/mppa/instr/compd.leu.c
+++ b/test/mppa/instr/compd.leu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = (a <= b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.lt.c b/test/mppa/instr/compd.lt.c
index df07a708..c42cda56 100644
--- a/test/mppa/instr/compd.lt.c
+++ b/test/mppa/instr/compd.lt.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = (a < b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.ltu.c b/test/mppa/instr/compd.ltu.c
index dfaa8921..b03d4d53 100644
--- a/test/mppa/instr/compd.ltu.c
+++ b/test/mppa/instr/compd.ltu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = (a < b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compd.ne.c b/test/mppa/instr/compd.ne.c
index 19ce0a69..fd9d0b28 100644
--- a/test/mppa/instr/compd.ne.c
+++ b/test/mppa/instr/compd.ne.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = ((a & 0x1ULL) != (b & 0x1ULL));
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/compw.eq.c b/test/mppa/instr/compw.eq.c
index dc7a3ab1..cd93f365 100644
--- a/test/mppa/instr/compw.eq.c
+++ b/test/mppa/instr/compw.eq.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = ((a & 0x1) == (b & 0x1));
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.geu.c b/test/mppa/instr/compw.geu.c
index d72ca56c..b8fb1adf 100644
--- a/test/mppa/instr/compw.geu.c
+++ b/test/mppa/instr/compw.geu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = (a >= b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.gt.c b/test/mppa/instr/compw.gt.c
index 9ad02610..5f6bc907 100644
--- a/test/mppa/instr/compw.gt.c
+++ b/test/mppa/instr/compw.gt.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = (a > b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.gtu.c b/test/mppa/instr/compw.gtu.c
index 77f04989..947f6a14 100644
--- a/test/mppa/instr/compw.gtu.c
+++ b/test/mppa/instr/compw.gtu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = (a > b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.le.c b/test/mppa/instr/compw.le.c
index b7a7a432..35ec6b7d 100644
--- a/test/mppa/instr/compw.le.c
+++ b/test/mppa/instr/compw.le.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = (a <= b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.leu.c b/test/mppa/instr/compw.leu.c
index 4892f06c..74ebfb42 100644
--- a/test/mppa/instr/compw.leu.c
+++ b/test/mppa/instr/compw.leu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = (a <= b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.lt.c b/test/mppa/instr/compw.lt.c
index 2cc151bf..cb1f30bd 100644
--- a/test/mppa/instr/compw.lt.c
+++ b/test/mppa/instr/compw.lt.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = (a < b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.ltu.c b/test/mppa/instr/compw.ltu.c
index b524127f..6a0c5af1 100644
--- a/test/mppa/instr/compw.ltu.c
+++ b/test/mppa/instr/compw.ltu.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = (a < b);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/compw.ne.c b/test/mppa/instr/compw.ne.c
index 433b0b86..7035e2c7 100644
--- a/test/mppa/instr/compw.ne.c
+++ b/test/mppa/instr/compw.ne.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned int)
{
c = ((a & 0x1U) != (b & 0x1U));
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/div2.c b/test/mppa/instr/div2.c
index 01a4b575..b5dfe63a 100644
--- a/test/mppa/instr/div2.c
+++ b/test/mppa/instr/div2.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = (a + b) / 2;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/doubleconv.c b/test/mppa/instr/doubleconv.c
index e40c65e5..55b1ddab 100644
--- a/test/mppa/instr/doubleconv.c
+++ b/test/mppa/instr/doubleconv.c
@@ -6,4 +6,4 @@ double long2double(long v){
BEGIN_TEST(long)
c = (long) long2double(a) + (long) long2double(b) + (long) long2double(42.3);
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/faddd.c b/test/mppa/instr/faddd.c
new file mode 100644
index 00000000..35b7fc92
--- /dev/null
+++ b/test/mppa/instr/faddd.c
@@ -0,0 +1,5 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+ c = ((double)a + (double)b);
+END_TESTF64()
diff --git a/test/mppa/instr/faddw.c b/test/mppa/instr/faddw.c
new file mode 100644
index 00000000..a00e9afe
--- /dev/null
+++ b/test/mppa/instr/faddw.c
@@ -0,0 +1,5 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+ c = ((float)a + (float)b);
+END_TESTF64()
diff --git a/test/mppa/instr/floatconv.c b/test/mppa/instr/floatconv.c
index 025f968b..32b798e1 100644
--- a/test/mppa/instr/floatconv.c
+++ b/test/mppa/instr/floatconv.c
@@ -6,4 +6,4 @@ float int2float(int v){
BEGIN_TEST(int)
c = (int) int2float(a) + (int) int2float(b) + (int) int2float(42.3);
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/fmuld.c b/test/mppa/instr/fmuld.c
new file mode 100644
index 00000000..03c990fa
--- /dev/null
+++ b/test/mppa/instr/fmuld.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = ((double)a * (double)b);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/fmulw.c b/test/mppa/instr/fmulw.c
new file mode 100644
index 00000000..030a6d9c
--- /dev/null
+++ b/test/mppa/instr/fmulw.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = ((float)a * (float)b);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/fnegd.c b/test/mppa/instr/fnegd.c
new file mode 100644
index 00000000..974eb7e8
--- /dev/null
+++ b/test/mppa/instr/fnegd.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = (-(double)a);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/fnegw.c b/test/mppa/instr/fnegw.c
new file mode 100644
index 00000000..acbabf68
--- /dev/null
+++ b/test/mppa/instr/fnegw.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = (-(float)a);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/for.c b/test/mppa/instr/for.c
index d6870afb..373ab6bd 100644
--- a/test/mppa/instr/for.c
+++ b/test/mppa/instr/for.c
@@ -6,4 +6,4 @@ BEGIN_TEST(int)
for (j = 0 ; j < 10 ; j++)
c += a;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/forvarl.c b/test/mppa/instr/forvarl.c
index 30717a51..c1fe90fd 100644
--- a/test/mppa/instr/forvarl.c
+++ b/test/mppa/instr/forvarl.c
@@ -7,4 +7,4 @@ BEGIN_TEST(long long int)
for (j = 0 ; j < (b & 0x8LL) ; j++)
c += a;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/framework.h b/test/mppa/instr/framework.h
index d1c652bd..d4f36f6b 100644
--- a/test/mppa/instr/framework.h
+++ b/test/mppa/instr/framework.h
@@ -1,10 +1,9 @@
#ifndef __FRAMEWORK_H__
#define __FRAMEWORK_H__
+#include <stdio.h>
#include "../prng/prng.c"
-int printf(const char *, ...);
-
#define BEGIN_TEST_N(type, N)\
int main(void){\
type t[N], c, i, j, S;\
@@ -18,7 +17,8 @@ int printf(const char *, ...);
#define BEGIN_TEST(type)\
int main(void){\
- type a, b, c, i, S;\
+ type a, b, c, S;\
+ int i;\
srand(0);\
S = 0;\
for (i = 0 ; i < 100 ; i++){\
@@ -29,22 +29,38 @@ int printf(const char *, ...);
/* In between BEGIN_TEST and END_TEST : definition of c */
-#define END_TEST()\
- printf("%llu\n", c);\
+#define END_TEST64()\
+ printf("%llu\t%llu\t%llu\n", a, b, c);\
S += c;\
}\
return S;\
}
- /* END END_TEST */
+ /* END END_TEST64 */
#define END_TEST32()\
- printf("%u\n", c);\
+ printf("%u\t%u\t%u\n", a, b, c);\
S += c;\
}\
return S;\
}
/* END END_TEST32 */
+#define END_TESTF32()\
+ printf("%f\t%f\t%f\n", a, b, c);\
+ S += c;\
+ }\
+ return 0;\
+ }
+ /* END END_TESTF32 */
+
+#define END_TESTF64()\
+ printf("%lf\t%lf\t%lf\n", a, b, c);\
+ S += c;\
+ }\
+ return 0;\
+ }
+ /* END END_TESTF64 */
+
#endif
diff --git a/test/mppa/instr/fsbfd.c b/test/mppa/instr/fsbfd.c
new file mode 100644
index 00000000..f80c1efe
--- /dev/null
+++ b/test/mppa/instr/fsbfd.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = ((double)a - (double)b);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/fsbfw.c b/test/mppa/instr/fsbfw.c
new file mode 100644
index 00000000..835963d5
--- /dev/null
+++ b/test/mppa/instr/fsbfw.c
@@ -0,0 +1,7 @@
+#include "framework.h"
+
+BEGIN_TEST(double)
+{
+ c = ((float)a - (float)b);
+}
+END_TESTF64()
diff --git a/test/mppa/instr/indirect_call.c b/test/mppa/instr/indirect_call.c
index 3a45ce52..f376c00a 100644
--- a/test/mppa/instr/indirect_call.c
+++ b/test/mppa/instr/indirect_call.c
@@ -30,4 +30,4 @@ BEGIN_TEST(long long)
c += op(make(a), make(b));
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/indirect_tailcall.c b/test/mppa/instr/indirect_tailcall.c
index 69295117..e6c16ea1 100644
--- a/test/mppa/instr/indirect_tailcall.c
+++ b/test/mppa/instr/indirect_tailcall.c
@@ -30,4 +30,4 @@ BEGIN_TEST(long long)
{
c += random_op(a, b);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/lbs.c b/test/mppa/instr/lbs.c
index f104d62b..22a50632 100644
--- a/test/mppa/instr/lbs.c
+++ b/test/mppa/instr/lbs.c
@@ -6,4 +6,4 @@ BEGIN_TEST(int)
c = s[(a & (sizeof(s)-1))];
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/lbz.c b/test/mppa/instr/lbz.c
index 2deeaebe..04ba098d 100644
--- a/test/mppa/instr/lbz.c
+++ b/test/mppa/instr/lbz.c
@@ -6,4 +6,4 @@ BEGIN_TEST(int)
c = s[a & (sizeof(s) - 1)];
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/muld.c b/test/mppa/instr/muld.c
index 9a40f389..f7e23850 100644
--- a/test/mppa/instr/muld.c
+++ b/test/mppa/instr/muld.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = a*b;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/mulw.c b/test/mppa/instr/mulw.c
index bf517ce8..a91d966e 100644
--- a/test/mppa/instr/mulw.c
+++ b/test/mppa/instr/mulw.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = a * b;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/negd.c b/test/mppa/instr/negd.c
index a8e8ff45..837b9828 100644
--- a/test/mppa/instr/negd.c
+++ b/test/mppa/instr/negd.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = -a;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/ord.c b/test/mppa/instr/ord.c
index eaedcb28..cae1ae8b 100644
--- a/test/mppa/instr/ord.c
+++ b/test/mppa/instr/ord.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = a | b;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/sbfd.c b/test/mppa/instr/sbfd.c
index 912f1fdb..77c28c77 100644
--- a/test/mppa/instr/sbfd.c
+++ b/test/mppa/instr/sbfd.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = a-b;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/sbfw.c b/test/mppa/instr/sbfw.c
index feffd497..e38a1fff 100644
--- a/test/mppa/instr/sbfw.c
+++ b/test/mppa/instr/sbfw.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = a-b;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/simple.c b/test/mppa/instr/simple.c
index 89bba27e..944f09c9 100644
--- a/test/mppa/instr/simple.c
+++ b/test/mppa/instr/simple.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = a+b;
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/sllw.c b/test/mppa/instr/sllw.c
index df55c9e8..6dd41a6c 100644
--- a/test/mppa/instr/sllw.c
+++ b/test/mppa/instr/sllw.c
@@ -4,4 +4,4 @@ BEGIN_TEST(int)
{
c = a << (b & 0x8);
}
-END_TEST()
+END_TEST32()
diff --git a/test/mppa/instr/srad.c b/test/mppa/instr/srad.c
index b4047bc7..00be9d0c 100644
--- a/test/mppa/instr/srad.c
+++ b/test/mppa/instr/srad.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = a >> (b & 0x8LL);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/srld.c b/test/mppa/instr/srld.c
index 71e82b2a..14970efd 100644
--- a/test/mppa/instr/srld.c
+++ b/test/mppa/instr/srld.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = a >> (b & 0x8ULL);
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/tailcall.c b/test/mppa/instr/tailcall.c
index 0d15d9e0..6c659a01 100644
--- a/test/mppa/instr/tailcall.c
+++ b/test/mppa/instr/tailcall.c
@@ -12,5 +12,5 @@ BEGIN_TEST(int)
{
c = sum(a, b);
}
-END_TEST()
+END_TEST32()
/* RETURN VALUE: 60 */
diff --git a/test/mppa/instr/udivd.c b/test/mppa/instr/udivd.c
index 52e0d412..cfb31881 100644
--- a/test/mppa/instr/udivd.c
+++ b/test/mppa/instr/udivd.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = a/b;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/umodd.c b/test/mppa/instr/umodd.c
index e7dd506f..a7f25f1c 100644
--- a/test/mppa/instr/umodd.c
+++ b/test/mppa/instr/umodd.c
@@ -4,4 +4,4 @@ BEGIN_TEST(unsigned long long)
{
c = a%b;
}
-END_TEST()
+END_TEST64()
diff --git a/test/mppa/instr/xord.c b/test/mppa/instr/xord.c
index b9d86f06..b6a90cb0 100644
--- a/test/mppa/instr/xord.c
+++ b/test/mppa/instr/xord.c
@@ -4,4 +4,4 @@ BEGIN_TEST(long long)
{
c = a^b;
}
-END_TEST()
+END_TEST64()