From ca92d5ab93f2ee63ff416a096fdbfa569a64c717 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 16 May 2019 14:27:06 +0200 Subject: sdiv seems to work, udiv/umod/smod BOGUS --- test/monniaux/division/sum_div.c | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 test/monniaux/division/sum_div.c (limited to 'test') diff --git a/test/monniaux/division/sum_div.c b/test/monniaux/division/sum_div.c deleted file mode 100644 index 87256922..00000000 --- a/test/monniaux/division/sum_div.c +++ /dev/null @@ -1,18 +0,0 @@ -#include -#include -#include "../clock.h" - -int main(int argc, char **argv) { - unsigned modulus = argc < 2 ? 3371 : atoi(argv[1]); - clock_prepare(); - clock_start(); - unsigned total=0, total_mod=0; - for(int i=0; i<1000; i++) { - total += i; - total_mod = (total_mod + i)%modulus; - } - clock_stop(); - print_total_clock(); - printf("%u %u %d\n", total, total_mod, total%modulus == total_mod); - return 0; -} -- cgit From ba21b0ae95189f2d40cca38c502c1ca583a0e1bb Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Mon, 24 Feb 2020 14:31:06 +0100 Subject: parse _Thread_local --- test/monniaux/thread_local/thread_local.c | 1 + 1 file changed, 1 insertion(+) create mode 100644 test/monniaux/thread_local/thread_local.c (limited to 'test') diff --git a/test/monniaux/thread_local/thread_local.c b/test/monniaux/thread_local/thread_local.c new file mode 100644 index 00000000..0c50f216 --- /dev/null +++ b/test/monniaux/thread_local/thread_local.c @@ -0,0 +1 @@ +_Thread_local int toto; -- cgit From 26d2601818c387a540a7d89aec1363981f601b7e Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Mon, 24 Feb 2020 16:16:51 +0100 Subject: seems to process _Thread_local but not till backend --- test/monniaux/thread_local/thread_local.c | 1 + 1 file changed, 1 insertion(+) (limited to 'test') diff --git a/test/monniaux/thread_local/thread_local.c b/test/monniaux/thread_local/thread_local.c index 0c50f216..48f9d99a 100644 --- a/test/monniaux/thread_local/thread_local.c +++ b/test/monniaux/thread_local/thread_local.c @@ -1 +1,2 @@ _Thread_local int toto; +int toto2; -- cgit From f64f6374c4b9db9f1111f272d842a625f0507ae6 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Mon, 24 Feb 2020 16:33:06 +0100 Subject: it now works, no more ugly hack to access thread local data --- test/monniaux/thread_local/thread_local.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test') diff --git a/test/monniaux/thread_local/thread_local.c b/test/monniaux/thread_local/thread_local.c index 48f9d99a..824c8543 100644 --- a/test/monniaux/thread_local/thread_local.c +++ b/test/monniaux/thread_local/thread_local.c @@ -1,2 +1,6 @@ _Thread_local int toto; int toto2; + +int foobar(void) { + return toto; +} -- cgit From 3609ee93e39f4896d749640760f82abdcde33fed Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Mon, 24 Feb 2020 18:06:23 +0100 Subject: thread local declarations now work --- test/monniaux/thread_local/thread_local.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/thread_local/thread_local.c b/test/monniaux/thread_local/thread_local.c index 824c8543..7a50db0a 100644 --- a/test/monniaux/thread_local/thread_local.c +++ b/test/monniaux/thread_local/thread_local.c @@ -1,6 +1,13 @@ +#include + _Thread_local int toto; -int toto2; +_Thread_local int toto2 = 45; int foobar(void) { return toto; } + +int main() { + printf("%d %d\n", toto, toto2); + return 0; +} -- cgit From 834f4bacec710dd841fcdc1945210cf3fb6cef70 Mon Sep 17 00:00:00 2001 From: Cyril SIX Date: Tue, 25 Feb 2020 10:31:19 +0100 Subject: Only one job for hardcheck.sh and hardtest.sh --- test/mppa/hardcheck.sh | 2 +- test/mppa/hardtest.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/mppa/hardcheck.sh b/test/mppa/hardcheck.sh index 82b63182..b6538f0e 100755 --- a/test/mppa/hardcheck.sh +++ b/test/mppa/hardcheck.sh @@ -3,4 +3,4 @@ source do_test.sh -do_test hardcheck +do_test hardcheck 1 diff --git a/test/mppa/hardtest.sh b/test/mppa/hardtest.sh index 09511da6..6321bc7d 100755 --- a/test/mppa/hardtest.sh +++ b/test/mppa/hardtest.sh @@ -3,4 +3,4 @@ source do_test.sh -do_test hardtest +do_test hardtest 1 -- cgit From 9efb4d87c549087e2ef16103a6993a1f99328348 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 12 Mar 2020 14:16:13 +0100 Subject: storeload example --- test/monniaux/cse2/storeload.c | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 test/monniaux/cse2/storeload.c (limited to 'test') diff --git a/test/monniaux/cse2/storeload.c b/test/monniaux/cse2/storeload.c new file mode 100644 index 00000000..3fa5b226 --- /dev/null +++ b/test/monniaux/cse2/storeload.c @@ -0,0 +1,4 @@ +int toto(int *p, int x) { + *p = x; + return *p; +} -- cgit From 5e045a7b8c6b834dfec782ecdadae3145a16212e Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sat, 14 Mar 2020 09:22:28 +0100 Subject: test for CSE3 alias analysis --- test/monniaux/cse2/storeload.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/cse2/storeload.c b/test/monniaux/cse2/storeload.c index 3fa5b226..028fb835 100644 --- a/test/monniaux/cse2/storeload.c +++ b/test/monniaux/cse2/storeload.c @@ -1,4 +1,5 @@ int toto(int *p, int x) { - *p = x; + p[0] = x; + p[1] = 3; return *p; } -- cgit From b58e5d1ae25b3b5b8a7d6124ff171777c298a1d2 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Wed, 8 Apr 2020 17:30:48 +0200 Subject: test file for expect --- test/monniaux/expect/expect.c | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 test/monniaux/expect/expect.c (limited to 'test') diff --git a/test/monniaux/expect/expect.c b/test/monniaux/expect/expect.c new file mode 100644 index 00000000..30e0742a --- /dev/null +++ b/test/monniaux/expect/expect.c @@ -0,0 +1,7 @@ +#ifndef PREDICTED +#define PREDICTED 0 +#endif + +int expect(int x, int *y, int *z) { + return __builtin_expect(x, PREDICTED) ? *y : *z; +} -- cgit From f38ba5c864ca09b2be8906ae2b0a81e8a57b734b Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 00:17:22 +0200 Subject: an example with two threads --- test/monniaux/thread_local/thread_local2.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 test/monniaux/thread_local/thread_local2.c (limited to 'test') diff --git a/test/monniaux/thread_local/thread_local2.c b/test/monniaux/thread_local/thread_local2.c new file mode 100644 index 00000000..ba244ac6 --- /dev/null +++ b/test/monniaux/thread_local/thread_local2.c @@ -0,0 +1,18 @@ +#include +#include + +_Thread_local int toto; +_Thread_local int toto2 = 45; + +void* poulet(void * dummy) { + printf("%p %p\n", &toto, &toto2); + return NULL; +} + +int main() { + pthread_t thr; + poulet(NULL); + pthread_create(&thr, NULL, poulet, NULL); + pthread_join(thr, NULL); + return 0; +} -- cgit From 112beeee204d4a06b8c39e9554255261365f3fed Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:09:21 +0200 Subject: Makefile for profiling --- test/monniaux/minisat/Makefile.profiled | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 test/monniaux/minisat/Makefile.profiled (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled new file mode 100644 index 00000000..febac0d5 --- /dev/null +++ b/test/monniaux/minisat/Makefile.profiled @@ -0,0 +1,21 @@ +CFILES=main.c solver.c ../clock.c +CCOMP=../../../ccomp +CCOMPFLAGS= +PROFILING_DAT=compcert_profiling.dat +EXECUTE=k1-cluster -- +EXAMPLE=sudoku.sat + +all: minisat.ccomp minisat.branch_linearize minisat.profiled + +minisat.ccomp: $(CFILES) + $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ + +minisat.branch_linearize: $(CFILES) + $(CCOMP) $(CCOMPFLAGS) -fbranchlinearize $(CFILES) -o $@ + +$(PROFILING_DAT): minisat.profile_arcs + -rm -f $(PROFILING_DAT) + $(EXECUTE) $< $(EXAMPLE) + +minisat.profiled: $(CFILES) $(PROFILING_DAT) + $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -fbranchlinearize $(CFILES) -o $@ -- cgit From 07247055911bc1a436e469a3114649d3bb317d73 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:19:33 +0200 Subject: for profiling --- test/monniaux/minisat/Makefile.profiled | 33 +++++++++++++++++++++++++++------ test/monniaux/minisat/clock.c | 1 + 2 files changed, 28 insertions(+), 6 deletions(-) create mode 120000 test/monniaux/minisat/clock.c (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index febac0d5..08283c8a 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -1,21 +1,42 @@ -CFILES=main.c solver.c ../clock.c +CFILES=main.c solver.c clock.c +GCDAFILES=$(CFILES:.c=.gcda) CCOMP=../../../ccomp -CCOMPFLAGS= +GCC=k1-cos-gcc +LIBS=-lm PROFILING_DAT=compcert_profiling.dat EXECUTE=k1-cluster -- EXAMPLE=sudoku.sat -all: minisat.ccomp minisat.branch_linearize minisat.profiled +ALL=minisat.ccomp minisat.branch_linearize minisat.profiled minisat.gcc-O3 minisat.gcc-O3.profiled + +all: $(ALL) minisat.ccomp: $(CFILES) - $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ + $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ $(LIBS) + +minisat.gcc-O3: $(CFILES) + $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) + +minisat.gcc-O3.profile-arcs: $(CFILES) + $(GCC) $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) + +$(GCDAFILES): minisat.gcc-O3.profile-arcs + $(EXECUTE) $< $(EXAMPLE) + +minisat.gcc-O3.profiled: $(CFILES) $(GCDAFILES) + $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) minisat.branch_linearize: $(CFILES) - $(CCOMP) $(CCOMPFLAGS) -fbranchlinearize $(CFILES) -o $@ + $(CCOMP) $(CCOMPFLAGS) -fbranchlinearize $(CFILES) -o $@ $(LIBS) $(PROFILING_DAT): minisat.profile_arcs -rm -f $(PROFILING_DAT) $(EXECUTE) $< $(EXAMPLE) minisat.profiled: $(CFILES) $(PROFILING_DAT) - $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -fbranchlinearize $(CFILES) -o $@ + $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -fbranchlinearize $(CFILES) -o $@ $(LIBS) + +clean: + -rm -f $(ALL) $(PROFILING_DAT) $(GCDAFILES) + +.PHONY: clean diff --git a/test/monniaux/minisat/clock.c b/test/monniaux/minisat/clock.c new file mode 120000 index 00000000..d6bade99 --- /dev/null +++ b/test/monniaux/minisat/clock.c @@ -0,0 +1 @@ +../clock.c \ No newline at end of file -- cgit From 2836e342c9129027dd864dfb215deabec15c5ff9 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:23:17 +0200 Subject: Makefile etcZ --- test/monniaux/minisat/Makefile.profiled | 15 ++++++++++----- test/monniaux/minisat/cycles.h | 1 + 2 files changed, 11 insertions(+), 5 deletions(-) create mode 120000 test/monniaux/minisat/cycles.h (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 08283c8a..c5f68fe8 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -7,29 +7,34 @@ PROFILING_DAT=compcert_profiling.dat EXECUTE=k1-cluster -- EXAMPLE=sudoku.sat -ALL=minisat.ccomp minisat.branch_linearize minisat.profiled minisat.gcc-O3 minisat.gcc-O3.profiled +ALL=minisat.ccomp minisat.branch_linearize minisat.profiled minisat.gcc-O3 minisat.gcc-O3.profiled minisat.gcc-O3.profile-arcs minisat.profile-arcs all: $(ALL) minisat.ccomp: $(CFILES) $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ $(LIBS) +minisat.profile-arcs: $(CFILES) + $(CCOMP) $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) + minisat.gcc-O3: $(CFILES) $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) minisat.gcc-O3.profile-arcs: $(CFILES) $(GCC) $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) -$(GCDAFILES): minisat.gcc-O3.profile-arcs +gcda: minisat.gcc-O3.profile-arcs $(EXECUTE) $< $(EXAMPLE) +$(GCDAFILES): gcda + minisat.gcc-O3.profiled: $(CFILES) $(GCDAFILES) $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) minisat.branch_linearize: $(CFILES) - $(CCOMP) $(CCOMPFLAGS) -fbranchlinearize $(CFILES) -o $@ $(LIBS) + $(CCOMP) $(CCOMPFLAGS) -ftracelinearize $(CFILES) -o $@ $(LIBS) -$(PROFILING_DAT): minisat.profile_arcs +$(PROFILING_DAT): minisat.profile-arcs -rm -f $(PROFILING_DAT) $(EXECUTE) $< $(EXAMPLE) @@ -39,4 +44,4 @@ minisat.profiled: $(CFILES) $(PROFILING_DAT) clean: -rm -f $(ALL) $(PROFILING_DAT) $(GCDAFILES) -.PHONY: clean +.PHONY: clean gcda diff --git a/test/monniaux/minisat/cycles.h b/test/monniaux/minisat/cycles.h new file mode 120000 index 00000000..84e54d21 --- /dev/null +++ b/test/monniaux/minisat/cycles.h @@ -0,0 +1 @@ +../cycles.h \ No newline at end of file -- cgit From fc01a94d6be690b37e6de9490a2809f1c9fd71ca Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:29:09 +0200 Subject: Makefile... --- test/monniaux/minisat/Makefile.profiled | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index c5f68fe8..abd63d32 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -5,43 +5,49 @@ GCC=k1-cos-gcc LIBS=-lm PROFILING_DAT=compcert_profiling.dat EXECUTE=k1-cluster -- +EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat -ALL=minisat.ccomp minisat.branch_linearize minisat.profiled minisat.gcc-O3 minisat.gcc-O3.profiled minisat.gcc-O3.profile-arcs minisat.profile-arcs +ALL=minisat.ccomp.log minisat.branch_linearize.log minisat.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log all: $(ALL) -minisat.ccomp: $(CFILES) +minisat.ccomp.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ $(LIBS) -minisat.profile-arcs: $(CFILES) +minisat.ccomp.profile-arcs.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) -minisat.gcc-O3: $(CFILES) +minisat.gcc-O3.exe: $(CFILES) $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) -minisat.gcc-O3.profile-arcs: $(CFILES) +minisat.gcc-O3.profile-arcs.exe: $(CFILES) $(GCC) $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) -gcda: minisat.gcc-O3.profile-arcs +gcda: minisat.gcc-O3.profile-arcs.exe $(EXECUTE) $< $(EXAMPLE) $(GCDAFILES): gcda -minisat.gcc-O3.profiled: $(CFILES) $(GCDAFILES) +minisat.gcc-O3.profiled.exe: $(CFILES) $(GCDAFILES) $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) -minisat.branch_linearize: $(CFILES) +minisat.ccomp.trace_linearize.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) -ftracelinearize $(CFILES) -o $@ $(LIBS) -$(PROFILING_DAT): minisat.profile-arcs +$(PROFILING_DAT): minisat.ccomp.profile-arcs.exe -rm -f $(PROFILING_DAT) $(EXECUTE) $< $(EXAMPLE) -minisat.profiled: $(CFILES) $(PROFILING_DAT) - $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -fbranchlinearize $(CFILES) -o $@ $(LIBS) +minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) + $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -ftracelinearize $(CFILES) -o $@ $(LIBS) + +%.log : %.exe + $(EXECUTE_CYCLES) $< $(EXAMPLE) 2>&1 | tee $@ clean: -rm -f $(ALL) $(PROFILING_DAT) $(GCDAFILES) .PHONY: clean gcda + +.SECONDARY: -- cgit From 2d9f616cd71bc654b9669e767102d40ab29b05fa Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:29:36 +0200 Subject: Makefile... --- test/monniaux/minisat/Makefile.profiled | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index abd63d32..5489bca3 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -8,7 +8,7 @@ EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat -ALL=minisat.ccomp.log minisat.branch_linearize.log minisat.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log +ALL=minisat.ccomp.log minisat.ccomp.branch_linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log all: $(ALL) -- cgit From f650107a94e10c820e478a32457683cdb17ed2c4 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:30:03 +0200 Subject: Makefile... --- test/monniaux/minisat/Makefile.profiled | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 5489bca3..3960bc29 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -8,7 +8,7 @@ EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat -ALL=minisat.ccomp.log minisat.ccomp.branch_linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log +ALL=minisat.ccomp.log minisat.ccomp.trace-linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log all: $(ALL) -- cgit From c69d601f9222c1adc4a918d3edb88cf802137a16 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 9 Apr 2020 14:30:21 +0200 Subject: Makefile... --- test/monniaux/minisat/Makefile.profiled | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 3960bc29..860dcb7e 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -32,7 +32,7 @@ $(GCDAFILES): gcda minisat.gcc-O3.profiled.exe: $(CFILES) $(GCDAFILES) $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) -minisat.ccomp.trace_linearize.exe: $(CFILES) +minisat.ccomp.trace-linearize.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) -ftracelinearize $(CFILES) -o $@ $(LIBS) $(PROFILING_DAT): minisat.ccomp.profile-arcs.exe -- cgit From cc8893f2357a832bfd86030c3d80b80439502fec Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 08:25:00 +0200 Subject: begin factorizing profiler --- test/monniaux/minisat/Makefile.profiled | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 860dcb7e..840261b4 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -7,7 +7,7 @@ PROFILING_DAT=compcert_profiling.dat EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat - +CCOMPFLAGS=-finline-auto-threshold 50 ALL=minisat.ccomp.log minisat.ccomp.trace-linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log all: $(ALL) @@ -46,7 +46,7 @@ minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) $(EXECUTE_CYCLES) $< $(EXAMPLE) 2>&1 | tee $@ clean: - -rm -f $(ALL) $(PROFILING_DAT) $(GCDAFILES) + -rm -f *.log *.exe $(PROFILING_DAT) $(GCDAFILES) .PHONY: clean gcda -- cgit From 3d0204fddb71ca377fa65952ede872583c8a7242 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 14:06:41 +0200 Subject: various fixes for aarch64 profiling --- test/monniaux/cycles.h | 14 +++++++++++++- test/monniaux/minisat/Makefile.profiled | 16 ++++++++++------ test/monniaux/minisat/solver.h | 5 +++++ test/monniaux/profiling/profiling_call.c | 27 +++++++++++++++++++++++++++ 4 files changed, 55 insertions(+), 7 deletions(-) create mode 100644 test/monniaux/profiling/profiling_call.c (limited to 'test') diff --git a/test/monniaux/cycles.h b/test/monniaux/cycles.h index c7dc582b..097d6882 100644 --- a/test/monniaux/cycles.h +++ b/test/monniaux/cycles.h @@ -50,6 +50,11 @@ static inline cycle_t get_cycle(void) { typedef uint32_t cycle_t; #define PRcycle PRId32 +#ifdef ARM_NOPRIVILEGE +static inline cycle_t get_cycle(void) { + return 0; +} +#else /* need this kernel module https://github.com/zertyz/MTL/tree/master/cpp/time/kernel/arm */ static inline cycle_t get_cycle(void) { @@ -57,14 +62,20 @@ static inline cycle_t get_cycle(void) { __asm__ volatile ("mrc p15, 0, %0, c9, c13, 0":"=r" (cycles)); return cycles; } +#endif #else #define PRcycle PRId64 typedef uint64_t cycle_t; + +#ifdef ARM_NOPRIVILEGE +static inline cycle_t get_cycle(void) { + return 0; +} +#else /* need this kernel module: https://github.com/jerinjacobk/armv8_pmu_cycle_counter_el0 on 5+ kernels, remove first argument of access_ok macro */ - static inline cycle_t get_cycle(void) { uint64_t val; @@ -72,6 +83,7 @@ static inline cycle_t get_cycle(void) return val; } #endif +#endif #else #define PRcycle PRId32 diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 840261b4..349089b7 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -1,28 +1,32 @@ +# -*- mode: makefile; -*- + CFILES=main.c solver.c clock.c GCDAFILES=$(CFILES:.c=.gcda) CCOMP=../../../ccomp -GCC=k1-cos-gcc +GCC=aarch64-linux-gnu-gcc # k1-cos-gcc LIBS=-lm PROFILING_DAT=compcert_profiling.dat -EXECUTE=k1-cluster -- +EXECUTE=qemu-aarch64 # k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat -CCOMPFLAGS=-finline-auto-threshold 50 +CCOMPFLAGS=-finline-auto-threshold 50 -static -finline-asm +GCCFLAGS=-static ALL=minisat.ccomp.log minisat.ccomp.trace-linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log all: $(ALL) +exe: $(ALL:.log=.exe) minisat.ccomp.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ $(LIBS) minisat.ccomp.profile-arcs.exe: $(CFILES) - $(CCOMP) $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) + $(CCOMP) -DAMD_NO_PRIVILEGE $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) minisat.gcc-O3.exe: $(CFILES) $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) minisat.gcc-O3.profile-arcs.exe: $(CFILES) - $(GCC) $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) + $(GCC) -DAMD_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) gcda: minisat.gcc-O3.profile-arcs.exe $(EXECUTE) $< $(EXAMPLE) @@ -48,6 +52,6 @@ minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) clean: -rm -f *.log *.exe $(PROFILING_DAT) $(GCDAFILES) -.PHONY: clean gcda +.PHONY: clean gcda exe all .SECONDARY: diff --git a/test/monniaux/minisat/solver.h b/test/monniaux/minisat/solver.h index c9ce0219..4b96b017 100644 --- a/test/monniaux/minisat/solver.h +++ b/test/monniaux/minisat/solver.h @@ -19,6 +19,8 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA **************************************************************************************************/ // Modified to compile with MS Visual Studio 6.0 by Alan Mishchenko +#include + #ifndef solver_h #define solver_h @@ -39,11 +41,14 @@ static const bool false = 0; typedef int lit; typedef char lbool; +#if 0 #ifdef _WIN32 typedef signed __int64 uint64; // compatible with MS VS 6.0 #else typedef unsigned long long uint64; #endif +#endif +typedef uint64_t uint64; static const int var_Undef = -1; static const lit lit_Undef = -2; diff --git a/test/monniaux/profiling/profiling_call.c b/test/monniaux/profiling/profiling_call.c new file mode 100644 index 00000000..ce20241d --- /dev/null +++ b/test/monniaux/profiling/profiling_call.c @@ -0,0 +1,27 @@ +/* +For knowing how to write assembly profiling stubs. + */ + +#include +#include +#include + +typedef uint8_t md5_hash[16]; +typedef uint64_t condition_counters[2]; + +void _compcert_write_profiling_table(unsigned int nr_items, + md5_hash id_table[], + condition_counters counter_table[]); + +static md5_hash id_table[42] = {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}}; +static condition_counters counter_table[42]; + +void write_profile(void) { + _compcert_write_profiling_table(42, id_table, counter_table); +} + +static _Atomic uint64_t counter; + +void incr_counter(void) { + counter++; +} -- cgit From 5659daa886559566fdb6306d989578707838a267 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 16:47:51 +0200 Subject: profiling still crashes on Aarch64 --- test/monniaux/cycles.h | 4 ++-- test/monniaux/minisat/Makefile.profiled | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'test') diff --git a/test/monniaux/cycles.h b/test/monniaux/cycles.h index 097d6882..36de6cc5 100644 --- a/test/monniaux/cycles.h +++ b/test/monniaux/cycles.h @@ -50,7 +50,7 @@ static inline cycle_t get_cycle(void) { typedef uint32_t cycle_t; #define PRcycle PRId32 -#ifdef ARM_NOPRIVILEGE +#ifdef ARM_NO_PRIVILEGE static inline cycle_t get_cycle(void) { return 0; } @@ -67,7 +67,7 @@ static inline cycle_t get_cycle(void) { #define PRcycle PRId64 typedef uint64_t cycle_t; -#ifdef ARM_NOPRIVILEGE +#ifdef ARM_NO_PRIVILEGE static inline cycle_t get_cycle(void) { return 0; } diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 349089b7..2c078f28 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -20,13 +20,13 @@ minisat.ccomp.exe: $(CFILES) $(CCOMP) $(CCOMPFLAGS) $(CFILES) -o $@ $(LIBS) minisat.ccomp.profile-arcs.exe: $(CFILES) - $(CCOMP) -DAMD_NO_PRIVILEGE $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) + $(CCOMP) -DARM_NO_PRIVILEGE $(CCOMPFLAGS) -fprofile-arcs $(CFILES) -o $@ $(LIBS) minisat.gcc-O3.exe: $(CFILES) $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) minisat.gcc-O3.profile-arcs.exe: $(CFILES) - $(GCC) -DAMD_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) + $(GCC) -DARM_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) gcda: minisat.gcc-O3.profile-arcs.exe $(EXECUTE) $< $(EXAMPLE) -- cgit From b19b9defebf96ba8599f481d4c617d43c21642ef Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 18:09:34 +0200 Subject: use proper local labels --- test/monniaux/minisat/Makefile.profiled | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 2c078f28..64e7cb80 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -41,7 +41,7 @@ minisat.ccomp.trace-linearize.exe: $(CFILES) $(PROFILING_DAT): minisat.ccomp.profile-arcs.exe -rm -f $(PROFILING_DAT) - $(EXECUTE) $< $(EXAMPLE) + $(EXECUTE) $< $(EXAMPLE) || true minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -ftracelinearize $(CFILES) -o $@ $(LIBS) -- cgit From 1348bc74b48ea8cb366a8bfab379699137276292 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 22:33:26 +0200 Subject: fixing Makefile --- test/monniaux/minisat/Makefile.profiled | 14 +++++++++----- test/monniaux/minisat/k1c.inline_50.log | 14 ++++++++++++++ 2 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 test/monniaux/minisat/k1c.inline_50.log (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 64e7cb80..b3b3c2fc 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -3,11 +3,15 @@ CFILES=main.c solver.c clock.c GCDAFILES=$(CFILES:.c=.gcda) CCOMP=../../../ccomp -GCC=aarch64-linux-gnu-gcc # k1-cos-gcc + +GCC=aarch64-linux-gnu-gcc +GCC=k1-cos-gcc +EXECUTE=qemu-aarch64 +EXECUTE=k1-cluster -- +EXECUTE_CYCLES=k1-cluster --cycle-based -- + LIBS=-lm PROFILING_DAT=compcert_profiling.dat -EXECUTE=qemu-aarch64 # k1-cluster -- -EXECUTE_CYCLES=k1-cluster --cycle-based -- EXAMPLE=sudoku.sat CCOMPFLAGS=-finline-auto-threshold 50 -static -finline-asm GCCFLAGS=-static @@ -37,11 +41,11 @@ minisat.gcc-O3.profiled.exe: $(CFILES) $(GCDAFILES) $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) minisat.ccomp.trace-linearize.exe: $(CFILES) - $(CCOMP) $(CCOMPFLAGS) -ftracelinearize $(CFILES) -o $@ $(LIBS) + $(CCOMP) $(CCOMPFLAGS) -fduplicate 0 -ftracelinearize $(CFILES) -o $@ $(LIBS) $(PROFILING_DAT): minisat.ccomp.profile-arcs.exe -rm -f $(PROFILING_DAT) - $(EXECUTE) $< $(EXAMPLE) || true + $(EXECUTE) $< $(EXAMPLE) minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -ftracelinearize $(CFILES) -o $@ $(LIBS) diff --git a/test/monniaux/minisat/k1c.inline_50.log b/test/monniaux/minisat/k1c.inline_50.log new file mode 100644 index 00000000..438a06b4 --- /dev/null +++ b/test/monniaux/minisat/k1c.inline_50.log @@ -0,0 +1,14 @@ +==> minisat.ccomp.log <== +time cycles: 3252345 + +==> minisat.ccomp.profiled.log <== +time cycles: 3150170 + +==> minisat.ccomp.trace-linearize.log <== +time cycles: 3192299 + +==> minisat.gcc-O3.log <== +time cycles: 2780324 + +==> minisat.gcc-O3.profiled.log <== +time cycles: 2487533 -- cgit From a3d856e24b2ac6577678a1535e4d15316cf0755c Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 22:54:20 +0200 Subject: fix for running the profile code on host --- test/monniaux/minisat/Makefile.profiled | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index b3b3c2fc..f411b5e7 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -1,13 +1,12 @@ # -*- mode: makefile; -*- CFILES=main.c solver.c clock.c -GCDAFILES=$(CFILES:.c=.gcda) CCOMP=../../../ccomp GCC=aarch64-linux-gnu-gcc -GCC=k1-cos-gcc +#GCC=k1-cos-gcc EXECUTE=qemu-aarch64 -EXECUTE=k1-cluster -- +#EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- LIBS=-lm @@ -29,13 +28,16 @@ minisat.ccomp.profile-arcs.exe: $(CFILES) minisat.gcc-O3.exe: $(CFILES) $(GCC) $(GCCFLAGS) -O3 $(CFILES) -o $@ $(LIBS) -minisat.gcc-O3.profile-arcs.exe: $(CFILES) - $(GCC) -DARM_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $(CFILES) -o $@ $(LIBS) +clock.gcc-O3.noprofile.o : clock.c + $(GCC) -DARM_NO_PRIVILEGE $(GCCFLAGS) -O3 -c $< -o @ + +minisat.gcc-O3.profile-arcs.exe: main.c solver.c clock.gcc-O3.noprofile.o + $(GCC) -DARM_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $+ -o $@ $(LIBS) gcda: minisat.gcc-O3.profile-arcs.exe $(EXECUTE) $< $(EXAMPLE) -$(GCDAFILES): gcda +main.gcda solver.gcda: gcda minisat.gcc-O3.profiled.exe: $(CFILES) $(GCDAFILES) $(GCC) $(GCCFLAGS) -O3 -fprofile-use $(CFILES) -o $@ $(LIBS) -- cgit From 1f6cb381b91fc40d1e6b7c6ae1f022077f6091de Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Fri, 10 Apr 2020 23:17:14 +0200 Subject: for running benchmarks on marte --- test/monniaux/minisat/Makefile.on_marte | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 test/monniaux/minisat/Makefile.on_marte (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.on_marte b/test/monniaux/minisat/Makefile.on_marte new file mode 100644 index 00000000..af7b9145 --- /dev/null +++ b/test/monniaux/minisat/Makefile.on_marte @@ -0,0 +1,16 @@ +EXE=minisat.ccomp.exe minisat.ccomp.trace-linearize.exe \ + minisat.gcc-O3.exe \ + minisat.ccomp.profiled.exe minisat.gcc-O3.profiled.exe + +LOG=$(EXE:.exe=.dat) + +all: $(LOG) + +%.log : %.exe + rm -f $@ + for i in `seq 1 1000` ; do ./$< sudoku.sat >> $@; done + +%.dat : %.log + grep 'time cycles: ' $< | sed -e 's/time cycles: //' | awk '{ total += $$1; count++ } END { print total/count }' > $@ + +.SECONDARY: -- cgit From f50a1c1e1dc194c78b68ecdc7e3f6c0b0448f5f4 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sat, 11 Apr 2020 10:29:45 +0200 Subject: seems like the ARM profiling perhaps works --- test/monniaux/minisat/Makefile.profiled | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index f411b5e7..fac3e3af 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -5,7 +5,8 @@ CCOMP=../../../ccomp GCC=aarch64-linux-gnu-gcc #GCC=k1-cos-gcc -EXECUTE=qemu-aarch64 +#EXECUTE=qemu-aarch64 +EXECUTE=qemu-arm #EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- -- cgit From 7d15566ad116730c1452364bc0fe3d2dc714e5ed Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sat, 11 Apr 2020 11:55:46 +0200 Subject: fix for k1c --- test/monniaux/minisat/Makefile.profiled | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index fac3e3af..e66db1db 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -5,8 +5,8 @@ CCOMP=../../../ccomp GCC=aarch64-linux-gnu-gcc #GCC=k1-cos-gcc -#EXECUTE=qemu-aarch64 -EXECUTE=qemu-arm +EXECUTE=qemu-aarch64 +#EXECUTE=qemu-arm #EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- -- cgit From 7299996cac6c4747b6611b17f0af15fb08c6ee80 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sat, 11 Apr 2020 22:02:46 +0200 Subject: fix reverse printing problem for hashes --- test/monniaux/minisat/Makefile.profiled | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index e66db1db..85e5c246 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -3,17 +3,17 @@ CFILES=main.c solver.c clock.c CCOMP=../../../ccomp -GCC=aarch64-linux-gnu-gcc -#GCC=k1-cos-gcc -EXECUTE=qemu-aarch64 +#GCC=aarch64-linux-gnu-gcc +GCC=k1-cos-gcc +#EXECUTE=qemu-aarch64 #EXECUTE=qemu-arm -#EXECUTE=k1-cluster -- +EXECUTE=k1-cluster -- EXECUTE_CYCLES=k1-cluster --cycle-based -- LIBS=-lm PROFILING_DAT=compcert_profiling.dat EXAMPLE=sudoku.sat -CCOMPFLAGS=-finline-auto-threshold 50 -static -finline-asm +CCOMPFLAGS=-static -finline-asm -finline-auto-threshold 50 GCCFLAGS=-static ALL=minisat.ccomp.log minisat.ccomp.trace-linearize.log minisat.ccomp.profiled.log minisat.gcc-O3.log minisat.gcc-O3.profiled.log -- cgit From 2d1a27eb606fd5effd260d32545e10eaf90cf19c Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sun, 12 Apr 2020 00:20:16 +0200 Subject: otherwise timings disabled on arm (ccomp should call preprocessor with appropriate options) --- test/monniaux/cycles.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test') diff --git a/test/monniaux/cycles.h b/test/monniaux/cycles.h index 36de6cc5..5011b18c 100644 --- a/test/monniaux/cycles.h +++ b/test/monniaux/cycles.h @@ -45,7 +45,7 @@ static inline cycle_t get_cycle(void) { return cycles; } -#elif defined (__ARM_ARCH) && (__ARM_ARCH >= 6) +#elif defined (__ARM_ARCH) // && (__ARM_ARCH >= 6) #if (__ARM_ARCH < 8) typedef uint32_t cycle_t; #define PRcycle PRId32 -- cgit From 40cd35c9152ceba673e255ee1d6108e224a54c3f Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sun, 12 Apr 2020 08:09:23 +0200 Subject: x86-64 profiling --- test/monniaux/minisat/Makefile.profiled | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'test') diff --git a/test/monniaux/minisat/Makefile.profiled b/test/monniaux/minisat/Makefile.profiled index 85e5c246..77ba8b43 100644 --- a/test/monniaux/minisat/Makefile.profiled +++ b/test/monniaux/minisat/Makefile.profiled @@ -7,8 +7,8 @@ CCOMP=../../../ccomp GCC=k1-cos-gcc #EXECUTE=qemu-aarch64 #EXECUTE=qemu-arm -EXECUTE=k1-cluster -- -EXECUTE_CYCLES=k1-cluster --cycle-based -- +#EXECUTE=k1-cluster -- +#EXECUTE_CYCLES=k1-cluster --cycle-based -- LIBS=-lm PROFILING_DAT=compcert_profiling.dat @@ -36,7 +36,7 @@ minisat.gcc-O3.profile-arcs.exe: main.c solver.c clock.gcc-O3.noprofile.o $(GCC) -DARM_NO_PRIVILEGE $(GCCFLAGS) -fprofile-arcs -O3 $+ -o $@ $(LIBS) gcda: minisat.gcc-O3.profile-arcs.exe - $(EXECUTE) $< $(EXAMPLE) + $(EXECUTE) ./$< $(EXAMPLE) main.gcda solver.gcda: gcda @@ -48,7 +48,7 @@ minisat.ccomp.trace-linearize.exe: $(CFILES) $(PROFILING_DAT): minisat.ccomp.profile-arcs.exe -rm -f $(PROFILING_DAT) - $(EXECUTE) $< $(EXAMPLE) + $(EXECUTE) ./$< $(EXAMPLE) minisat.ccomp.profiled.exe: $(CFILES) $(PROFILING_DAT) $(CCOMP) $(CCOMPFLAGS) -fprofile-use= $(PROFILING_DAT) -ftracelinearize $(CFILES) -o $@ $(LIBS) -- cgit From d0163625ad55f8b01a3c002dd52be83b8a26e35e Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Sun, 19 Apr 2020 19:50:14 +0200 Subject: test whether the instructions are allowed --- test/monniaux/cse2/noloopinvariant.c | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 test/monniaux/cse2/noloopinvariant.c (limited to 'test') diff --git a/test/monniaux/cse2/noloopinvariant.c b/test/monniaux/cse2/noloopinvariant.c new file mode 100644 index 00000000..5c7789bf --- /dev/null +++ b/test/monniaux/cse2/noloopinvariant.c @@ -0,0 +1,6 @@ +int toto(int *t, int n) { + for(int i=1; i t[0]) return i; + } + return 0; +} -- cgit From 9603222d9eeeaface592cbe2c47834faba4ba50f Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Mon, 20 Apr 2020 15:42:13 +0200 Subject: fix Mandelbrot --- test/c/Results/mandelbrot-mppa_k1c | Bin 409 -> 209 bytes 1 file changed, 0 insertions(+), 0 deletions(-) (limited to 'test') diff --git a/test/c/Results/mandelbrot-mppa_k1c b/test/c/Results/mandelbrot-mppa_k1c index f50961fe..55c5683a 100644 Binary files a/test/c/Results/mandelbrot-mppa_k1c and b/test/c/Results/mandelbrot-mppa_k1c differ -- cgit From e7ce7b5c9cf0d03c8ffdde8fe433e586142821a6 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Tue, 21 Apr 2020 18:15:13 +0200 Subject: example --- test/monniaux/licm/addv.c | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 test/monniaux/licm/addv.c (limited to 'test') diff --git a/test/monniaux/licm/addv.c b/test/monniaux/licm/addv.c new file mode 100644 index 00000000..bb0098d0 --- /dev/null +++ b/test/monniaux/licm/addv.c @@ -0,0 +1,6 @@ +void addv(double x, double y, int n, int *z) +{ + for(int i=0; i Date: Mon, 4 May 2020 13:12:39 +0200 Subject: Update on testsuite and INSTALL.md --- test/mppa/simucheck.sh | 4 +++- test/mppa/simutest.sh | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/mppa/simucheck.sh b/test/mppa/simucheck.sh index 25fb9947..48698e35 100755 --- a/test/mppa/simucheck.sh +++ b/test/mppa/simucheck.sh @@ -1,6 +1,8 @@ #!/bin/bash # Tests the execution of the binaries produced by CompCert, by simulation +cores=$(grep -c ^processor /proc/cpuinfo) + source do_test.sh -do_test check $1 +do_test check $cores diff --git a/test/mppa/simutest.sh b/test/mppa/simutest.sh index 3b1021e6..729d1ba0 100755 --- a/test/mppa/simutest.sh +++ b/test/mppa/simutest.sh @@ -1,6 +1,8 @@ #!/bin/bash # Tests the validity of the tests, in simulator +cores=$(grep -c ^processor /proc/cpuinfo) + source do_test.sh -do_test test $1 +do_test test $cores -- cgit From b4a08d0815342b6238d307864f0823d0f07bb691 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Tue, 26 May 2020 22:04:20 +0200 Subject: k1c -> kvx changes --- test/Makefile | 2 +- test/c/Makefile | 2 +- test/c/aes.c | 2 +- test/c/almabench.c | 2 +- test/c/binarytrees.c | 2 +- test/c/chomp.c | 2 +- test/c/fannkuch.c | 2 +- test/c/fft.c | 2 +- test/c/fftsp.c | 2 +- test/c/fftw.c | 2 +- test/c/fib.c | 2 +- test/c/integr.c | 2 +- test/c/lists.c | 2 +- test/c/mandelbrot.c | 8 +- test/c/nbody.c | 2 +- test/c/nsieve.c | 4 +- test/c/nsievebits.c | 4 +- test/c/perlin.c | 2 +- test/c/qsort.c | 2 +- test/c/sha1.c | 2 +- test/c/sha3.c | 2 +- test/c/siphash24.c | 2 +- test/c/spectral.c | 2 +- test/c/vmach.c | 4 +- test/endian.h | 2 +- test/monniaux/.gitignore | 4 +- test/monniaux/BearSSL/conf/KalrayCompCert.mk | 2 +- test/monniaux/Makefile | 8 +- test/monniaux/PostpassSchedulingOracle.patch | 6 +- test/monniaux/README.md | 4 +- test/monniaux/acswap/test_swapd.c | 2 +- test/monniaux/acswap/test_swapw.c | 2 +- test/monniaux/bitsliced-aes/notes.org | 16 +- test/monniaux/bitsliced-aes/one_file/compare.sh | 14 +- .../bitsliced-aes/one_file/reduce/compare.sh | 20 +- test/monniaux/bitsliced-tea/bstea_wordsize.h | 2 +- test/monniaux/bitsliced-tea/reduce/compare.sh | 18 +- test/monniaux/crypto-algorithms/Makefile | 34 +- test/monniaux/csmith/Makefile | 6 +- test/monniaux/cycles.h | 10 +- .../heapsort/heapsort.ccomp.k1c.s.modified5 | 2 +- .../heapsort/heapsort.ccomp.k1c.s.modified7 | 2 +- test/monniaux/heapsort/heapsort.ccomp.k1c.s.orig | 2 +- test/monniaux/jpeg-6b/Makefile | 32 +- test/monniaux/k1_builtins/atomics.c | 4 +- test/monniaux/k1_builtins/execute_code.c | 2 +- test/monniaux/k1_builtins/sbmm8.c | 4 +- test/monniaux/k1_builtins/test_k1_builtins.c | 50 +- test/monniaux/math/exceptions.c | 6 +- test/monniaux/math/rounding.c | 10 +- test/monniaux/micro-bunzip/Makefile | 24 +- test/monniaux/minisat/Makefile | 18 +- test/monniaux/mod_int_mat/Makefile | 40 +- test/monniaux/multithreaded_volatile/Makefile | 12 +- test/monniaux/ncompress/compress42.c | 2 +- test/monniaux/ocaml/byterun/toto | 682 ++++++++++----------- test/monniaux/picosat-965/Makefile | 4 +- test/monniaux/quest/Makefile | 8 +- .../quicksort/quicksort.ccomp.k1c.s_modified5 | 2 +- test/monniaux/quicksort/quicksort.ccomp.k1c.s_orig | 2 +- test/monniaux/rules.mk | 34 +- test/monniaux/sandbox/Makefile | 32 +- test/monniaux/send_through/Makefile | 8 +- test/monniaux/varargs/Makefile | 8 +- test/monniaux/vocabulary.sh | 4 +- test/monniaux/yarpgen/Makefile.old | 30 +- test/monniaux/zlib-1.2.11/Makefile | 26 +- test/mppa/.gitignore | 16 +- test/mppa/builtins/stsud.c | 2 +- test/mppa/coverage.sh | 2 +- test/mppa/general/clzd.c | 2 +- test/mppa/general/clzw.c | 2 +- test/mppa/general/ctzd.c | 2 +- test/mppa/general/ctzw.c | 2 +- test/mppa/general/satd.c | 2 +- test/mppa/general/sbmm8.c | 2 +- test/mppa/general/sbmmt8.c | 2 +- test/mppa/instr/Makefile | 20 +- test/mppa/instr/builtin32.c | 4 +- test/mppa/instr/builtin64.c | 8 +- test/mppa/interop/Makefile | 32 +- test/mppa/lib/Makefile | 16 +- test/mppa/mmult/.gitignore | 4 +- test/mppa/mmult/Makefile | 30 +- test/mppa/mmult/README.md | 4 +- test/mppa/prng/.gitignore | 4 +- test/mppa/prng/Makefile | 32 +- test/mppa/prng/README.md | 4 +- test/mppa/sort/.gitignore | 10 +- test/mppa/sort/Makefile | 46 +- test/mppa/sort/README.md | 4 +- test/regression/Makefile | 4 +- test/regression/extasm.c | 2 +- test/regression/varargs2.c | 4 +- 94 files changed, 761 insertions(+), 761 deletions(-) (limited to 'test') diff --git a/test/Makefile b/test/Makefile index e9c5d6a1..c371e18a 100644 --- a/test/Makefile +++ b/test/Makefile @@ -3,7 +3,7 @@ include ../Makefile.config #DIRS=c compression raytracer spass regression # Kalray note - removing compression, raytracer and spass that cannot be executed by the simulator in reasonable time -ifeq ($(ARCH),mppa_k1c) +ifeq ($(ARCH),kvx) DIRS=c regression else DIRS=c compression raytracer spass regression diff --git a/test/c/Makefile b/test/c/Makefile index a2a80e06..726631d2 100644 --- a/test/c/Makefile +++ b/test/c/Makefile @@ -25,7 +25,7 @@ PROGS?=fib integr qsort fft fftsp fftw sha1 sha3 aes almabench \ # * also removed bisect, who is exhibiting different float values on the Kalray # architecture than using x86 GCC (for both CompCert and GCC ports) (tested with n=10) ## -ifeq ($(ARCH),mppa_k1c) +ifeq ($(ARCH),kvx) PROGS:=$(filter-out knucleotide,$(PROGS)) PROGS:=$(filter-out bisect,$(PROGS)) endif diff --git a/test/c/aes.c b/test/c/aes.c index 0a64fe60..c959a611 100644 --- a/test/c/aes.c +++ b/test/c/aes.c @@ -1441,7 +1441,7 @@ int main(int argc, char ** argv) (u8 *)"\x00\x11\x22\x33\x44\x55\x66\x77\x88\x99\xAA\xBB\xCC\xDD\xEE\xFF", (u8 *)"\x8E\xA2\xB7\xCA\x51\x67\x45\xBF\xEA\xFC\x49\x90\x4B\x49\x60\x89", 5, 6); -#ifdef __K1C__ +#ifdef __KVX__ do_bench(2000); #else do_bench(1000000); diff --git a/test/c/almabench.c b/test/c/almabench.c index 4417200c..823bc18f 100644 --- a/test/c/almabench.c +++ b/test/c/almabench.c @@ -45,7 +45,7 @@ #define sineps 0.3977771559319137 #define coseps 0.9174820620691818 -#ifdef __K1C__ +#ifdef __KVX__ #define TEST_LENGTH 12 #else #define TEST_LENGTH 36525 diff --git a/test/c/binarytrees.c b/test/c/binarytrees.c index becae164..fbcddea1 100644 --- a/test/c/binarytrees.c +++ b/test/c/binarytrees.c @@ -75,7 +75,7 @@ int main(int argc, char* argv[]) unsigned N, depth, minDepth, maxDepth, stretchDepth; treeNode *stretchTree, *longLivedTree, *tempTree; -#ifdef __K1C__ +#ifdef __KVX__ N = argc < 2 ? 6 : atol(argv[1]); #else N = argc < 2 ? 12 : atol(argv[1]); diff --git a/test/c/chomp.c b/test/c/chomp.c index 7e2f62c1..71931b3d 100644 --- a/test/c/chomp.c +++ b/test/c/chomp.c @@ -338,7 +338,7 @@ int main(void) struct _play *tree; -#ifdef __K1C__ +#ifdef __KVX__ ncol = 4; nrow = 4; #else diff --git a/test/c/fannkuch.c b/test/c/fannkuch.c index befccd8d..a075c988 100644 --- a/test/c/fannkuch.c +++ b/test/c/fannkuch.c @@ -102,7 +102,7 @@ fannkuch( int n ) int main( int argc, char* argv[] ) { -#ifdef __K1C__ +#ifdef __KVX__ int n = (argc>1) ? atoi(argv[1]) : 6; #else int n = (argc>1) ? atoi(argv[1]) : 10; diff --git a/test/c/fft.c b/test/c/fft.c index 8ab59c9a..3513319f 100644 --- a/test/c/fft.c +++ b/test/c/fft.c @@ -152,7 +152,7 @@ int main(int argc, char ** argv) double enp, t, y, z, zr, zi, zm, a; double * xr, * xi, * pxr, * pxi; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 10; #else if (argc >= 2) n = atoi(argv[1]); else n = 18; diff --git a/test/c/fftsp.c b/test/c/fftsp.c index d327a74c..3215dca5 100644 --- a/test/c/fftsp.c +++ b/test/c/fftsp.c @@ -153,7 +153,7 @@ int main(int argc, char ** argv) float enp, t, y, z, zr, zi, zm, a; float * xr, * xi, * pxr, * pxi; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 3; #else if (argc >= 2) n = atoi(argv[1]); else n = 12; diff --git a/test/c/fftw.c b/test/c/fftw.c index 04d896ad..2d50022a 100644 --- a/test/c/fftw.c +++ b/test/c/fftw.c @@ -74,7 +74,7 @@ const E KP1_847759065 = ((E) +1.847759065022573512256366378793576573644833252); /* Test harness */ -#ifdef __K1C__ +#ifdef __KVX__ #define NRUNS (10 * 10) #else #define NRUNS (100 * 1000) diff --git a/test/c/fib.c b/test/c/fib.c index 168626bc..536038bd 100644 --- a/test/c/fib.c +++ b/test/c/fib.c @@ -12,7 +12,7 @@ int fib(int n) int main(int argc, char ** argv) { int n, r; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 15; #else if (argc >= 2) n = atoi(argv[1]); else n = 35; diff --git a/test/c/integr.c b/test/c/integr.c index cd0521f5..edd87def 100644 --- a/test/c/integr.c +++ b/test/c/integr.c @@ -25,7 +25,7 @@ double test(int n) int main(int argc, char ** argv) { int n; double r; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 100000; #else if (argc >= 2) n = atoi(argv[1]); else n = 10000000; diff --git a/test/c/lists.c b/test/c/lists.c index 8deb0f37..b995f6d0 100644 --- a/test/c/lists.c +++ b/test/c/lists.c @@ -61,7 +61,7 @@ int main(int argc, char ** argv) int n, niter, i; struct list * l; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 500; if (argc >= 3) niter = atoi(argv[1]); else niter = 100; #else diff --git a/test/c/mandelbrot.c b/test/c/mandelbrot.c index 548c3ffa..d862b1a3 100644 --- a/test/c/mandelbrot.c +++ b/test/c/mandelbrot.c @@ -17,7 +17,7 @@ int main (int argc, char **argv) { int w, h, bit_num = 0; char byte_acc = 0; -#ifdef __K1C__ +#ifdef __KVX__ int i, iter = 30; #else int i, iter = 50; @@ -26,7 +26,7 @@ int main (int argc, char **argv) double Zr, Zi, Cr, Ci, Tr, Ti; if (argc < 2) { -#ifdef __K1C__ +#ifdef __KVX__ w = h = 40; #else w = h = 1000; @@ -60,7 +60,7 @@ int main (int argc, char **argv) if(bit_num == 8) { putc(byte_acc,stdout); -#ifdef __K1C__ // stdout isn't flushed enough when --syscall=libstd_scalls.so is passed to the simulator k1-cluster +#ifdef __KVX__ // stdout isn't flushed enough when --syscall=libstd_scalls.so is passed to the simulator k1-cluster fflush(stdout); #endif byte_acc = 0; @@ -70,7 +70,7 @@ int main (int argc, char **argv) { byte_acc <<= (8-w%8); putc(byte_acc,stdout); -#ifdef __K1C__ // stdout isn't flushed enough when --syscall=libstd_scalls.so is passed to the simulator k1-cluster +#ifdef __KVX__ // stdout isn't flushed enough when --syscall=libstd_scalls.so is passed to the simulator k1-cluster fflush(stdout); #endif byte_acc = 0; diff --git a/test/c/nbody.c b/test/c/nbody.c index ab0ebabe..01b36d5a 100644 --- a/test/c/nbody.c +++ b/test/c/nbody.c @@ -140,7 +140,7 @@ void setup_bodies(void) int main(int argc, char ** argv) { -#ifdef __K1C__ +#ifdef __KVX__ int n = argc < 2 ? 100 : atoi(argv[1]); #else int n = argc < 2 ? 1000000 : atoi(argv[1]); diff --git a/test/c/nsieve.c b/test/c/nsieve.c index 3954bcbe..83e1e1f0 100644 --- a/test/c/nsieve.c +++ b/test/c/nsieve.c @@ -29,14 +29,14 @@ static unsigned int nsieve(int m) { #define NITER 2 int main(int argc, char * argv[]) { -#ifdef __K1C__ +#ifdef __KVX__ int m = argc < 2 ? 6 : atoi(argv[1]); #else int m = argc < 2 ? 9 : atoi(argv[1]); #endif int i, j; for (i = 0; i < 3; i++) { -#ifdef __K1C__ +#ifdef __KVX__ int n = 200 << (m-i); #else int n = 10000 << (m-i); diff --git a/test/c/nsievebits.c b/test/c/nsievebits.c index e3b7fd43..a723d6d8 100644 --- a/test/c/nsievebits.c +++ b/test/c/nsievebits.c @@ -30,7 +30,7 @@ nsieve(unsigned int m) return (count); } -#ifdef __K1C__ +#ifdef __KVX__ #define NITER 1 #else #define NITER 2 @@ -52,7 +52,7 @@ main(int ac, char **av) { unsigned int n; -#ifdef __K1C__ +#ifdef __KVX__ n = ac < 2 ? 2 : atoi(av[1]); #else n = ac < 2 ? 9 : atoi(av[1]); diff --git a/test/c/perlin.c b/test/c/perlin.c index 29ebf964..5fa83a81 100644 --- a/test/c/perlin.c +++ b/test/c/perlin.c @@ -63,7 +63,7 @@ static void init(void) { p[256+i] = p[i] = permutation[i]; } -#ifdef __K1C__ +#ifdef __KVX__ #define INCREMENT 0.5 #define MIN -3.0 #define MAX 3.0 diff --git a/test/c/qsort.c b/test/c/qsort.c index 1ebe1e11..298e131f 100644 --- a/test/c/qsort.c +++ b/test/c/qsort.c @@ -34,7 +34,7 @@ int main(int argc, char ** argv) int n, i, j; int * a, * b; -#ifdef __K1C__ +#ifdef __KVX__ if (argc >= 2) n = atoi(argv[1]); else n = 500; #else if (argc >= 2) n = atoi(argv[1]); else n = 100000; diff --git a/test/c/sha1.c b/test/c/sha1.c index 624030cc..ce827c4a 100644 --- a/test/c/sha1.c +++ b/test/c/sha1.c @@ -231,7 +231,7 @@ int main(int argc, char ** argv) } do_test(test_input_1, test_output_1); do_test(test_input_2, test_output_2); -#ifdef __K1C__ +#ifdef __KVX__ do_bench(500); #else do_bench(200000); diff --git a/test/c/sha3.c b/test/c/sha3.c index 164e3086..796162a5 100644 --- a/test/c/sha3.c +++ b/test/c/sha3.c @@ -190,7 +190,7 @@ test_triplet_t testvec[4] = { } }; -#ifdef __K1C__ +#ifdef __KVX__ #define DATALEN 1000 #define NITER 7 #else diff --git a/test/c/siphash24.c b/test/c/siphash24.c index ce0df78c..b4b4ff34 100644 --- a/test/c/siphash24.c +++ b/test/c/siphash24.c @@ -235,7 +235,7 @@ int test_vectors() u8 testdata[100] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 12, 34, 56, 78, 90 }; -#ifdef __K1C__ +#ifdef __KVX__ #define NITER 1000 #else #define NITER 1000000 diff --git a/test/c/spectral.c b/test/c/spectral.c index dca78fe0..2d7604b2 100644 --- a/test/c/spectral.c +++ b/test/c/spectral.c @@ -43,7 +43,7 @@ void eval_AtA_times_u(int N, const double u[], double AtAu[]) int main(int argc, char *argv[]) { int i; -#ifdef __K1C__ +#ifdef __KVX__ int N = ((argc == 2) ? atoi(argv[1]) : 11); #else int N = ((argc == 2) ? atoi(argv[1]) : 1000); diff --git a/test/c/vmach.c b/test/c/vmach.c index 5858d4d6..56138104 100644 --- a/test/c/vmach.c +++ b/test/c/vmach.c @@ -159,7 +159,7 @@ long wordcode_interp(unsigned int* code) #define I(a,b,c,d) ((a) + ((b) << 8) + ((c) << 16) + ((d) << 24)) -#ifdef __K1C__ +#ifdef __KVX__ #define FIBSIZE 15 #else #define FIBSIZE 30 @@ -182,7 +182,7 @@ unsigned int wordcode_fib[] = { /* 13 */ I(WRETURN, 0, 2, 0) }; -#ifdef __K1C__ +#ifdef __KVX__ #define TAKSIZE1 6 #define TAKSIZE2 9 #define TAKSIZE3 12 diff --git a/test/endian.h b/test/endian.h index d6e121f4..204b69bc 100644 --- a/test/endian.h +++ b/test/endian.h @@ -1,7 +1,7 @@ #if defined(__ppc__) || defined(__PPC__) || defined(__ARMEB__) #define ARCH_BIG_ENDIAN #elif defined(__i386__) || defined(__x86_64__) || defined(__ARMEL__) \ - || defined(__riscv) || defined(__aarch64__) || defined(__K1C__) + || defined(__riscv) || defined(__aarch64__) || defined(__KVX__) #undef ARCH_BIG_ENDIAN #else #error "unknown endianness" diff --git a/test/monniaux/.gitignore b/test/monniaux/.gitignore index c06c2984..4ebc3cde 100644 --- a/test/monniaux/.gitignore +++ b/test/monniaux/.gitignore @@ -1,5 +1,5 @@ **.host -**.k1c +**.kvx **measures.csv commands.txt @@ -7,7 +7,7 @@ oracle_times.txt verifier_times.txt compile_times.pdf measure_times.host.pdf -measure_times.k1c.pdf +measure_times.kvx.pdf /.mypy_cache/ diff --git a/test/monniaux/BearSSL/conf/KalrayCompCert.mk b/test/monniaux/BearSSL/conf/KalrayCompCert.mk index 9b34eed2..d67fdb8b 100644 --- a/test/monniaux/BearSSL/conf/KalrayCompCert.mk +++ b/test/monniaux/BearSSL/conf/KalrayCompCert.mk @@ -53,7 +53,7 @@ LDDLLOUT = -o # Static linker. LD = $(CC) -LDFLAGS = ../clock.gcc.k1c.o +LDFLAGS = ../clock.gcc.kvx.o LDOUT = -o # C# compiler; we assume usage of Mono. diff --git a/test/monniaux/Makefile b/test/monniaux/Makefile index d7437eea..3bceb4ab 100644 --- a/test/monniaux/Makefile +++ b/test/monniaux/Makefile @@ -14,8 +14,8 @@ verifier_times.txt: Asmblockdeps.patch oracle_times.txt: PostpassSchedulingOracle.patch (cd ../../ && make -j20 && make install) - patch $(realpath ../../mppa_k1c/PostpassSchedulingOracle.ml) < $< - (cd ../../ && make -j20 && make install); patch -R $(realpath ../../mppa_k1c/PostpassSchedulingOracle.ml) < $< + patch $(realpath ../../kvx/PostpassSchedulingOracle.ml) < $< + (cd ../../ && make -j20 && make install); patch -R $(realpath ../../kvx/PostpassSchedulingOracle.ml) < $< bash clean_benches.sh bash build_benches.sh $@ @@ -30,10 +30,10 @@ measures.csv: #compile_times.pdf: gencompile.py verifier_times.txt oracle_times.txt # python3.5 $^ $@ # -#measure_times.k1c.pdf: gengraphs.py measures.csv +#measure_times.kvx.pdf: gengraphs.py measures.csv # python3.5 $^ $(basename $(basename $@)) .PHONY: clean: @bash clean_benches.sh - rm -f verifier_times.txt oracle_times.txt compile_times.pdf measure_times.k1c.pdf measures.csv + rm -f verifier_times.txt oracle_times.txt compile_times.pdf measure_times.kvx.pdf measures.csv diff --git a/test/monniaux/PostpassSchedulingOracle.patch b/test/monniaux/PostpassSchedulingOracle.patch index 31afdbc8..11a36c1b 100644 --- a/test/monniaux/PostpassSchedulingOracle.patch +++ b/test/monniaux/PostpassSchedulingOracle.patch @@ -1,7 +1,7 @@ -diff --git a/mppa_k1c/PostpassSchedulingOracle.ml b/mppa_k1c/PostpassSchedulingOracle.ml +diff --git a/kvx/PostpassSchedulingOracle.ml b/kvx/PostpassSchedulingOracle.ml index 2fc561e..d3748e8 100644 ---- a/mppa_k1c/PostpassSchedulingOracle.ml -+++ b/mppa_k1c/PostpassSchedulingOracle.ml +--- a/kvx/PostpassSchedulingOracle.ml ++++ b/kvx/PostpassSchedulingOracle.ml @@ -808,7 +808,7 @@ let print_bb oc bb = let asm_instructions = Asm.unfold_bblock bb in List.iter (print_inst oc) asm_instructions diff --git a/test/monniaux/README.md b/test/monniaux/README.md index 14b062da..c4978465 100644 --- a/test/monniaux/README.md +++ b/test/monniaux/README.md @@ -33,8 +33,8 @@ prints something of the form `c3 cycles: 44131`. - `ALL_CFLAGS`: `cflags` that are to be included for all compilers - `ALL_GCCFLAGS`: same, but GCC specific - `ALL_CCOMPFLAGS`: same, but `ccomp` specific -- `K1C_CC`: GCC compiler (default `k1-cos-gcc`) -- `K1C_CCOMP`: `CompCert` compiler (default `ccomp`) +- `KVX_CC`: GCC compiler (default `k1-cos-gcc`) +- `KVX_CCOMP`: `CompCert` compiler (default `ccomp`) - `EXECUTE_CYCLES`: running command (default is `k1-cluster --syscall=libstd_scalls.so --cycle-based --`) - `EXECUTE_ARGS`: execution arguments. You can use a macro `__BASE__` which expands to the name of the binary being executed. - `GCCiFLAGS` with `i` from 0 to 4: the wanted optimizations. If one of these flags is empty, nothing is done. Same for `CCOMPiFLAGS`. Look at `rules.mk` to see the default values. You might find something like this: diff --git a/test/monniaux/acswap/test_swapd.c b/test/monniaux/acswap/test_swapd.c index 4841f040..02dd8b06 100644 --- a/test/monniaux/acswap/test_swapd.c +++ b/test/monniaux/acswap/test_swapd.c @@ -8,6 +8,6 @@ int main() { unsigned long low, high; } i64_2; } ret; - ret.i128 = __builtin_k1_acswapd(&loc, next, current); + ret.i128 = __builtin_kvx_acswapd(&loc, next, current); printf("%lx %lx\n", ret.i64_2.low, ret.i64_2.high); } diff --git a/test/monniaux/acswap/test_swapw.c b/test/monniaux/acswap/test_swapw.c index 906938e0..6fb7d1cd 100644 --- a/test/monniaux/acswap/test_swapw.c +++ b/test/monniaux/acswap/test_swapw.c @@ -8,6 +8,6 @@ int main() { unsigned long low, high; } i64_2; } ret; - ret.i128 = __builtin_k1_acswapw(&loc, next, current); + ret.i128 = __builtin_kvx_acswapw(&loc, next, current); printf("%lx %lx\n", ret.i64_2.low, ret.i64_2.high); } diff --git a/test/monniaux/bitsliced-aes/notes.org b/test/monniaux/bitsliced-aes/notes.org index 6c2e27fa..c9a6fea2 100644 --- a/test/monniaux/bitsliced-aes/notes.org +++ b/test/monniaux/bitsliced-aes/notes.org @@ -3,52 +3,52 @@ ==> test.ccomp.host.out <== cycles: 3080223 -==> test.ccomp.k1c.out <== +==> test.ccomp.kvx.out <== cycles: 10145951 ==> test.gcc.host.out <== cycles: 1485887 -==> test.gcc.k1c.out <== +==> test.gcc.kvx.out <== cycles: 4078535 ** neg and ==> test.ccomp.host.out <== cycles: 2905049 -==> test.ccomp.k1c.out <== +==> test.ccomp.kvx.out <== cycles: 7995063 ==> test.gcc.host.out <== cycles: 1858263 -==> test.gcc.k1c.out <== +==> test.gcc.kvx.out <== cycles: 5255763 ** cmove mais mauvais scheduling de registres ==> test.ccomp.host.out <== cycles: 4363682 -==> test.ccomp.k1c.out <== +==> test.ccomp.kvx.out <== cycles: 7208629 ==> test.gcc.host.out <== cycles: 2916854 -==> test.gcc.k1c.out <== +==> test.gcc.kvx.out <== cycles: 5646730 ** cmove via match du and ==> test.ccomp.host.out <== cycles: 2553732 -==> test.ccomp.k1c.out <== +==> test.ccomp.kvx.out <== cycles: 7208629 ==> test.gcc.host.out <== cycles: 1849125 -==> test.gcc.k1c.out <== +==> test.gcc.kvx.out <== cycles: 5255763 ** hand optimized loads diff --git a/test/monniaux/bitsliced-aes/one_file/compare.sh b/test/monniaux/bitsliced-aes/one_file/compare.sh index e069eef6..314c1718 100755 --- a/test/monniaux/bitsliced-aes/one_file/compare.sh +++ b/test/monniaux/bitsliced-aes/one_file/compare.sh @@ -1,12 +1,12 @@ #!/bin/bash ROOT=/home/monniaux/work/Kalray/CompCert SRC=bitsliced-aes.c -k1-cos-gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.k1c.o -o bitsliced-aes.gcc.k1c && -$ROOT/ccomp -O3 -fno-unprototyped -O3 $SRC $ROOT/test/monniaux/clock.gcc.k1c.o -o bitsliced-aes.ccomp.k1c && +k1-cos-gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.kvx.o -o bitsliced-aes.gcc.kvx && +$ROOT/ccomp -O3 -fno-unprototyped -O3 $SRC $ROOT/test/monniaux/clock.gcc.kvx.o -o bitsliced-aes.ccomp.kvx && gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.host.o -o bitsliced-aes.gcc.host && valgrind ./bitsliced-aes.gcc.host && -k1-cluster -- ./bitsliced-aes.gcc.k1c > ./bitsliced-aes.gcc.k1c.out && -k1-cluster -- ./bitsliced-aes.ccomp.k1c > ./bitsliced-aes.ccomp.k1c.out && -grep cycles ./bitsliced-aes.gcc.k1c.out | sed -e 's/cycles: //' > ./bitsliced-aes.gcc.k1c.cycles && -grep cycles ./bitsliced-aes.ccomp.k1c.out | sed -e 's/cycles: //' > ./bitsliced-aes.ccomp.k1c.cycles && -test $(cat ./bitsliced-aes.ccomp.k1c.cycles) -gt $(expr 2 '*' $(cat ./bitsliced-aes.gcc.k1c.cycles)) +k1-cluster -- ./bitsliced-aes.gcc.kvx > ./bitsliced-aes.gcc.kvx.out && +k1-cluster -- ./bitsliced-aes.ccomp.kvx > ./bitsliced-aes.ccomp.kvx.out && +grep cycles ./bitsliced-aes.gcc.kvx.out | sed -e 's/cycles: //' > ./bitsliced-aes.gcc.kvx.cycles && +grep cycles ./bitsliced-aes.ccomp.kvx.out | sed -e 's/cycles: //' > ./bitsliced-aes.ccomp.kvx.cycles && +test $(cat ./bitsliced-aes.ccomp.kvx.cycles) -gt $(expr 2 '*' $(cat ./bitsliced-aes.gcc.kvx.cycles)) diff --git a/test/monniaux/bitsliced-aes/one_file/reduce/compare.sh b/test/monniaux/bitsliced-aes/one_file/reduce/compare.sh index 97939771..0f61ad00 100755 --- a/test/monniaux/bitsliced-aes/one_file/reduce/compare.sh +++ b/test/monniaux/bitsliced-aes/one_file/reduce/compare.sh @@ -2,15 +2,15 @@ ROOT=/home/monniaux/work/Kalray/CompCert SRC=bitsliced-aes_compute.c MAIN=/home/monniaux/work/Kalray/CompCert/test/monniaux/bitsliced-aes/one_file/reduce/bitsliced-aes_main -k1-cos-gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.k1c.o $MAIN.gcc.k1c.o -o bitsliced-aes.gcc.k1c && -$ROOT/ccomp -O3 -fno-unprototyped -O3 $SRC $ROOT/test/monniaux/clock.gcc.k1c.o $MAIN.gcc.k1c.o -o bitsliced-aes.ccomp.k1c && +k1-cos-gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.kvx.o $MAIN.gcc.kvx.o -o bitsliced-aes.gcc.kvx && +$ROOT/ccomp -O3 -fno-unprototyped -O3 $SRC $ROOT/test/monniaux/clock.gcc.kvx.o $MAIN.gcc.kvx.o -o bitsliced-aes.ccomp.kvx && gcc -Werror=implicit -Werror=uninitialized -O3 $SRC $ROOT/test/monniaux/clock.gcc.host.o $MAIN.c -o bitsliced-aes.gcc.host && valgrind ./bitsliced-aes.gcc.host && -k1-cluster --cycle-based -- ./bitsliced-aes.gcc.k1c > ./bitsliced-aes.gcc.k1c.out && -k1-cluster --cycle-based -- ./bitsliced-aes.ccomp.k1c > ./bitsliced-aes.ccomp.k1c.out && -grep cycles ./bitsliced-aes.gcc.k1c.out > ./bitsliced-aes.gcc.k1c.cycles && -grep cycles ./bitsliced-aes.ccomp.k1c.out > ./bitsliced-aes.ccomp.k1c.cycles && -sed -i -e 's/cycles: //' ./bitsliced-aes.gcc.k1c.cycles && -sed -i -e 's/cycles: //' ./bitsliced-aes.ccomp.k1c.cycles && -test $(cat ./bitsliced-aes.gcc.k1c.cycles) -gt 100000 && -test $(cat ./bitsliced-aes.ccomp.k1c.cycles) -gt $(expr 2 '*' $(cat ./bitsliced-aes.gcc.k1c.cycles)) +k1-cluster --cycle-based -- ./bitsliced-aes.gcc.kvx > ./bitsliced-aes.gcc.kvx.out && +k1-cluster --cycle-based -- ./bitsliced-aes.ccomp.kvx > ./bitsliced-aes.ccomp.kvx.out && +grep cycles ./bitsliced-aes.gcc.kvx.out > ./bitsliced-aes.gcc.kvx.cycles && +grep cycles ./bitsliced-aes.ccomp.kvx.out > ./bitsliced-aes.ccomp.kvx.cycles && +sed -i -e 's/cycles: //' ./bitsliced-aes.gcc.kvx.cycles && +sed -i -e 's/cycles: //' ./bitsliced-aes.ccomp.kvx.cycles && +test $(cat ./bitsliced-aes.gcc.kvx.cycles) -gt 100000 && +test $(cat ./bitsliced-aes.ccomp.kvx.cycles) -gt $(expr 2 '*' $(cat ./bitsliced-aes.gcc.kvx.cycles)) diff --git a/test/monniaux/bitsliced-tea/bstea_wordsize.h b/test/monniaux/bitsliced-tea/bstea_wordsize.h index b4e2e823..4305db58 100644 --- a/test/monniaux/bitsliced-tea/bstea_wordsize.h +++ b/test/monniaux/bitsliced-tea/bstea_wordsize.h @@ -6,7 +6,7 @@ #if defined __x86_64__ || defined __amd64__ || defined __x86_64 || \ defined __amd64 || defined _M_X64 || defined __ia64__ || \ defined __ia64__ || defined __IA64__ || defined __ia64 || \ - defined _M_IA64 || defined __K1C__ + defined _M_IA64 || defined __KVX__ # define __BSTEA_WORDSIZE 64 #else # define __BSTEA_WORDSIZE 32 diff --git a/test/monniaux/bitsliced-tea/reduce/compare.sh b/test/monniaux/bitsliced-tea/reduce/compare.sh index f0b1f8d2..7f96491b 100755 --- a/test/monniaux/bitsliced-tea/reduce/compare.sh +++ b/test/monniaux/bitsliced-tea/reduce/compare.sh @@ -5,16 +5,16 @@ GCC_K1="k1-cos-gcc -Werror=implicit -O3 $INCLUDES" GCC_HOST="gcc -Werror=implicit -O3 $INCLUDES" FILE=bstea.c -OTHERS_K1="$PREFIX/test/monniaux/bitsliced-tea/bstea_run.gcc.k1c.o $PREFIX/test/monniaux/clock.gcc.k1c.o" +OTHERS_K1="$PREFIX/test/monniaux/bitsliced-tea/bstea_run.gcc.kvx.o $PREFIX/test/monniaux/clock.gcc.kvx.o" OTHERS_HOST="$PREFIX/test/monniaux/bitsliced-tea/bstea_run.gcc.host.o $PREFIX/test/monniaux/clock.gcc.host.o" -$CCOMP_K1 $FILE $OTHERS_K1 -o bstead.ccomp.k1c && -$GCC_K1 $FILE $OTHERS_K1 -o bstead.gcc.k1c && +$CCOMP_K1 $FILE $OTHERS_K1 -o bstead.ccomp.kvx && +$GCC_K1 $FILE $OTHERS_K1 -o bstead.gcc.kvx && $GCC_HOST $FILE $OTHERS_HOST -o bstead.gcc.host && valgrind -q ./bstead.gcc.host && -k1-cluster --cycle-based -- bstead.ccomp.k1c > bstead.ccomp.k1c.out && -k1-cluster --cycle-based -- bstead.gcc.k1c > bstead.gcc.k1c.out && -grep cycles bstead.ccomp.k1c.out|sed -e 's/cycles: //' > bstead.ccomp.k1c.cycles && -grep cycles bstead.gcc.k1c.out|sed -e 's/cycles: //' > bstead.gcc.k1c.cycles && -test `cat bstead.gcc.k1c.cycles` -gt 100000 && -test `cat bstead.ccomp.k1c.cycles` -gt 200000 +k1-cluster --cycle-based -- bstead.ccomp.kvx > bstead.ccomp.kvx.out && +k1-cluster --cycle-based -- bstead.gcc.kvx > bstead.gcc.kvx.out && +grep cycles bstead.ccomp.kvx.out|sed -e 's/cycles: //' > bstead.ccomp.kvx.cycles && +grep cycles bstead.gcc.kvx.out|sed -e 's/cycles: //' > bstead.gcc.kvx.cycles && +test `cat bstead.gcc.kvx.cycles` -gt 100000 && +test `cat bstead.ccomp.kvx.cycles` -gt 200000 diff --git a/test/monniaux/crypto-algorithms/Makefile b/test/monniaux/crypto-algorithms/Makefile index 41daba38..fde22f38 100644 --- a/test/monniaux/crypto-algorithms/Makefile +++ b/test/monniaux/crypto-algorithms/Makefile @@ -1,28 +1,28 @@ include ../rules.mk all: md2.all md5.all sha1.all sha256.all blowfish.all des.all -k1c: md2_test.ccomp.k1c md5_test.ccomp.k1c sha1_test.ccomp.k1c sha256_test.ccomp.k1c blowfish_test.ccomp.k1c des_test.ccomp.k1c +kvx: md2_test.ccomp.kvx md5_test.ccomp.kvx sha1_test.ccomp.kvx sha256_test.ccomp.kvx blowfish_test.ccomp.kvx des_test.ccomp.kvx -md2.all : md2_test.ccomp.k1c.out md2_test.gcc.k1c.out -md5.all : md5_test.ccomp.k1c.out md5_test.gcc.k1c.out -arcfour.all : arcfour_test.ccomp.k1c.out arcfour_test.gcc.k1c.out -blowfish.all : blowfish_test.ccomp.k1c.out blowfish_test.gcc.k1c.out -rot-13.all : rot-13_test.ccomp.k1c.out rot-13_test.gcc.k1c.out -sha1.all : sha1_test.ccomp.k1c.out sha1_test.gcc.k1c.out -sha256.all : sha256_test.ccomp.k1c.out sha256_test.gcc.k1c.out -des.all: des_test.ccomp.k1c.out des_test.gcc.k1c.out -base64.all: base64_test.ccomp.k1c.out base64_test.gcc.k1c.out -aes.all : aes_test.ccomp.k1c.out aes_test.gcc.k1c.out +md2.all : md2_test.ccomp.kvx.out md2_test.gcc.kvx.out +md5.all : md5_test.ccomp.kvx.out md5_test.gcc.kvx.out +arcfour.all : arcfour_test.ccomp.kvx.out arcfour_test.gcc.kvx.out +blowfish.all : blowfish_test.ccomp.kvx.out blowfish_test.gcc.kvx.out +rot-13.all : rot-13_test.ccomp.kvx.out rot-13_test.gcc.kvx.out +sha1.all : sha1_test.ccomp.kvx.out sha1_test.gcc.kvx.out +sha256.all : sha256_test.ccomp.kvx.out sha256_test.gcc.kvx.out +des.all: des_test.ccomp.kvx.out des_test.gcc.kvx.out +base64.all: base64_test.ccomp.kvx.out base64_test.gcc.kvx.out +aes.all : aes_test.ccomp.kvx.out aes_test.gcc.kvx.out -%.gcc.k1c.s %.ccomp.k1c.s %_test.gcc.k1c.s: %.h +%.gcc.kvx.s %.ccomp.kvx.s %_test.gcc.kvx.s: %.h -%_test.gcc.k1c: %.gcc.k1c.o %_test.gcc.k1c.o - $(K1C_CC) $(K1C_CFLAGS) $+ -o $@ +%_test.gcc.kvx: %.gcc.kvx.o %_test.gcc.kvx.o + $(KVX_CC) $(KVX_CFLAGS) $+ -o $@ -%_test.ccomp.k1c: %.ccomp.k1c.o %_test.gcc.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +%_test.ccomp.kvx: %.ccomp.kvx.o %_test.gcc.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ clean: - $(RM) -f *.s *.o *.out *.k1c *.host + $(RM) -f *.s *.o *.out *.kvx *.host .PHONY: clean all md2.all md5.all rot-13.all sha1.all sha256.all md5.all blowfish.all arcfour.all des.all base64.all aes.all diff --git a/test/monniaux/csmith/Makefile b/test/monniaux/csmith/Makefile index 3c748c62..56313452 100644 --- a/test/monniaux/csmith/Makefile +++ b/test/monniaux/csmith/Makefile @@ -2,11 +2,11 @@ CSMITH?=/local/monniaux/packages/csmith-2.3.0/bin/csmith MAX=1000 include ../rules.mk -K1C_CCOMPFLAGS+=-I/local/monniaux/packages/csmith-2.3.0/include/csmith-2.3.0 -fstruct-passing -fbitfields +KVX_CCOMPFLAGS+=-I/local/monniaux/packages/csmith-2.3.0/include/csmith-2.3.0 -fstruct-passing -fbitfields -TARGETS_S=$(shell seq --format src%06.f.ccomp.k1c.s 0 $(MAX)) +TARGETS_S=$(shell seq --format src%06.f.ccomp.kvx.s 0 $(MAX)) TARGETS_C=$(shell seq --format src%06.f.c 0 $(MAX)) -TARGETS_O=$(shell seq --format src%06.f.ccomp.k1c.o 0 $(MAX)) +TARGETS_O=$(shell seq --format src%06.f.ccomp.kvx.o 0 $(MAX)) all: c s o diff --git a/test/monniaux/cycles.h b/test/monniaux/cycles.h index 5011b18c..1f7a991a 100644 --- a/test/monniaux/cycles.h +++ b/test/monniaux/cycles.h @@ -2,7 +2,7 @@ #include #include -#ifdef __K1C__ +#ifdef __KVX__ typedef uint64_t cycle_t; #define PRcycle PRId64 @@ -11,18 +11,18 @@ typedef uint64_t cycle_t; static inline void cycle_count_config(void) { /* config pmc for cycle count */ - cycle_t pmc_value = __builtin_k1_get(COS_SFR_PMC); + cycle_t pmc_value = __builtin_kvx_get(COS_SFR_PMC); pmc_value &= ~(0xfULL); - __builtin_k1_set(COS_SFR_PMC, pmc_value); + __builtin_kvx_set(COS_SFR_PMC, pmc_value); } static inline cycle_t get_cycle(void) { - return __builtin_k1_get(COS_SFR_PM0); + return __builtin_kvx_get(COS_SFR_PM0); } -#else // not K1C +#else // not KVX static inline void cycle_count_config(void) { } #if defined(__i386__) || defined( __x86_64__) diff --git a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified5 b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified5 index 9263169b..f56df84c 100644 --- a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified5 +++ b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified5 @@ -1,5 +1,5 @@ # File generated by CompCert 3.4 -# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.k1c.s +# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.kvx.s .text .balign 2 downheap: diff --git a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified7 b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified7 index 4d6a12de..0c873f0e 100644 --- a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified7 +++ b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.modified7 @@ -1,5 +1,5 @@ # File generated by CompCert 3.4 -# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.k1c.s +# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.kvx.s .text .balign 2 downheap: diff --git a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.orig b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.orig index 3dc370b8..0d7d5c0b 100644 --- a/test/monniaux/heapsort/heapsort.ccomp.k1c.s.orig +++ b/test/monniaux/heapsort/heapsort.ccomp.k1c.s.orig @@ -1,5 +1,5 @@ # File generated by CompCert 3.4 -# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.k1c.s +# Command line: -Wall -O3 -S heapsort.c -o heapsort.ccomp.kvx.s .text .balign 2 downheap: diff --git a/test/monniaux/jpeg-6b/Makefile b/test/monniaux/jpeg-6b/Makefile index 2bec9bb7..36d230a1 100644 --- a/test/monniaux/jpeg-6b/Makefile +++ b/test/monniaux/jpeg-6b/Makefile @@ -15,7 +15,7 @@ EXECUTE_ARGS=-dct int -outfile __BASE__.jpg testimg.ppm 2> __BASE__.out include ../rules.mk -#all: cjpeg.gcc.k1c.out djpeg.gcc.k1c.out cjpeg.gcc.o1.k1c.out djpeg.gcc.o1.k1c.out cjpeg.ccomp.k1c.out djpeg.ccomp.k1c.out +#all: cjpeg.gcc.kvx.out djpeg.gcc.kvx.out cjpeg.gcc.o1.kvx.out djpeg.gcc.o1.kvx.out cjpeg.ccomp.kvx.out djpeg.ccomp.kvx.out # #LIBSOURCES= jcapimin.c jcapistd.c jccoefct.c jccolor.c jcdctmgr.c jchuff.c \ # jcinit.c jcmainct.c jcmarker.c jcmaster.c jcomapi.c jcparam.c \ @@ -27,26 +27,26 @@ include ../rules.mk # jquant2.c jutils.c jmemmgr.c jmemansi.c #CSOURCES=$(LIBSOURCES) rdppm.c rdgif.c rdtarga.c rdrle.c rdbmp.c rdswitch.c cdjpeg.c wrppm.c wrgif.c wrtarga.c wrrle.c wrbmp.c rdcolmap.c # -#LIB_K1C_GCC_OFILES=$(CSOURCES:.c=.gcc.k1c.o) -#LIB_K1C_GCC_O1_OFILES=$(CSOURCES:.c=.gcc.o1.k1c.o) -#LIB_K1C_CCOMP_OFILES=$(CSOURCES:.c=.ccomp.k1c.o) +#LIB_KVX_GCC_OFILES=$(CSOURCES:.c=.gcc.kvx.o) +#LIB_KVX_GCC_O1_OFILES=$(CSOURCES:.c=.gcc.o1.kvx.o) +#LIB_KVX_CCOMP_OFILES=$(CSOURCES:.c=.ccomp.kvx.o) # #include ../rules.mk # -#cjpeg.gcc.k1c: $(LIB_K1C_GCC_OFILES) cjpeg.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS) -o $@ $+ ../clock.gcc.k1c.o -#djpeg.gcc.k1c: $(LIB_K1C_GCC_OFILES) djpeg.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS) -o $@ $+ ../clock.gcc.k1c.o +#cjpeg.gcc.kvx: $(LIB_KVX_GCC_OFILES) cjpeg.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS) -o $@ $+ ../clock.gcc.kvx.o +#djpeg.gcc.kvx: $(LIB_KVX_GCC_OFILES) djpeg.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS) -o $@ $+ ../clock.gcc.kvx.o # -#cjpeg.gcc.o1.k1c: $(LIB_K1C_GCC_O1_OFILES) cjpeg.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS_O1) -o $@ $+ ../clock.gcc.k1c.o -#djpeg.gcc.o1.k1c: $(LIB_K1C_GCC_O1_OFILES) djpeg.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS_O1) -o $@ $+ ../clock.gcc.k1c.o +#cjpeg.gcc.o1.kvx: $(LIB_KVX_GCC_O1_OFILES) cjpeg.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS_O1) -o $@ $+ ../clock.gcc.kvx.o +#djpeg.gcc.o1.kvx: $(LIB_KVX_GCC_O1_OFILES) djpeg.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS_O1) -o $@ $+ ../clock.gcc.kvx.o # -#cjpeg.ccomp.k1c: $(LIB_K1C_CCOMP_OFILES) cjpeg.gcc.k1c.o -# $(K1C_CCOMP) $(K1C_CCOMPFLAGS) -o $@ $+ ../clock.gcc.k1c.o -#djpeg.ccomp.k1c: $(LIB_K1C_CCOMP_OFILES) djpeg.gcc.k1c.o -# $(K1C_CCOMP) $(K1C_CCOMPFLAGS) -o $@ $+ ../clock.gcc.k1c.o +#cjpeg.ccomp.kvx: $(LIB_KVX_CCOMP_OFILES) cjpeg.gcc.kvx.o +# $(KVX_CCOMP) $(KVX_CCOMPFLAGS) -o $@ $+ ../clock.gcc.kvx.o +#djpeg.ccomp.kvx: $(LIB_KVX_CCOMP_OFILES) djpeg.gcc.kvx.o +# $(KVX_CCOMP) $(KVX_CCOMPFLAGS) -o $@ $+ ../clock.gcc.kvx.o # # #djpeg.%.out: djpeg.% diff --git a/test/monniaux/k1_builtins/atomics.c b/test/monniaux/k1_builtins/atomics.c index 40c459e2..481a4aee 100644 --- a/test/monniaux/k1_builtins/atomics.c +++ b/test/monniaux/k1_builtins/atomics.c @@ -2,10 +2,10 @@ int main() { long lval = 45; - long lval2 = __builtin_k1_afaddd(&lval, 6); + long lval2 = __builtin_kvx_afaddd(&lval, 6); printf("%ld %ld\n", lval, lval2); int ival = 45; - int ival2 = __builtin_k1_afaddw(&ival, 6); + int ival2 = __builtin_kvx_afaddw(&ival, 6); printf("%d %d\n", ival, ival2); return 0; } diff --git a/test/monniaux/k1_builtins/execute_code.c b/test/monniaux/k1_builtins/execute_code.c index 58580ed9..d3cc35d2 100644 --- a/test/monniaux/k1_builtins/execute_code.c +++ b/test/monniaux/k1_builtins/execute_code.c @@ -19,7 +19,7 @@ int main() { int rpoulet = (*((fun_type*) buf))(33); memcpy(buf, canard, SIZE); int rcanard = (*((fun_type*) buf))(33); - __builtin_k1_iinval(); + __builtin_kvx_iinval(); int rcanard2 = (*((fun_type*) buf))(33); free(buf); printf("%d %d %d\n", rpoulet, rcanard, rcanard2); diff --git a/test/monniaux/k1_builtins/sbmm8.c b/test/monniaux/k1_builtins/sbmm8.c index 3b2ac447..dba7a72b 100644 --- a/test/monniaux/k1_builtins/sbmm8.c +++ b/test/monniaux/k1_builtins/sbmm8.c @@ -3,12 +3,12 @@ int main() { { unsigned long a = 0x12345678ABCDEFUL, b=0x12345118ABCD32UL, c; - c = __builtin_k1_sbmm8(a, b); + c = __builtin_kvx_sbmm8(a, b); printf("%lx\n", c); } { unsigned long a = 0x0102040810204080UL, b=0x12345118ABCD32UL, c; - c = __builtin_k1_sbmm8(a, b); + c = __builtin_kvx_sbmm8(a, b); printf("%lx\n", c); } return 0; diff --git a/test/monniaux/k1_builtins/test_k1_builtins.c b/test/monniaux/k1_builtins/test_k1_builtins.c index e02c7f2e..29903bb6 100644 --- a/test/monniaux/k1_builtins/test_k1_builtins.c +++ b/test/monniaux/k1_builtins/test_k1_builtins.c @@ -1,40 +1,40 @@ #include -#include +#include void test_system_regs(void) { - __builtin_k1_wfxl(K1_SFR_EV4, 0x1000ULL); - __builtin_k1_wfxm(K1_SFR_EV4, 0x2000ULL); - __builtin_k1_get(K1_SFR_EV4); - __builtin_k1_set(K1_SFR_EV4, 0x4000ULL); + __builtin_kvx_wfxl(K1_SFR_EV4, 0x1000ULL); + __builtin_kvx_wfxm(K1_SFR_EV4, 0x2000ULL); + __builtin_kvx_get(K1_SFR_EV4); + __builtin_kvx_set(K1_SFR_EV4, 0x4000ULL); } void test_loads(void *addr) { - __builtin_k1_alclrd(addr); - __builtin_k1_alclrw(addr); - __builtin_k1_lbzu(addr); - __builtin_k1_lhzu(addr); - __builtin_k1_lwzu(addr); - __builtin_k1_ldu(addr); - __builtin_k1_dinvall(addr); - __builtin_k1_dtouchl(addr); - __builtin_k1_dzerol(addr); - __builtin_k1_iinvals(addr); - /* __builtin_k1_itouchl(addr); */ - __builtin_k1_dzerol(addr); + __builtin_kvx_alclrd(addr); + __builtin_kvx_alclrw(addr); + __builtin_kvx_lbzu(addr); + __builtin_kvx_lhzu(addr); + __builtin_kvx_lwzu(addr); + __builtin_kvx_ldu(addr); + __builtin_kvx_dinvall(addr); + __builtin_kvx_dtouchl(addr); + __builtin_kvx_dzerol(addr); + __builtin_kvx_iinvals(addr); + /* __builtin_kvx_itouchl(addr); */ + __builtin_kvx_dzerol(addr); } void test_stops(void) { - __builtin_k1_await(); - __builtin_k1_sleep(); - __builtin_k1_stop(); - __builtin_k1_barrier(); - __builtin_k1_fence(); - __builtin_k1_dinval(); - __builtin_k1_iinval(); + __builtin_kvx_await(); + __builtin_kvx_sleep(); + __builtin_kvx_stop(); + __builtin_kvx_barrier(); + __builtin_kvx_fence(); + __builtin_kvx_dinval(); + __builtin_kvx_iinval(); } int main() { unsigned long long data = 45; - unsigned long long res = __builtin_k1_alclrd(&data); + unsigned long long res = __builtin_kvx_alclrd(&data); printf("%llu %llu\n", res, data); } diff --git a/test/monniaux/math/exceptions.c b/test/monniaux/math/exceptions.c index 72107066..84ed54db 100644 --- a/test/monniaux/math/exceptions.c +++ b/test/monniaux/math/exceptions.c @@ -4,16 +4,16 @@ #pragma STDC FENV_ACCESS ON -#if defined(__K1C__) && !defined(__COMPCERT__) +#if defined(__KVX__) && !defined(__COMPCERT__) int fetestexcept(int excepts) { int mask = (K1_SFR_CS_IO_MASK | K1_SFR_CS_DZ_MASK | K1_SFR_CS_OV_MASK | K1_SFR_CS_UN_MASK | K1_SFR_CS_IN_MASK) & excepts; - unsigned long long cs = __builtin_k1_get(K1_SFR_CS); + unsigned long long cs = __builtin_kvx_get(K1_SFR_CS); return cs & mask; } int feclearexcept(int excepts) { int mask = (K1_SFR_CS_IO_MASK | K1_SFR_CS_DZ_MASK | K1_SFR_CS_OV_MASK | K1_SFR_CS_UN_MASK | K1_SFR_CS_IN_MASK) & excepts; - __builtin_k1_wfxl(K1_SFR_CS, mask); + __builtin_kvx_wfxl(K1_SFR_CS, mask); return 0; } #endif diff --git a/test/monniaux/math/rounding.c b/test/monniaux/math/rounding.c index c2ce85e3..3ac8faf0 100644 --- a/test/monniaux/math/rounding.c +++ b/test/monniaux/math/rounding.c @@ -1,18 +1,18 @@ #include #include -#ifdef __K1C__ -#include +#ifdef __KVX__ +#include int fesetround(int rounding_mode) { if (rounding_mode < 0 || rounding_mode > 3) return 1; - unsigned long long cs = __builtin_k1_get(K1_SFR_CS); + unsigned long long cs = __builtin_kvx_get(K1_SFR_CS); cs = (cs & ~(3 << 16)) | (rounding_mode << 16); - __builtin_k1_set(K1_SFR_CS, cs); + __builtin_kvx_set(K1_SFR_CS, cs); return 0; } int fegetround(void) { - unsigned long long cs = __builtin_k1_get(K1_SFR_CS); + unsigned long long cs = __builtin_kvx_get(K1_SFR_CS); return (cs >> 16) & 3; } #endif diff --git a/test/monniaux/micro-bunzip/Makefile b/test/monniaux/micro-bunzip/Makefile index 58dfed9b..bfcc377a 100644 --- a/test/monniaux/micro-bunzip/Makefile +++ b/test/monniaux/micro-bunzip/Makefile @@ -1,24 +1,24 @@ include ../rules.mk -all: testfile.txt testfile.txt.2ccomp testfile.txt.2gcc testfile.ccomp.k1c.out testfile.gcc.k1c.out testfile.ccomp.host.out testfile.gcc.host.out +all: testfile.txt testfile.txt.2ccomp testfile.txt.2gcc testfile.ccomp.kvx.out testfile.gcc.kvx.out testfile.ccomp.host.out testfile.gcc.host.out cmp testfile.txt testfile.txt.2ccomp cmp testfile.txt testfile.txt.2gcc micro-bunzip.ccomp.host: micro-bunzip.c ../clock.gcc.host.o $(CCOMP) $(CCOMPFLAGS) $+ -o $@ -micro-bunzip.ccomp.k1c: micro-bunzip.c ../clock.gcc.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +micro-bunzip.ccomp.kvx: micro-bunzip.c ../clock.gcc.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ micro-bunzip.gcc.host: micro-bunzip.c ../clock.gcc.host.o $(CC) $(CFLAGS) $+ -o $@ -# micro-bunzip.gcc.k1c: micro-bunzip.c ../clock.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS) $+ -o $@ +# micro-bunzip.gcc.kvx: micro-bunzip.c ../clock.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS) $+ -o $@ # TODO: -O3 buggy?? -micro-bunzip.gcc.k1c: micro-bunzip.c ../clock.gcc.k1c.o - $(K1C_CC) -Wall -O2 $+ -o $@ +micro-bunzip.gcc.kvx: micro-bunzip.c ../clock.gcc.kvx.o + $(KVX_CC) -Wall -O2 $+ -o $@ testfile.txt: micro-bunzip.c cat micro-bunzip.c > $@ @@ -35,11 +35,11 @@ testfile.txt: micro-bunzip.c # sha512sum micro-bunzip.c >> $@ #x cat micro-bunzip.c >> $@ -testfile.txt.2ccomp testfile.ccomp.k1c.out: testfile.txt micro-bunzip.ccomp.k1c - bzip2 testfile.txt.2ccomp 2> testfile.ccomp.k1c.out +testfile.txt.2ccomp testfile.ccomp.kvx.out: testfile.txt micro-bunzip.ccomp.kvx + bzip2 testfile.txt.2ccomp 2> testfile.ccomp.kvx.out -testfile.txt.2gcc testfile.gcc.k1c.out: testfile.txt micro-bunzip.gcc.k1c - bzip2 testfile.txt.2gcc 2> testfile.gcc.k1c.out +testfile.txt.2gcc testfile.gcc.kvx.out: testfile.txt micro-bunzip.gcc.kvx + bzip2 testfile.txt.2gcc 2> testfile.gcc.kvx.out testfile.txt.2host testfile.gcc.host.out: testfile.txt micro-bunzip.gcc.host bzip2 testfile.txt.2host 2> testfile.gcc.host.out @@ -48,6 +48,6 @@ testfile.ccomp.host.out: testfile.txt micro-bunzip.ccomp.host bzip2 /dev/null 2> testfile.ccomp.host.out clean: - rm -f *.k1c *.out test*txt* + rm -f *.kvx *.out test*txt* .PHONY: clean diff --git a/test/monniaux/minisat/Makefile b/test/monniaux/minisat/Makefile index f98b69b7..3a0268a6 100644 --- a/test/monniaux/minisat/Makefile +++ b/test/monniaux/minisat/Makefile @@ -5,7 +5,7 @@ EXECUTE_ARGS=sudoku.sat src=main.c solver.c -PRODUCTS?=minisat.gcc.host minisat.ccomp.host minisat.gcc.k1c minisat.gcc.o1.k1c minisat.ccomp.k1c +PRODUCTS?=minisat.gcc.host minisat.ccomp.host minisat.gcc.kvx minisat.gcc.o1.kvx minisat.ccomp.kvx PRODUCTS_OUT=$(addsuffix .out,$(PRODUCTS)) all: $(PRODUCTS) @@ -19,18 +19,18 @@ minisat.gcc.host: $(src:.c=.gcc.host.o) ../clock.gcc.host.o $(CC) $(CFLAGS) $+ $(LIBS) -o $@ minisat.ccomp.host: $(src:.c=.ccomp.host.o) ../clock.gcc.host.o $(CCOMP) $(CCOMPFLAGS) $+ $(LIBS) -o $@ -minisat.gcc.k1c: $(src:.c=.gcc.k1c.o) ../clock.gcc.k1c.o - $(K1C_CC) $(K1C_CFLAGS) $+ $(LIBS) -o $@ -minisat.gcc.o1.k1c: $(src:.c=.gcc.o1.k1c.o) ../clock.gcc.k1c.o - $(K1C_CC) $(K1C_CFLAGS_O1) $+ $(LIBS) -o $@ -minisat.ccomp.k1c: $(src:.c=.ccomp.k1c.o) ../clock.gcc.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ $(LIBS) -o $@ +minisat.gcc.kvx: $(src:.c=.gcc.kvx.o) ../clock.gcc.kvx.o + $(KVX_CC) $(KVX_CFLAGS) $+ $(LIBS) -o $@ +minisat.gcc.o1.kvx: $(src:.c=.gcc.o1.kvx.o) ../clock.gcc.kvx.o + $(KVX_CC) $(KVX_CFLAGS_O1) $+ $(LIBS) -o $@ +minisat.ccomp.kvx: $(src:.c=.ccomp.kvx.o) ../clock.gcc.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ $(LIBS) -o $@ measures.csv: $(PRODUCTS_OUT) - echo "benches, gcc host,ccomp host,gcc k1c,gcc o1 k1c,ccomp k1c" > $@ + echo "benches, gcc host,ccomp host,gcc kvx,gcc o1 kvx,ccomp kvx" > $@ .SECONDARY: .PHONY: clean: - rm -f *.o *.s *.k1c *.csv + rm -f *.o *.s *.kvx *.csv diff --git a/test/monniaux/mod_int_mat/Makefile b/test/monniaux/mod_int_mat/Makefile index 08b97b67..ff90f901 100644 --- a/test/monniaux/mod_int_mat/Makefile +++ b/test/monniaux/mod_int_mat/Makefile @@ -1,40 +1,40 @@ CFLAGS=-Wall -O3 -std=c99 -K1C_CC=k1-cos-gcc -K1C_CFLAGS=-Wall -O3 -std=c99 -K1C_CCOMP=../../../ccomp -K1C_CCOMPFLAGS=-Wall -O3 +KVX_CC=k1-cos-gcc +KVX_CFLAGS=-Wall -O3 -std=c99 +KVX_CCOMP=../../../ccomp +KVX_CCOMPFLAGS=-Wall -O3 -PRODUCTS=int_mat.host int_mat.gcc.k1c.out int_mat.ccomp.k1c.out int_mat.ccomp.k1c.s int_mat.gcc.k1c.s int_mat.gcc.k1c int_mat.ccomp.k1c +PRODUCTS=int_mat.host int_mat.gcc.kvx.out int_mat.ccomp.kvx.out int_mat.ccomp.kvx.s int_mat.gcc.kvx.s int_mat.gcc.kvx int_mat.ccomp.kvx all: $(PRODUCTS) -%.gcc.k1c.s: %.c - $(K1C_CC) $(K1C_CFLAGS) -S $< -o $@ +%.gcc.kvx.s: %.c + $(KVX_CC) $(KVX_CFLAGS) -S $< -o $@ -%.gcc.k1c.o: %.gcc.k1c.s - $(K1C_CC) $(K1C_CFLAGS) -c $< -o $@ +%.gcc.kvx.o: %.gcc.kvx.s + $(KVX_CC) $(KVX_CFLAGS) -c $< -o $@ -%.ccomp.k1c.s: %.c - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) -S $< -o $@ +%.ccomp.kvx.s: %.c + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) -S $< -o $@ -%.ccomp.k1c.o: %.ccomp.k1c.s - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) -c $< -o $@ +%.ccomp.kvx.o: %.ccomp.kvx.s + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) -c $< -o $@ int_mat.host: int_mat.c int_mat_run.c modint.h $(CC) $(CFLAGS) int_mat.c int_mat_run.c -o $@ -int_mat.gcc.k1c.s int_mat.ccomp.k1c.s int_mat_run.gcc.k1c.s: modint.h +int_mat.gcc.kvx.s int_mat.ccomp.kvx.s int_mat_run.gcc.kvx.s: modint.h -int_mat.gcc.k1c: int_mat.gcc.k1c.o int_mat_run.gcc.k1c.o - $(K1C_CC) $(K1C_CFLAGS) $+ -o $@ +int_mat.gcc.kvx: int_mat.gcc.kvx.o int_mat_run.gcc.kvx.o + $(KVX_CC) $(KVX_CFLAGS) $+ -o $@ -int_mat.ccomp.k1c: int_mat.ccomp.k1c.o int_mat_run.gcc.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +int_mat.ccomp.kvx: int_mat.ccomp.kvx.o int_mat_run.gcc.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ -%.k1c.out: %.k1c +%.kvx.out: %.kvx k1-cluster --cycle-based -- $< | tee $@ clean: - $(RM) -f $(PRODUCTS) int_mat.gcc.k1c.o int_mat.ccomp.k1c.o int_mat_run.gcc.k1c.o + $(RM) -f $(PRODUCTS) int_mat.gcc.kvx.o int_mat.ccomp.kvx.o int_mat_run.gcc.kvx.o .PHONY: clean diff --git a/test/monniaux/multithreaded_volatile/Makefile b/test/monniaux/multithreaded_volatile/Makefile index 35717953..6c7dd663 100644 --- a/test/monniaux/multithreaded_volatile/Makefile +++ b/test/monniaux/multithreaded_volatile/Makefile @@ -1,18 +1,18 @@ -all: volatile.ccomp.k1c volatile.gcc.k1c +all: volatile.ccomp.kvx volatile.gcc.kvx -volatile.ccomp.k1c : volatile.ccomp.k1c.s +volatile.ccomp.kvx : volatile.ccomp.kvx.s k1-cos-gcc $< -o $@ -volatile.gcc.k1c : volatile.gcc.k1c.s +volatile.gcc.kvx : volatile.gcc.kvx.s k1-cos-gcc $< -o $@ -volatile.ccomp.k1c.s : volatile.c +volatile.ccomp.kvx.s : volatile.c ../../../ccomp -O2 -Wall -S $< -o $@ -volatile.gcc.k1c.s : volatile.c +volatile.gcc.kvx.s : volatile.c k1-cos-gcc -O2 -Wall -Werror=implicit -std=gnu99 -S $< -o $@ clean: - -rm -f *.k1c *.s + -rm -f *.kvx *.s .PHONY: clean diff --git a/test/monniaux/ncompress/compress42.c b/test/monniaux/ncompress/compress42.c index 4a6c2f74..dd1efe3a 100644 --- a/test/monniaux/ncompress/compress42.c +++ b/test/monniaux/ncompress/compress42.c @@ -192,7 +192,7 @@ # define SIG_TYPE void (*)() #endif -#if defined(AMIGA) || defined(DOS) || defined(MINGW) || defined(WINDOWS) || defined(__K1C__) +#if defined(AMIGA) || defined(DOS) || defined(MINGW) || defined(WINDOWS) || defined(__KVX__) # define chmod(pathname, mode) 0 # define chown(pathname, owner, group) 0 # define utime(pathname, times) 0 diff --git a/test/monniaux/ocaml/byterun/toto b/test/monniaux/ocaml/byterun/toto index ac54a2b6..89897f38 100644 --- a/test/monniaux/ocaml/byterun/toto +++ b/test/monniaux/ocaml/byterun/toto @@ -741,11 +741,11 @@ 12429 mmap(NULL, 34607104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4c61eff000 12429 mmap(NULL, 4294971392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4b61efe000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 -12429 openat(AT_FDCWD, "/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", O_RDONLY|O_CLOEXEC) = 4 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 +12429 openat(AT_FDCWD, "/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", O_RDONLY|O_CLOEXEC) = 4 12429 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\214\2\0\0\0\0\0"..., 832) = 832 12429 fstat(4, {st_mode=S_IFREG|0755, st_size=1461464, ...}) = 0 12429 mmap(NULL, 3556520, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x7f4c7038d000 @@ -810,10 +810,10 @@ 12429 mprotect(0x7f4c68f9d000, 4096, PROT_READ) = 0 12429 brk(0x3670000) = 0x3670000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -830,10 +830,10 @@ 12429 brk(0x3694000) = 0x3694000 12429 munmap(0x7f4c68719000, 6819840) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -849,10 +849,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -867,10 +867,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -884,10 +884,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -901,10 +901,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -918,10 +918,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -935,10 +935,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -952,10 +952,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -969,10 +969,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -986,10 +986,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1003,10 +1003,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1020,10 +1020,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1037,10 +1037,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1054,10 +1054,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1071,10 +1071,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1454,10 +1454,10 @@ 12429 brk(0x78fa000) = 0x78fa000 12429 brk(0x7921000) = 0x7921000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1473,10 +1473,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 brk(0x7fc2000) = 0x7fc2000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1491,10 +1491,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1509,10 +1509,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1526,10 +1526,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1543,10 +1543,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1560,10 +1560,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1577,10 +1577,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1594,10 +1594,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1611,10 +1611,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1628,10 +1628,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1645,10 +1645,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1662,10 +1662,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1679,10 +1679,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1696,10 +1696,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1713,10 +1713,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -1730,10 +1730,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2082,10 +2082,10 @@ 12429 brk(0xbdbc000) = 0xbdbc000 12429 brk(0xbddd000) = 0xbddd000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2101,10 +2101,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 brk(0xc4c7000) = 0xc4c7000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2119,10 +2119,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2137,10 +2137,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2154,10 +2154,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2171,10 +2171,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2188,10 +2188,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2205,10 +2205,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2222,10 +2222,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2239,10 +2239,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2256,10 +2256,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2273,10 +2273,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2290,10 +2290,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2307,10 +2307,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2324,10 +2324,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2341,10 +2341,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2358,10 +2358,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2710,10 +2710,10 @@ 12429 brk(0x102a5000) = 0x102a5000 12429 brk(0x102c6000) = 0x102c6000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2729,10 +2729,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 brk(0x10973000) = 0x10973000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2747,10 +2747,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2765,10 +2765,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2782,10 +2782,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2799,10 +2799,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2816,10 +2816,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2833,10 +2833,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2850,10 +2850,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2867,10 +2867,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2884,10 +2884,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2901,10 +2901,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2918,10 +2918,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2935,10 +2935,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2952,10 +2952,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2969,10 +2969,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -2986,10 +2986,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3338,10 +3338,10 @@ 12429 brk(0x1476e000) = 0x1476e000 12429 brk(0x1478f000) = 0x1478f000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3357,10 +3357,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 brk(0x14e3d000) = 0x14e3d000 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3375,10 +3375,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3393,10 +3393,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3410,10 +3410,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3427,10 +3427,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3444,10 +3444,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3461,10 +3461,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3478,10 +3478,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3495,10 +3495,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3512,10 +3512,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3529,10 +3529,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3546,10 +3546,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3563,10 +3563,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3580,10 +3580,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3597,10 +3597,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) @@ -3614,10 +3614,10 @@ 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libstd_scalls.so", F_OK) = -1 ENOENT (No such file or directory) 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libstd_scalls.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_k1c.so", F_OK) = -1 ENOENT (No such file or directory) -12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_k1c.so", F_OK) = 0 +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib32/libiss_kvx.so", F_OK) = -1 ENOENT (No such file or directory) +12429 access("/opt/Kalray/usr/local/k1rdtools/bin/../lib64/libiss_kvx.so", F_OK) = 0 12429 readlink("/proc/self/exe", "/opt/Kalray/usr/local/k1rdtools/"..., 1024) = 46 12429 getcwd("/home/monniaux/work/Kalray/tests/ocaml-4.07.1/byterun", 1024) = 54 12429 access("/opt/Kalray/usr/local/k1rdtools/bin/libmppa_multiloader.so", F_OK) = -1 ENOENT (No such file or directory) diff --git a/test/monniaux/picosat-965/Makefile b/test/monniaux/picosat-965/Makefile index a887c0de..4d6eee20 100644 --- a/test/monniaux/picosat-965/Makefile +++ b/test/monniaux/picosat-965/Makefile @@ -7,5 +7,5 @@ ALL_CFILES=picosat.c version.c app.c main.c include ../rules.mk # FIXME - what were these for? -#K1C_CFLAGS += $(EMBEDDED_CFLAGS) -#K1C_CCOMPFLAGS += $(EMBEDDED_CFLAGS) +#KVX_CFLAGS += $(EMBEDDED_CFLAGS) +#KVX_CCOMPFLAGS += $(EMBEDDED_CFLAGS) diff --git a/test/monniaux/quest/Makefile b/test/monniaux/quest/Makefile index c049238b..ef0b7db8 100644 --- a/test/monniaux/quest/Makefile +++ b/test/monniaux/quest/Makefile @@ -4,19 +4,19 @@ MAX=300 include ../rules.mk QUEST=quest -K1C_CCOMPFLAGS += -fstruct-passing -fbitfields +KVX_CCOMPFLAGS += -fstruct-passing -fbitfields PREFIX=ran%06.f TARGETS_C=$(shell seq --format $(PREFIX).c 0 $(MAX)) -TARGETS_OUT=$(shell seq --format $(PREFIX).ccomp.k1c.out 0 $(MAX)) +TARGETS_OUT=$(shell seq --format $(PREFIX).ccomp.kvx.out 0 $(MAX)) all: $(TARGETS_C) $(TARGETS_OUT) ran%.c : $(QUEST) -seed $* -test ansi > $@ -%.ccomp.k1c : %.ccomp.k1c.s - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +%.ccomp.kvx : %.ccomp.kvx.s + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ clean: -rm -f $(TARGETS_C) $(TARGETS_OUT) diff --git a/test/monniaux/quicksort/quicksort.ccomp.k1c.s_modified5 b/test/monniaux/quicksort/quicksort.ccomp.k1c.s_modified5 index 8a9a75bb..d1379555 100644 --- a/test/monniaux/quicksort/quicksort.ccomp.k1c.s_modified5 +++ b/test/monniaux/quicksort/quicksort.ccomp.k1c.s_modified5 @@ -1,5 +1,5 @@ # File generated by CompCert 3.4 -# Command line: -Wall -O3 -S quicksort.c -o quicksort.ccomp.k1c.s +# Command line: -Wall -O3 -S quicksort.c -o quicksort.ccomp.kvx.s .text .balign 2 .globl quicksort diff --git a/test/monniaux/quicksort/quicksort.ccomp.k1c.s_orig b/test/monniaux/quicksort/quicksort.ccomp.k1c.s_orig index 64c1e2bf..b83b9a64 100644 --- a/test/monniaux/quicksort/quicksort.ccomp.k1c.s_orig +++ b/test/monniaux/quicksort/quicksort.ccomp.k1c.s_orig @@ -1,5 +1,5 @@ # File generated by CompCert 3.4 -# Command line: -Wall -O3 -S quicksort.c -o quicksort.ccomp.k1c.s +# Command line: -Wall -O3 -S quicksort.c -o quicksort.ccomp.kvx.s .text .balign 2 .globl quicksort diff --git a/test/monniaux/rules.mk b/test/monniaux/rules.mk index 2de2c466..f0db6afa 100644 --- a/test/monniaux/rules.mk +++ b/test/monniaux/rules.mk @@ -18,14 +18,14 @@ MAX_MEASURES=10 MEASURES?=time # Flags common to both compilers, then to gcc, then to ccomp -ALL_CFLAGS+=-Wall -D__K1C_COS__ -DMAX_MEASURES=$(MAX_MEASURES) +ALL_CFLAGS+=-Wall -D__KVX_COS__ -DMAX_MEASURES=$(MAX_MEASURES) #ALL_CFLAGS+=-g ALL_GCCFLAGS+=$(ALL_CFLAGS) -std=c99 -Wextra -Werror=implicit ALL_CCOMPFLAGS+=$(ALL_CFLAGS) # The compilers -K1C_CC?=k1-cos-gcc -K1C_CCOMP?=ccomp +KVX_CC?=k1-cos-gcc +KVX_CCOMP?=ccomp # Command to execute #EXECUTE_CYCLES?=timeout --signal=SIGTERM 3m k1-cluster --syscall=libstd_scalls.so --cycle-based -- @@ -75,7 +75,7 @@ asm/%$(3).s: %.c $(1) $(2) -S $$< -o $$@ .SECONDARY: -bin/$(TARGET)$(3).bin: $(addprefix obj/,$(ALL_CFILES:.c=$(3).o)) $(CLOCK).gcc.k1c.o +bin/$(TARGET)$(3).bin: $(addprefix obj/,$(ALL_CFILES:.c=$(3).o)) $(CLOCK).gcc.kvx.o @mkdir -p $$(@D) $(1) $$+ -lm -o $$@ @@ -86,13 +86,13 @@ FIRSTLINE:=$(FIRSTLINE), $(3) endef # Clock generation -$(CLOCK).gcc.k1c.o: $(CLOCK).c - $(K1C_CC) $(ALL_GCCFLAGS) -O3 $< -c -o $@ +$(CLOCK).gcc.kvx.o: $(CLOCK).c + $(KVX_CC) $(ALL_GCCFLAGS) -O3 $< -c -o $@ # Generic rules obj/%.o: asm/%.s @mkdir -p $(@D) - $(K1C_CC) $< -c -o $@ + $(KVX_CC) $< -c -o $@ out/%.out: bin/%.bin @mkdir -p $(@D) @@ -104,35 +104,35 @@ out/%.out: bin/%.bin ## ifneq ($(GCC0FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC0FLAGS),$(GCC0PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC0FLAGS),$(GCC0PREFIX))) endif ifneq ($(GCC1FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC1FLAGS),$(GCC1PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC1FLAGS),$(GCC1PREFIX))) endif ifneq ($(GCC2FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC2FLAGS),$(GCC2PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC2FLAGS),$(GCC2PREFIX))) endif ifneq ($(GCC3FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC3FLAGS),$(GCC3PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC3FLAGS),$(GCC3PREFIX))) endif ifneq ($(GCC4FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC4FLAGS),$(GCC4PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC4FLAGS),$(GCC4PREFIX))) endif ifneq ($(CCOMP0FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP0FLAGS),$(CCOMP0PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP0FLAGS),$(CCOMP0PREFIX))) endif ifneq ($(CCOMP1FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP1FLAGS),$(CCOMP1PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP1FLAGS),$(CCOMP1PREFIX))) endif ifneq ($(CCOMP2FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP2FLAGS),$(CCOMP2PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP2FLAGS),$(CCOMP2PREFIX))) endif ifneq ($(CCOMP3FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP3FLAGS),$(CCOMP3PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP3FLAGS),$(CCOMP3PREFIX))) endif ifneq ($(CCOMP4FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP4FLAGS),$(CCOMP4PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP4FLAGS),$(CCOMP4PREFIX))) endif measures.csv: $(OUTFILES) diff --git a/test/monniaux/sandbox/Makefile b/test/monniaux/sandbox/Makefile index 0fa2a2ae..c4a81f1c 100644 --- a/test/monniaux/sandbox/Makefile +++ b/test/monniaux/sandbox/Makefile @@ -8,20 +8,20 @@ ALL_CFILES=$(wildcard *.c) TARGET=toto # Name of the clock object -CLOCK=../clock.gcc.k1c.o +CLOCK=../clock.gcc.kvx.o # Maximum amount of time measures (see cycles.h) MAX_MEASURES=10 # Flags common to both compilers, then to gcc, then to ccomp -ALL_CFLAGS=-Wall -D__K1C_COS__ -DMAX_MEASURES=$(MAX_MEASURES) +ALL_CFLAGS=-Wall -D__KVX_COS__ -DMAX_MEASURES=$(MAX_MEASURES) #ALL_CFLAGS+=-g ALL_GCCFLAGS=$(ALL_CFLAGS) -std=c99 -Wextra -Werror=implicit ALL_CCOMPFLAGS=$(ALL_CFLAGS) # The compilers -K1C_CC=k1-cos-gcc -K1C_CCOMP=ccomp +KVX_CC=k1-cos-gcc +KVX_CCOMP=ccomp # Command to execute EXECUTE_CYCLES=k1-cluster --syscall=libstd_scalls.so --cycle-based -- @@ -72,7 +72,7 @@ asm/%$(3).s: %.c .SECONDARY: bin/$(TARGET)$(3).bin: $(addprefix obj/,$(ALL_CFILES:.c=$(3).o)) $(CLOCK) @mkdir -p $$(@D) - $(K1C_CC) $$+ -lm -o $$@ + $(KVX_CC) $$+ -lm -o $$@ BINFILES:=$(BINFILES) bin/$(TARGET)$(3).bin OUTFILES:=$(OUTFILES) out/$(TARGET)$(3).out @@ -83,7 +83,7 @@ endef # Generic rules obj/%.o: asm/%.s @mkdir -p $(@D) - $(K1C_CC) $< -c -o $@ + $(KVX_CC) $< -c -o $@ out/%.out: bin/%.bin @mkdir -p $(@D) @@ -94,35 +94,35 @@ out/%.out: bin/%.bin ## ifneq ($(GCC0FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC0FLAGS),$(GCC0PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC0FLAGS),$(GCC0PREFIX))) endif ifneq ($(GCC1FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC1FLAGS),$(GCC1PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC1FLAGS),$(GCC1PREFIX))) endif ifneq ($(GCC2FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC2FLAGS),$(GCC2PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC2FLAGS),$(GCC2PREFIX))) endif ifneq ($(GCC3FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC3FLAGS),$(GCC3PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC3FLAGS),$(GCC3PREFIX))) endif ifneq ($(GCC4FLAGS),) -$(eval $(call gen_rules,$(K1C_CC),$(GCC4FLAGS),$(GCC4PREFIX))) +$(eval $(call gen_rules,$(KVX_CC),$(GCC4FLAGS),$(GCC4PREFIX))) endif ifneq ($(CCOMP0FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP0FLAGS),$(CCOMP0PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP0FLAGS),$(CCOMP0PREFIX))) endif ifneq ($(CCOMP1FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP1FLAGS),$(CCOMP1PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP1FLAGS),$(CCOMP1PREFIX))) endif ifneq ($(CCOMP2FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP2FLAGS),$(CCOMP2PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP2FLAGS),$(CCOMP2PREFIX))) endif ifneq ($(CCOMP3FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP3FLAGS),$(CCOMP3PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP3FLAGS),$(CCOMP3PREFIX))) endif ifneq ($(CCOMP4FLAGS),) -$(eval $(call gen_rules,$(K1C_CCOMP),$(CCOMP4FLAGS),$(CCOMP4PREFIX))) +$(eval $(call gen_rules,$(KVX_CCOMP),$(CCOMP4FLAGS),$(CCOMP4PREFIX))) endif measures.csv: $(OUTFILES) diff --git a/test/monniaux/send_through/Makefile b/test/monniaux/send_through/Makefile index 72b84654..b2ab4e8e 100644 --- a/test/monniaux/send_through/Makefile +++ b/test/monniaux/send_through/Makefile @@ -1,10 +1,10 @@ -send_through: send_through_gcc.k1c.o send_through_ccomp.k1c.o +send_through: send_through_gcc.kvx.o send_through_ccomp.kvx.o ../../../ccomp -Wall $+ -o $@ -lm -send_through_gcc.k1c.o send_through_ccomp.k1c.o: send_through.h +send_through_gcc.kvx.o send_through_ccomp.kvx.o: send_through.h -send_through_gcc.k1c.o : send_through_gcc.c +send_through_gcc.kvx.o : send_through_gcc.c k1-cos-gcc -Wall -Wextra -std=c99 -Werror=implicit -c $< -o $@ -send_through_ccomp.k1c.o : send_through_ccomp.c +send_through_ccomp.kvx.o : send_through_ccomp.c ../../../ccomp -Wall -fnone -fvararg-calls -c $< -o $@ diff --git a/test/monniaux/varargs/Makefile b/test/monniaux/varargs/Makefile index f24d41ac..938eff30 100644 --- a/test/monniaux/varargs/Makefile +++ b/test/monniaux/varargs/Makefile @@ -1,9 +1,9 @@ include ../rules.mk -all: varargs.ccomp.k1c.s varargs.ccomp.k1c +all: varargs.ccomp.kvx.s varargs.ccomp.kvx -varargs.ccomp.k1c: varargs.ccomp.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +varargs.ccomp.kvx: varargs.ccomp.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ clean: - $(RM) -f *.k1c *.host *.o *.s + $(RM) -f *.kvx *.host *.o *.s diff --git a/test/monniaux/vocabulary.sh b/test/monniaux/vocabulary.sh index 5b76921e..eb3b70b6 100755 --- a/test/monniaux/vocabulary.sh +++ b/test/monniaux/vocabulary.sh @@ -1,2 +1,2 @@ -cat *.gcc.k1c.s|cut -f2|cut -d' ' -f1|sort -u|grep -v ':'|grep -v -F '.' > gcc_vocabulary.txt -cat *.ccomp.k1c.s|cut -f2|cut -d' ' -f1|sort -u|grep -v ':'|grep -v -F '.' > ccomp_vocabulary.txt +cat *.gcc.kvx.s|cut -f2|cut -d' ' -f1|sort -u|grep -v ':'|grep -v -F '.' > gcc_vocabulary.txt +cat *.ccomp.kvx.s|cut -f2|cut -d' ' -f1|sort -u|grep -v ':'|grep -v -F '.' > ccomp_vocabulary.txt diff --git a/test/monniaux/yarpgen/Makefile.old b/test/monniaux/yarpgen/Makefile.old index 9da82deb..316ec0f1 100644 --- a/test/monniaux/yarpgen/Makefile.old +++ b/test/monniaux/yarpgen/Makefile.old @@ -3,35 +3,35 @@ MAX=300 PREFIX=ran%06.f include ../rules.mk -K1C_CCOMPFLAGS += -funprototyped -fbitfields +KVX_CCOMPFLAGS += -funprototyped -fbitfields CCOMPFLAGS += -funprototyped -fbitfields TARGETS_C=$(shell seq --format $(PREFIX)/func.c 0 $(MAX)) \ $(shell seq --format $(PREFIX)/driver.c 0 $(MAX)) \ $(shell seq --format $(PREFIX)/init.h 0 $(MAX)) -TARGETS_CCOMP_K1C_S=$(shell seq --format $(PREFIX)/func.ccomp.k1c.s 0 $(MAX)) \ - $(shell seq --format $(PREFIX)/driver.ccomp.k1c.s 0 $(MAX)) -TARGETS_GCC_K1C_S=$(shell seq --format $(PREFIX)/func.gcc.k1c.s 0 $(MAX)) \ - $(shell seq --format $(PREFIX)/driver.gcc.k1c.s 0 $(MAX)) +TARGETS_CCOMP_KVX_S=$(shell seq --format $(PREFIX)/func.ccomp.kvx.s 0 $(MAX)) \ + $(shell seq --format $(PREFIX)/driver.ccomp.kvx.s 0 $(MAX)) +TARGETS_GCC_KVX_S=$(shell seq --format $(PREFIX)/func.gcc.kvx.s 0 $(MAX)) \ + $(shell seq --format $(PREFIX)/driver.gcc.kvx.s 0 $(MAX)) TARGETS_CCOMP_HOST_S=$(shell seq --format $(PREFIX)/func.ccomp.host.s 0 $(MAX)) \ $(shell seq --format $(PREFIX)/driver.ccomp.host.s 0 $(MAX)) TARGETS_GCC_HOST_S=$(shell seq --format $(PREFIX)/func.gcc.host.s 0 $(MAX)) \ $(shell seq --format $(PREFIX)/driver.gcc.host.s 0 $(MAX)) -TARGETS_CCOMP_K1C_OUT=$(shell seq --format $(PREFIX)/example.ccomp.k1c.out 0 $(MAX)) -TARGETS_GCC_K1C_OUT=$(shell seq --format $(PREFIX)/example.gcc.k1c.out 0 $(MAX)) +TARGETS_CCOMP_KVX_OUT=$(shell seq --format $(PREFIX)/example.ccomp.kvx.out 0 $(MAX)) +TARGETS_GCC_KVX_OUT=$(shell seq --format $(PREFIX)/example.gcc.kvx.out 0 $(MAX)) TARGETS_GCC_HOST_OUT=$(shell seq --format $(PREFIX)/example.gcc.host.out 0 $(MAX)) TARGETS_CCOMP_HOST_OUT=$(shell seq --format $(PREFIX)/example.ccomp.host.out 0 $(MAX)) -TARGETS_CMP=$(shell seq --format $(PREFIX)/example.k1c.cmp 0 $(MAX)) +TARGETS_CMP=$(shell seq --format $(PREFIX)/example.kvx.cmp 0 $(MAX)) -all: $(TARGETS_CCOMP_K1C_OUT) $(TARGETS_GCC_K1C_OUT) $(TARGETS_GCC_HOST_OUT) $(TARGETS_CCOMP_HOST_OUT) $(TARGETS_CCOMP_K1C_S) $(TARGETS_GCC_K1C_S) $(TARGETS_GCC_HOST_S) $(TARGETS_CCOMP_HOST_S) $(TARGETS_CMP) $(TARGETS_C) +all: $(TARGETS_CCOMP_KVX_OUT) $(TARGETS_GCC_KVX_OUT) $(TARGETS_GCC_HOST_OUT) $(TARGETS_CCOMP_HOST_OUT) $(TARGETS_CCOMP_KVX_S) $(TARGETS_GCC_KVX_S) $(TARGETS_GCC_HOST_S) $(TARGETS_CCOMP_HOST_S) $(TARGETS_CMP) $(TARGETS_C) -ran%/func.ccomp.k1c.s ran%/func.gcc.k1c.s ran%/func.ccomp.host.s ran%/func.gcc.host.s : ran%/init.h +ran%/func.ccomp.kvx.s ran%/func.gcc.kvx.s ran%/func.ccomp.host.s ran%/func.gcc.host.s : ran%/init.h -ran%/example.ccomp.k1c: ran%/func.ccomp.k1c.o ran%/driver.ccomp.k1c.o - $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -o $@ +ran%/example.ccomp.kvx: ran%/func.ccomp.kvx.o ran%/driver.ccomp.kvx.o + $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -o $@ -ran%/example.gcc.k1c: ran%/func.gcc.k1c.o ran%/driver.gcc.k1c.o - $(K1C_CC) $(K1C_CFLAGS) $+ -o $@ +ran%/example.gcc.kvx: ran%/func.gcc.kvx.o ran%/driver.gcc.kvx.o + $(KVX_CC) $(KVX_CFLAGS) $+ -o $@ ran%/example.gcc.host: ran%/func.gcc.host.o ran%/driver.gcc.host.o $(CC) $(CFLAGS) $+ -o $@ @@ -43,7 +43,7 @@ ran%/driver.c ran%/func.c ran%/init.h: -mkdir ran$* $(YARPGEN) --seed=$* --out-dir=ran$*/ --std=c99 -ran%/example.k1c.cmp : ran%/example.gcc.k1c.out ran%/example.ccomp.k1c.out +ran%/example.kvx.cmp : ran%/example.gcc.kvx.out ran%/example.ccomp.kvx.out cmp $+ > $@ .PHONY: all clean diff --git a/test/monniaux/zlib-1.2.11/Makefile b/test/monniaux/zlib-1.2.11/Makefile index 9e6920f5..52a7257b 100644 --- a/test/monniaux/zlib-1.2.11/Makefile +++ b/test/monniaux/zlib-1.2.11/Makefile @@ -14,7 +14,7 @@ include ../rules.mk # #src=$(wildcard *.c) # -#PRODUCTS?=minigzip.gcc.host minigzip.ccomp.host minigzip.gcc.k1c minigzip.gcc.o1.k1c minigzip.ccomp.k1c +#PRODUCTS?=minigzip.gcc.host minigzip.ccomp.host minigzip.gcc.kvx minigzip.gcc.o1.kvx minigzip.ccomp.kvx #PRODUCTS_OUT=$(addsuffix .out,$(PRODUCTS)) # #all: $(PRODUCTS) @@ -27,15 +27,15 @@ include ../rules.mk # $(CC) $(CFLAGS) $+ -lm -o $@ #minigzip.ccomp.host: $(src:.c=.ccomp.host.o) ../clock.gcc.host.o # $(CCOMP) $(CCOMPFLAGS) $+ -lm -o $@ -#minigzip.gcc.k1c: $(src:.c=.gcc.k1c.o) ../clock.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS) $+ -lm -o $@ -#minigzip.gcc.o1.k1c: $(src:.c=.gcc.o1.k1c.o) ../clock.gcc.k1c.o -# $(K1C_CC) $(K1C_CFLAGS_O1) $+ -lm -o $@ -#minigzip.ccomp.k1c: $(src:.c=.ccomp.k1c.o) ../clock.gcc.k1c.o -# $(K1C_CCOMP) $(K1C_CCOMPFLAGS) $+ -lm -o $@ +#minigzip.gcc.kvx: $(src:.c=.gcc.kvx.o) ../clock.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS) $+ -lm -o $@ +#minigzip.gcc.o1.kvx: $(src:.c=.gcc.o1.kvx.o) ../clock.gcc.kvx.o +# $(KVX_CC) $(KVX_CFLAGS_O1) $+ -lm -o $@ +#minigzip.ccomp.kvx: $(src:.c=.ccomp.kvx.o) ../clock.gcc.kvx.o +# $(KVX_CCOMP) $(KVX_CCOMPFLAGS) $+ -lm -o $@ #measures.csv: $(PRODUCTS_OUT) -# echo "benches, gcc host,ccomp host,gcc k1c,gcc o1 k1c,ccomp k1c" > $@ -# echo "zlib ", $$(grep 'cycles' minigzip.gcc.host.out | cut -d':' -f2), $$(grep 'cycles' minigzip.ccomp.host.out | cut -d':' -f2), $$(grep 'cycles' minigzip.gcc.k1c.out | cut -d':' -f2), $$(grep 'cycles' minigzip.gcc.o1.k1c.out | cut -d':' -f2), $$(grep 'cycles' minigzip.ccomp.k1c.out | cut -d':' -f2)>> $@ +# echo "benches, gcc host,ccomp host,gcc kvx,gcc o1 kvx,ccomp kvx" > $@ +# echo "zlib ", $$(grep 'cycles' minigzip.gcc.host.out | cut -d':' -f2), $$(grep 'cycles' minigzip.ccomp.host.out | cut -d':' -f2), $$(grep 'cycles' minigzip.gcc.kvx.out | cut -d':' -f2), $$(grep 'cycles' minigzip.gcc.o1.kvx.out | cut -d':' -f2), $$(grep 'cycles' minigzip.ccomp.kvx.out | cut -d':' -f2)>> $@ # #SAMPLE_FILE=zlib.h # @@ -45,18 +45,18 @@ include ../rules.mk #minigzip.ccomp.host.out minigzip.ccomp.host.output: minigzip.ccomp.host # ./$< < $(SAMPLE_FILE) > $<.output 2> $@ # -#minigzip.gcc.k1c.out minigzip.gcc.k1c.output: minigzip.gcc.k1c +#minigzip.gcc.kvx.out minigzip.gcc.kvx.output: minigzip.gcc.kvx # $(EXECUTE_CYCLES) $< < $(SAMPLE_FILE) > $<.output 2> $@ # -#minigzip.gcc.o1.k1c.out minigzip.gcc.o1.k1c.output: minigzip.gcc.o1.k1c +#minigzip.gcc.o1.kvx.out minigzip.gcc.o1.kvx.output: minigzip.gcc.o1.kvx # $(EXECUTE_CYCLES) $< < $(SAMPLE_FILE) > $<.output 2> $@ # -#minigzip.ccomp.k1c.out minigzip.ccomp.k1c.output: minigzip.ccomp.k1c +#minigzip.ccomp.kvx.out minigzip.ccomp.kvx.output: minigzip.ccomp.kvx # $(EXECUTE_CYCLES) $< < $(SAMPLE_FILE) > $<.output 2> $@ # #.SECONDARY: # #.PHONY: #clean: -# rm -f *.o *.s *.k1c *.csv +# rm -f *.o *.s *.kvx *.csv # diff --git a/test/mppa/.gitignore b/test/mppa/.gitignore index e8ebeff8..b10c40c8 100644 --- a/test/mppa/.gitignore +++ b/test/mppa/.gitignore @@ -6,15 +6,15 @@ prng/Makefile sort/Makefile prng/.zero sort/.zero -sort/insertion-ccomp-k1c -sort/insertion-gcc-k1c +sort/insertion-ccomp-kvx +sort/insertion-gcc-kvx sort/insertion-gcc-x86 -sort/main-ccomp-k1c -sort/main-gcc-k1c +sort/main-ccomp-kvx +sort/main-gcc-kvx sort/main-gcc-x86 -sort/merge-ccomp-k1c -sort/merge-gcc-k1c +sort/merge-ccomp-kvx +sort/merge-gcc-kvx sort/merge-gcc-x86 -sort/selection-ccomp-k1c -sort/selection-gcc-k1c +sort/selection-ccomp-kvx +sort/selection-gcc-kvx sort/selection-gcc-x86 diff --git a/test/mppa/builtins/stsud.c b/test/mppa/builtins/stsud.c index fb07b94f..fa42b001 100644 --- a/test/mppa/builtins/stsud.c +++ b/test/mppa/builtins/stsud.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 2) { - c = __builtin_k1_stsud(t[0], t[1]); + c = __builtin_kvx_stsud(t[0], t[1]); } END_TEST() diff --git a/test/mppa/coverage.sh b/test/mppa/coverage.sh index 42ed4182..96f6bc04 100755 --- a/test/mppa/coverage.sh +++ b/test/mppa/coverage.sh @@ -1,6 +1,6 @@ #!/bin/bash -printer=../../mppa_k1c/TargetPrinter.ml +printer=../../kvx/TargetPrinter.ml asmdir=instr/asm/ to_cover_raw=/tmp/to_cover_raw to_cover=/tmp/to_cover diff --git a/test/mppa/general/clzd.c b/test/mppa/general/clzd.c index 4bedab97..d3e8a8ec 100644 --- a/test/mppa/general/clzd.c +++ b/test/mppa/general/clzd.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 1) { - c = __builtin_k1_clzd(t[0]); + c = __builtin_kvx_clzd(t[0]); } END_TEST() diff --git a/test/mppa/general/clzw.c b/test/mppa/general/clzw.c index 361492f2..7b5478fd 100644 --- a/test/mppa/general/clzw.c +++ b/test/mppa/general/clzw.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 1) { - c = __builtin_k1_clzw(t[0]); + c = __builtin_kvx_clzw(t[0]); } END_TEST() diff --git a/test/mppa/general/ctzd.c b/test/mppa/general/ctzd.c index 6f6586ad..bba869e1 100644 --- a/test/mppa/general/ctzd.c +++ b/test/mppa/general/ctzd.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 1) { - c = __builtin_k1_ctzd(t[0]); + c = __builtin_kvx_ctzd(t[0]); } END_TEST() diff --git a/test/mppa/general/ctzw.c b/test/mppa/general/ctzw.c index b0f2c937..a7128b04 100644 --- a/test/mppa/general/ctzw.c +++ b/test/mppa/general/ctzw.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 1) { - c = __builtin_k1_ctzw(t[0]); + c = __builtin_kvx_ctzw(t[0]); } END_TEST() diff --git a/test/mppa/general/satd.c b/test/mppa/general/satd.c index d8d0d256..9d0d1cf9 100644 --- a/test/mppa/general/satd.c +++ b/test/mppa/general/satd.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 2) { - c = __builtin_k1_satd(t[0], t[1]); + c = __builtin_kvx_satd(t[0], t[1]); } END_TEST() diff --git a/test/mppa/general/sbmm8.c b/test/mppa/general/sbmm8.c index beced8fc..91f13425 100644 --- a/test/mppa/general/sbmm8.c +++ b/test/mppa/general/sbmm8.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 2) { - c = __builtin_k1_sbmm8(t[0], t[1]); + c = __builtin_kvx_sbmm8(t[0], t[1]); } END_TEST() diff --git a/test/mppa/general/sbmmt8.c b/test/mppa/general/sbmmt8.c index 8a64e7e7..7b120dfa 100644 --- a/test/mppa/general/sbmmt8.c +++ b/test/mppa/general/sbmmt8.c @@ -2,6 +2,6 @@ BEGIN_TEST_N(unsigned long long, 2) { - c = __builtin_k1_sbmmt8(t[0], t[1]); + c = __builtin_kvx_sbmmt8(t[0], t[1]); } END_TEST() diff --git a/test/mppa/instr/Makefile b/test/mppa/instr/Makefile index 37f7d0ab..e4f964b3 100644 --- a/test/mppa/instr/Makefile +++ b/test/mppa/instr/Makefile @@ -1,6 +1,6 @@ SHELL := /bin/bash -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc CC ?= gcc CCOMP ?= ccomp OPTIM ?= -O2 @@ -24,7 +24,7 @@ K1LIB=../lib/system.gcc.a # -> .ccomp.s -> .ccomp.bin -> .ccomp.out ## -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) CCPATH=$(shell which $(CC)) CCOMPPATH=$(shell which $(CCOMP)) SIMUPATH=$(shell which $(SIMU)) @@ -63,8 +63,8 @@ simutest: $(X86_GCC_OUT) $(GCC_SIMUOUT) for test in $(TESTNAMES); do\ x86out=$(OUTDIR)/$$test.x86-gcc.out;\ gccout=$(OUTDIR)/$$test.gcc.simu.out;\ - if grep "__K1C__" -q $$test.c; then\ - printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __K1C__\`\n";\ + if grep "__KVX__" -q $$test.c; then\ + printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ else\ @@ -91,8 +91,8 @@ hardtest: $(X86_GCC_OUT) $(GCC_HARDOUT) for test in $(TESTNAMES); do\ x86out=$(OUTDIR)/$$test.x86-gcc.out;\ gccout=$(OUTDIR)/$$test.gcc.hard.out;\ - if grep "__K1C__" -q $$test.c; then\ - printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __K1C__\`\n";\ + if grep "__KVX__" -q $$test.c; then\ + printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ else\ @@ -153,9 +153,9 @@ $(BINDIR)/%.x86-gcc.bin: $(ASMDIR)/%.x86-gcc.s $(LIB) $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ -$(BINDIR)/%.gcc.bin: $(ASMDIR)/%.gcc.s $(K1LIB) $(K1CCPATH) +$(BINDIR)/%.gcc.bin: $(ASMDIR)/%.gcc.s $(K1LIB) $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $(filter-out $(K1CCPATH),$^) -o $@ + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ $(BINDIR)/%.ccomp.bin: $(ASMDIR)/%.ccomp.s $(K1LIB) $(CCOMPPATH) @mkdir -p $(@D) @@ -167,9 +167,9 @@ $(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) -S $< -o $@ -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(K1CCPATH) +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) -S $< -o $@ + $(KVXC) $(CFLAGS) -S $< -o $@ $(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) @mkdir -p $(@D) diff --git a/test/mppa/instr/builtin32.c b/test/mppa/instr/builtin32.c index c7689dc8..9efb33cd 100644 --- a/test/mppa/instr/builtin32.c +++ b/test/mppa/instr/builtin32.c @@ -2,9 +2,9 @@ BEGIN_TEST(int) int *ptr = &c; -#ifdef __K1C__ +#ifdef __KVX__ int d = c; - a = __builtin_k1_alclrw(ptr); + a = __builtin_kvx_alclrw(ptr); c = d; #endif diff --git a/test/mppa/instr/builtin64.c b/test/mppa/instr/builtin64.c index dbbb1886..252eb2c6 100644 --- a/test/mppa/instr/builtin64.c +++ b/test/mppa/instr/builtin64.c @@ -2,16 +2,16 @@ BEGIN_TEST(long long) long long *ptr = &c; -#ifdef __K1C__ +#ifdef __KVX__ long long d = c; - a = __builtin_k1_alclrd(ptr); + a = __builtin_kvx_alclrd(ptr); c = d; c += a; c += __builtin_clzll(a); /* Removed the AFADDD builtin who was incorrect in CompCert, see #157 */ - // a = __builtin_k1_afaddd(ptr, a); - // a = __builtin_k1_afaddd(ptr, a); + // a = __builtin_kvx_afaddd(ptr, a); + // a = __builtin_kvx_afaddd(ptr, a); #endif END_TEST64() diff --git a/test/mppa/interop/Makefile b/test/mppa/interop/Makefile index 3a83d51c..a0d4d7da 100644 --- a/test/mppa/interop/Makefile +++ b/test/mppa/interop/Makefile @@ -1,6 +1,6 @@ SHELL := /bin/bash -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc CC ?= gcc CCOMP ?= ccomp CFLAGS ?= -O2 -Wno-varargs @@ -26,7 +26,7 @@ VAARG_COMMON=vaarg_common # There is also a $(VAARG_COMMON) that is the same than $(COMMON) but with va_arg ## -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) CCPATH=$(shell which $(CC)) CCOMPPATH=$(shell which $(CCOMP)) SIMUPATH=$(shell which $(SIMU)) @@ -273,9 +273,9 @@ $(BINDIR)/$(COMMON).x86-gcc.bin: $(OBJDIR)/$(COMMON).x86-gcc.o $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) $< -o $@ -$(BINDIR)/$(COMMON).gcc.bin: $(OBJDIR)/$(COMMON).gcc.o $(K1CCPATH) +$(BINDIR)/$(COMMON).gcc.bin: $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $< -o $@ + $(KVXC) $(CFLAGS) $< -o $@ $(BINDIR)/$(COMMON).ccomp.bin: $(OBJDIR)/$(COMMON).ccomp.o $(CCOMPPATH) @mkdir -p $(@D) @@ -287,9 +287,9 @@ $(BINDIR)/$(VAARG_COMMON).x86-gcc.bin: $(OBJDIR)/$(VAARG_COMMON).x86-gcc.o $(CCP @mkdir -p $(@D) $(CC) $(CFLAGS) $< -o $@ -$(BINDIR)/$(VAARG_COMMON).gcc.bin: $(OBJDIR)/$(VAARG_COMMON).gcc.o $(K1CCPATH) +$(BINDIR)/$(VAARG_COMMON).gcc.bin: $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $< -o $@ + $(KVXC) $(CFLAGS) $< -o $@ $(BINDIR)/$(VAARG_COMMON).ccomp.bin: $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(CCOMPPATH) @mkdir -p $(@D) @@ -301,11 +301,11 @@ $(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(COMMON).x86-gcc.o $(C @mkdir -p $(@D) $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ -$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).gcc.o $(K1CCPATH) +$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ -$(BINDIR)/%.gcc.rev.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).ccomp.o $(K1CCPATH) +$(BINDIR)/%.gcc.rev.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).ccomp.o $(KVXCPATH) @mkdir -p $(@D) $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ @@ -319,11 +319,11 @@ $(BINDIR)/%.x86-gcc.vaarg.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(VAARG_COMMON).x @mkdir -p $(@D) $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ -$(BINDIR)/%.gcc.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(K1CCPATH) +$(BINDIR)/%.gcc.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ -$(BINDIR)/%.gcc.rev.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(K1CCPATH) +$(BINDIR)/%.gcc.rev.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(KVXCPATH) @mkdir -p $(@D) $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ @@ -339,9 +339,9 @@ $(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) @mkdir -p $(@D) $(CC) -c $(CFLAGS) $< -o $@ -$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(K1CCPATH) +$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) -c $(CFLAGS) $< -o $@ + $(KVXC) -c $(CFLAGS) $< -o $@ $(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) @mkdir -p $(@D) @@ -356,9 +356,9 @@ $(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) -S $< -o $@ -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(K1CCPATH) +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) -S $< -o $@ + $(KVXC) $(CFLAGS) -S $< -o $@ $(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) @mkdir -p $(@D) diff --git a/test/mppa/lib/Makefile b/test/mppa/lib/Makefile index 08901db6..5a947bb3 100644 --- a/test/mppa/lib/Makefile +++ b/test/mppa/lib/Makefile @@ -1,4 +1,4 @@ -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc K1AR ?= k1-cos-ar CC ?= gcc AR ?= gcc-ar @@ -14,7 +14,7 @@ BINDIR=$(DIR)/bin ASMDIR=$(DIR)/asm OBJDIR=$(DIR)/obj -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) K1ARPATH=$(shell which $(K1AR)) CCPATH=$(shell which $(CC)) ARPATH=$(shell which $(AR)) @@ -89,9 +89,9 @@ $(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o system.x86-gcc.a $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ -$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o system.gcc.a $(K1CCPATH) +$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o system.gcc.a $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) $(filter-out $(K1CCPATH),$^) -o $@ + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ $(BINDIR)/%.ccomp.bin: $(OBJDIR)/%.ccomp.o system.gcc.a $(CCOMPPATH) @mkdir -p $(@D) @@ -110,9 +110,9 @@ $(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) -c $< -o $@ -$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(K1CCPATH) +$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) -c $< -o $@ + $(KVXC) $(CFLAGS) -c $< -o $@ $(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) $(CCOMP) $(CFLAGS) -c $< -o $@ @@ -123,9 +123,9 @@ $(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) @mkdir -p $(@D) $(CC) $(CFLAGS) -S $< -o $@ -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(K1CCPATH) +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) @mkdir -p $(@D) - $(K1CC) $(CFLAGS) -S $< -o $@ + $(KVXC) $(CFLAGS) -S $< -o $@ $(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) @mkdir -p $(@D) diff --git a/test/mppa/mmult/.gitignore b/test/mppa/mmult/.gitignore index c9cd4c65..b43ccc5f 100644 --- a/test/mppa/mmult/.gitignore +++ b/test/mppa/mmult/.gitignore @@ -1,4 +1,4 @@ -mmult-test-ccomp-k1c -mmult-test-gcc-k1c +mmult-test-ccomp-kvx +mmult-test-gcc-kvx mmult-test-gcc-x86 .zero diff --git a/test/mppa/mmult/Makefile b/test/mppa/mmult/Makefile index 667faef8..e7cd890e 100644 --- a/test/mppa/mmult/Makefile +++ b/test/mppa/mmult/Makefile @@ -1,20 +1,20 @@ -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc CC ?= gcc CCOMP ?= ccomp CFLAGS ?= -O2 SIMU ?= k1-mppa TIMEOUT ?= 10s -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) CCPATH=$(shell which $(CC)) CCOMPPATH=$(shell which $(CCOMP)) SIMUPATH=$(shell which $(SIMU)) PRNG=../prng/prng.c -ALL= mmult-test-gcc-x86 mmult-test-gcc-k1c mmult-test-ccomp-k1c -CCOMP_OUT= mmult-test-ccomp-k1c.out -GCC_OUT= mmult-test-gcc-k1c.out +ALL= mmult-test-gcc-x86 mmult-test-gcc-kvx mmult-test-ccomp-kvx +CCOMP_OUT= mmult-test-ccomp-kvx.out +GCC_OUT= mmult-test-gcc-kvx.out X86_GCC_OUT= mmult-test-gcc-x86.out STUB_OUT=.zero @@ -23,14 +23,14 @@ all: $(ALL) mmult-test-gcc-x86: mmult.c $(PRNG) $(CCPATH) $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ -mmult-test-gcc-k1c: mmult.c $(PRNG) $(K1CCPATH) - $(K1CC) $(CFLAGS) $(filter-out $(K1CCPATH),$^) -o $@ +mmult-test-gcc-kvx: mmult.c $(PRNG) $(KVXCPATH) + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ -mmult-test-ccomp-k1c: mmult.c $(PRNG) $(CCOMPPATH) +mmult-test-ccomp-kvx: mmult.c $(PRNG) $(CCOMPPATH) $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ .SECONDARY: -%k1c.out: %k1c $(SIMUPATH) +%kvx.out: %kvx $(SIMUPATH) ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ %x86.out: %x86 @@ -40,7 +40,7 @@ mmult-test-ccomp-k1c: mmult.c $(PRNG) $(CCOMPPATH) @echo "0" > $@ .PHONY: -test: test-x86 test-k1c +test: test-x86 test-kvx .PHONY: test-x86: $(X86_GCC_OUT) $(STUB_OUT) @@ -51,17 +51,17 @@ test-x86: $(X86_GCC_OUT) $(STUB_OUT) fi .PHONY: -test-k1c: $(GCC_OUT) $(STUB_OUT) +test-kvx: $(GCC_OUT) $(STUB_OUT) @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $< failed";\ + >&2 echo "ERROR kvx: $< failed";\ else\ - echo "GOOD k1c: $< succeeded";\ + echo "GOOD kvx: $< succeeded";\ fi .PHONY: check: $(CCOMP_OUT) $(STUB_OUT) @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $< failed";\ + >&2 echo "ERROR kvx: $< failed";\ else\ - echo "GOOD k1c: $< succeeded";\ + echo "GOOD kvx: $< succeeded";\ fi diff --git a/test/mppa/mmult/README.md b/test/mppa/mmult/README.md index ef2bff7e..780603f6 100644 --- a/test/mppa/mmult/README.md +++ b/test/mppa/mmult/README.md @@ -11,7 +11,7 @@ The following commands can be run inside the folder: - `make`: produces the unitary test binaries - `mmult-test-gcc-x86` : binary from gcc on x86 - - `mmult-test-k1c-x86` : binary from gcc on k1c - - `mmult-test-ccomp-x86` : binary from ccomp on k1c + - `mmult-test-kvx-x86` : binary from gcc on kvx + - `mmult-test-ccomp-x86` : binary from ccomp on kvx - `make test`: tests the return value of the binaries produced by gcc. - `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/mppa/prng/.gitignore b/test/mppa/prng/.gitignore index 0792a78b..08023900 100644 --- a/test/mppa/prng/.gitignore +++ b/test/mppa/prng/.gitignore @@ -1,3 +1,3 @@ -prng-test-ccomp-k1c +prng-test-ccomp-kvx prng-test-gcc-x86 -prng-test-gcc-k1c +prng-test-gcc-kvx diff --git a/test/mppa/prng/Makefile b/test/mppa/prng/Makefile index 9cbb3872..68e5ffc9 100644 --- a/test/mppa/prng/Makefile +++ b/test/mppa/prng/Makefile @@ -1,18 +1,18 @@ -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc CC ?= gcc CCOMP ?= ccomp CFLAGS ?= -O2 SIMU ?= k1-mppa TIMEOUT ?= 10s -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) CCPATH=$(shell which $(CC)) CCOMPPATH=$(shell which $(CCOMP)) SIMUPATH=$(shell which $(SIMU)) -ALL= prng-test-gcc-x86 prng-test-gcc-k1c prng-test-ccomp-k1c -CCOMP_OUT= prng-test-ccomp-k1c.out -GCC_OUT= prng-test-gcc-k1c.out +ALL= prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx +CCOMP_OUT= prng-test-ccomp-kvx.out +GCC_OUT= prng-test-gcc-kvx.out X86_GCC_OUT= prng-test-gcc-x86.out STUB_OUT=.zero @@ -21,14 +21,14 @@ all: $(ALL) prng-test-gcc-x86: prng.c $(CCPATH) $(CC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ -prng-test-gcc-k1c: prng.c $(K1CCPATH) - $(K1CC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ +prng-test-gcc-kvx: prng.c $(KVXCPATH) + $(KVXC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ -prng-test-ccomp-k1c: prng.c $(CCOMPPATH) +prng-test-ccomp-kvx: prng.c $(CCOMPPATH) $(CCOMP) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ .SECONDARY: -%k1c.out: %k1c $(SIMUPATH) +%kvx.out: %kvx $(SIMUPATH) ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ %x86.out: %x86 @@ -38,7 +38,7 @@ prng-test-ccomp-k1c: prng.c $(CCOMPPATH) @echo "0" > $@ .PHONY: -test: test-x86 test-k1c +test: test-x86 test-kvx .PHONY: test-x86: $(X86_GCC_OUT) $(STUB_OUT) @@ -49,21 +49,21 @@ test-x86: $(X86_GCC_OUT) $(STUB_OUT) fi .PHONY: -test-k1c: $(GCC_OUT) $(STUB_OUT) +test-kvx: $(GCC_OUT) $(STUB_OUT) @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $< failed";\ + >&2 echo "ERROR kvx: $< failed";\ else\ - echo "GOOD k1c: $< succeeded";\ + echo "GOOD kvx: $< succeeded";\ fi .PHONY: check: $(CCOMP_OUT) $(STUB_OUT) @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $< failed";\ + >&2 echo "ERROR kvx: $< failed";\ else\ - echo "GOOD k1c: $< succeeded";\ + echo "GOOD kvx: $< succeeded";\ fi .PHONY: clean: - rm -f prng-test-gcc-x86 prng-test-gcc-k1c prng-test-ccomp-k1c + rm -f prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx diff --git a/test/mppa/prng/README.md b/test/mppa/prng/README.md index b4c2279b..98ed539d 100644 --- a/test/mppa/prng/README.md +++ b/test/mppa/prng/README.md @@ -11,7 +11,7 @@ The following commands can be run inside that folder: - `make`: produces the unitary test binaries - `prng-test-gcc-x86` : binary from gcc on x86 - - `prng-test-k1c-x86` : binary from gcc on k1c - - `prng-test-ccomp-x86` : binary from ccomp on k1c + - `prng-test-kvx-x86` : binary from gcc on kvx + - `prng-test-ccomp-x86` : binary from ccomp on kvx - `make test`: tests the return value of the binaries produced by gcc. - `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/mppa/sort/.gitignore b/test/mppa/sort/.gitignore index a8d6921c..070b87c4 100644 --- a/test/mppa/sort/.gitignore +++ b/test/mppa/sort/.gitignore @@ -1,9 +1,9 @@ -main-test-ccomp-k1c -main-test-gcc-k1c +main-test-ccomp-kvx +main-test-gcc-kvx main-test-gcc-x86 -merge-test-gcc-k1c +merge-test-gcc-kvx merge-test-gcc-x86 -selection-test-gcc-k1c +selection-test-gcc-kvx selection-test-gcc-x86 -insertion-test-gcc-k1c +insertion-test-gcc-kvx insertion-test-gcc-x86 diff --git a/test/mppa/sort/Makefile b/test/mppa/sort/Makefile index 0ae9d1f6..c4090352 100644 --- a/test/mppa/sort/Makefile +++ b/test/mppa/sort/Makefile @@ -1,11 +1,11 @@ -K1CC ?= k1-cos-gcc +KVXC ?= k1-cos-gcc CC ?= gcc CCOMP ?= ccomp CFLAGS ?= -O2 SIMU ?= k1-mppa TIMEOUT ?= 10s -K1CCPATH=$(shell which $(K1CC)) +KVXCPATH=$(shell which $(KVXC)) CCPATH=$(shell which $(CC)) CCOMPPATH=$(shell which $(CCOMP)) SIMUPATH=$(shell which $(SIMU)) @@ -14,15 +14,15 @@ PRNG=../prng/prng.c CFILES=insertion.c merge.c selection.c main.c -ALL= insertion-gcc-x86 insertion-gcc-k1c insertion-ccomp-k1c\ - selection-gcc-x86 selection-gcc-k1c selection-ccomp-k1c\ - merge-gcc-x86 merge-gcc-k1c merge-ccomp-k1c\ - main-gcc-x86 main-gcc-k1c main-ccomp-k1c +ALL= insertion-gcc-x86 insertion-gcc-kvx insertion-ccomp-kvx\ + selection-gcc-x86 selection-gcc-kvx selection-ccomp-kvx\ + merge-gcc-x86 merge-gcc-kvx merge-ccomp-kvx\ + main-gcc-x86 main-gcc-kvx main-ccomp-kvx -CCOMP_OUT= insertion-ccomp-k1c.out selection-ccomp-k1c.out merge-ccomp-k1c.out\ - main-ccomp-k1c.out -GCC_OUT= insertion-gcc-k1c.out selection-gcc-k1c.out merge-gcc-k1c.out\ - main-gcc-k1c.out +CCOMP_OUT= insertion-ccomp-kvx.out selection-ccomp-kvx.out merge-ccomp-kvx.out\ + main-ccomp-kvx.out +GCC_OUT= insertion-gcc-kvx.out selection-gcc-kvx.out merge-gcc-kvx.out\ + main-gcc-kvx.out X86_GCC_OUT= insertion-gcc-x86.out selection-gcc-x86.out merge-gcc-x86.out\ main-gcc-x86.out STUB_OUT= .zero @@ -35,23 +35,23 @@ main-gcc-x86: $(CFILES) $(PRNG) $(CCPATH) %-gcc-x86: %.c $(PRNG) $(CCPATH) $(CC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ -main-gcc-k1c: $(CFILES) $(PRNG) $(CCPATH) - $(K1CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ +main-gcc-kvx: $(CFILES) $(PRNG) $(CCPATH) + $(KVXC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ -%-gcc-k1c: %.c $(PRNG) $(K1CCPATH) - $(K1CC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(K1CCPATH),$^) -o $@ +%-gcc-kvx: %.c $(PRNG) $(KVXCPATH) + $(KVXC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ -main-ccomp-k1c: $(CFILES) $(PRNG) $(CCOMPPATH) +main-ccomp-kvx: $(CFILES) $(PRNG) $(CCOMPPATH) $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ -%-ccomp-k1c: %.c $(PRNG) $(CCOMPPATH) +%-ccomp-kvx: %.c $(PRNG) $(CCOMPPATH) $(CCOMP) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ .SECONDARY: %x86.out: %x86 ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ -%k1c.out: %k1c $(SIMUPATH) +%kvx.out: %kvx $(SIMUPATH) ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ .zero: @@ -68,24 +68,24 @@ test-x86: $(STUB_OUT) $(X86_GCC_OUT) done .PHONY: -test-k1c: $(STUB_OUT) $(GCC_OUT) +test-kvx: $(STUB_OUT) $(GCC_OUT) @for test in $(wordlist 2,100,$^); do\ if ! diff $$test $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $$test failed";\ + >&2 echo "ERROR kvx: $$test failed";\ else\ - echo "GOOD k1c: $$test succeeded";\ + echo "GOOD kvx: $$test succeeded";\ fi;\ done .PHONY: -test: test-x86 test-k1c +test: test-x86 test-kvx .PHONY: check: $(STUB_OUT) $(CCOMP_OUT) @for test in $(wordlist 2,100,$^); do\ if ! diff $$test $(STUB_OUT); then\ - >&2 echo "ERROR k1c: $$test failed";\ + >&2 echo "ERROR kvx: $$test failed";\ else\ - echo "GOOD k1c: $$test succeeded";\ + echo "GOOD kvx: $$test succeeded";\ fi;\ done diff --git a/test/mppa/sort/README.md b/test/mppa/sort/README.md index b4c2279b..98ed539d 100644 --- a/test/mppa/sort/README.md +++ b/test/mppa/sort/README.md @@ -11,7 +11,7 @@ The following commands can be run inside that folder: - `make`: produces the unitary test binaries - `prng-test-gcc-x86` : binary from gcc on x86 - - `prng-test-k1c-x86` : binary from gcc on k1c - - `prng-test-ccomp-x86` : binary from ccomp on k1c + - `prng-test-kvx-x86` : binary from gcc on kvx + - `prng-test-ccomp-x86` : binary from ccomp on kvx - `make test`: tests the return value of the binaries produced by gcc. - `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/regression/Makefile b/test/regression/Makefile index 97c25f6c..744a2c03 100644 --- a/test/regression/Makefile +++ b/test/regression/Makefile @@ -26,7 +26,7 @@ TESTS_COMP?=attribs1 bitfields1 bitfields2 bitfields3 bitfields4 \ varargs1 varargs2 varargs3 sections alias aligned\ packedstruct1 packedstruct2 -ifeq ($(ARCH),mppa_k1c) +ifeq ($(ARCH),kvx) TESTS_COMP:=$(filter-out packedstruct1,$(TESTS_COMP)) TESTS_COMP:=$(filter-out packedstruct2,$(TESTS_COMP)) endif @@ -35,7 +35,7 @@ endif # but produce processor-dependent results, so no reference output in Results TESTS_DIFF=NaNs -# FIXME ifeq ($(ARCH),mppa_k1c) +# FIXME ifeq ($(ARCH),kvx) TESTS_DIFF:=$(filter-out NaNs,$(TESTS_DIFF)) # endif diff --git a/test/regression/extasm.c b/test/regression/extasm.c index 352b930b..e78fb741 100644 --- a/test/regression/extasm.c +++ b/test/regression/extasm.c @@ -24,7 +24,7 @@ int clobbers(int x, int z) || (defined(ARCH_riscV) && defined(MODEL_64)) \ || (defined(ARCH_powerpc) && defined(MODEL_ppc64)) \ || (defined(ARCH_powerpc) && defined(MODEL_e5500)) \ - || (defined(ARCH_mppa_k1c) && defined(MODEL_64)) \ + || (defined(ARCH_kvx) && defined(MODEL_64)) \ || defined(ARCH_aarch64) #define SIXTYFOUR #else diff --git a/test/regression/varargs2.c b/test/regression/varargs2.c index 84860ef3..3e785a63 100644 --- a/test/regression/varargs2.c +++ b/test/regression/varargs2.c @@ -122,12 +122,12 @@ int main() miniprintf("A string: %s\n", "Hello world"); miniprintf("A double: %e\n", 3.141592654); -#ifndef __K1C__ +#ifndef __KVX__ miniprintf("A small struct: %y\n", (struct Y) { 'x', 12 }); miniprintf("A bigger struct: %z\n", (struct Z) { 123, 456, 789 }); #endif -#ifdef __K1C__ +#ifdef __KVX__ miniprintf("A mixture: %c & %s & %d & %l & %e & %f\n", 'x', "Hello, world!", -- cgit From bc1e43ea95b9455cdccee442db77bc5fafd3dcc6 Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Tue, 26 May 2020 22:11:32 +0200 Subject: tests for kvx --- test/c/Results/binarytrees-kvx | 4 + test/c/Results/binarytrees-mppa_k1c | 4 - test/c/Results/chomp-kvx | 9 + test/c/Results/chomp-mppa_k1c | 9 - test/c/Results/fannkuch-kvx | 31 ++ test/c/Results/fannkuch-mppa_k1c | 31 -- test/c/Results/fft-kvx | 1 + test/c/Results/fft-mppa_k1c | 1 - test/c/Results/fftsp-kvx | 1 + test/c/Results/fftsp-mppa_k1c | 1 - test/c/Results/fftw-kvx | 16 ++ test/c/Results/fftw-mppa_k1c | 16 -- test/c/Results/fib-kvx | 1 + test/c/Results/fib-mppa_k1c | 1 - test/c/Results/integr-kvx | 1 + test/c/Results/integr-mppa_k1c | 1 - test/c/Results/knucleotide-kvx | 0 test/c/Results/knucleotide-mppa_k1c | 0 test/c/Results/lists-kvx | 2 + test/c/Results/lists-mppa_k1c | 2 - test/c/Results/mandelbrot-kvx | Bin 0 -> 209 bytes test/c/Results/mandelbrot-mppa_k1c | Bin 209 -> 0 bytes test/c/Results/nbody-kvx | 2 + test/c/Results/nbody-mppa_k1c | 2 - test/c/Results/nsieve-kvx | 3 + test/c/Results/nsieve-mppa_k1c | 3 - test/c/Results/nsievebits-kvx | 3 + test/c/Results/nsievebits-mppa_k1c | 3 - test/c/Results/perlin-kvx | 1 + test/c/Results/perlin-mppa_k1c | 1 - test/c/Results/qsort-kvx | 1 + test/c/Results/qsort-mppa_k1c | 1 - test/c/Results/sha1-kvx | 2 + test/c/Results/sha1-mppa_k1c | 2 - test/c/Results/spectral-kvx | 1 + test/c/Results/spectral-mppa_k1c | 1 - test/c/Results/vmach-kvx | 2 + test/c/Results/vmach-mppa_k1c | 2 - test/kvx/.gitignore | 20 ++ test/kvx/builtins/clzll.c | 7 + test/kvx/builtins/stsud.c | 7 + test/kvx/coverage.sh | 24 ++ test/kvx/coverage_helper.py | 45 +++ test/kvx/delout.sh | 6 + test/kvx/do_test.sh | 50 ++++ test/kvx/general/clzd.c | 7 + test/kvx/general/clzw.c | 7 + test/kvx/general/ctzd.c | 7 + test/kvx/general/ctzw.c | 7 + test/kvx/general/satd.c | 7 + test/kvx/general/sbmm8.c | 7 + test/kvx/general/sbmmt8.c | 7 + test/kvx/hardcheck.sh | 6 + test/kvx/hardtest.sh | 6 + test/kvx/instr/.gitignore | 1 + test/kvx/instr/Makefile | 176 ++++++++++++ test/kvx/instr/builtin32.c | 12 + test/kvx/instr/builtin64.c | 17 ++ test/kvx/instr/div32.c | 5 + test/kvx/instr/divf32.c | 5 + test/kvx/instr/divf64.c | 5 + test/kvx/instr/divu32.c | 7 + test/kvx/instr/f32.c | 8 + test/kvx/instr/f64.c | 8 + test/kvx/instr/floatcmp.py | 93 ++++++ test/kvx/instr/framework.h | 66 +++++ test/kvx/instr/i32.c | 149 ++++++++++ test/kvx/instr/i64.c | 169 +++++++++++ test/kvx/instr/individual/andw.c | 5 + test/kvx/instr/individual/branch.c | 10 + test/kvx/instr/individual/branchz.c | 10 + test/kvx/instr/individual/branchzu.c | 11 + test/kvx/instr/individual/call.c | 16 ++ test/kvx/instr/individual/cast_S32_S64.c | 7 + test/kvx/instr/individual/cast_S64_U32.c | 7 + test/kvx/instr/individual/cb.deqz.c | 10 + test/kvx/instr/individual/cb.dgez.c | 10 + test/kvx/instr/individual/cb.dgtz.c | 10 + test/kvx/instr/individual/cb.dlez.c | 10 + test/kvx/instr/individual/cb.dltz.c | 10 + test/kvx/instr/individual/cb.dnez.c | 10 + test/kvx/instr/individual/cb.wgez.c | 10 + test/kvx/instr/individual/cb.wgtz.c | 10 + test/kvx/instr/individual/cb.wlez.c | 10 + test/kvx/instr/individual/cb.wltz.c | 10 + test/kvx/instr/individual/compd.eq.c | 7 + test/kvx/instr/individual/compd.geu.c | 7 + test/kvx/instr/individual/compd.gt.c | 7 + test/kvx/instr/individual/compd.le.c | 7 + test/kvx/instr/individual/compd.leu.c | 7 + test/kvx/instr/individual/compd.lt.c | 7 + test/kvx/instr/individual/compd.ltu.c | 7 + test/kvx/instr/individual/compd.ne.c | 7 + test/kvx/instr/individual/compw.eq.c | 7 + test/kvx/instr/individual/compw.geu.c | 7 + test/kvx/instr/individual/compw.gt.c | 7 + test/kvx/instr/individual/compw.gtu.c | 7 + test/kvx/instr/individual/compw.le.c | 7 + test/kvx/instr/individual/compw.leu.c | 7 + test/kvx/instr/individual/compw.lt.c | 7 + test/kvx/instr/individual/compw.ltu.c | 7 + test/kvx/instr/individual/compw.ne.c | 7 + test/kvx/instr/individual/div2.c | 7 + test/kvx/instr/individual/doubleconv.c | 9 + test/kvx/instr/individual/floatconv.c | 9 + test/kvx/instr/individual/fmuld.c | 7 + test/kvx/instr/individual/fmulw.c | 7 + test/kvx/instr/individual/fnegd.c | 7 + test/kvx/instr/individual/fnegw.c | 7 + test/kvx/instr/individual/for.c | 9 + test/kvx/instr/individual/forvar.c | 9 + test/kvx/instr/individual/forvarl.c | 10 + test/kvx/instr/individual/fsbfd.c | 7 + test/kvx/instr/individual/fsbfw.c | 7 + test/kvx/instr/individual/indirect_call.c | 33 +++ test/kvx/instr/individual/indirect_tailcall.c | 33 +++ test/kvx/instr/individual/lbs.c | 9 + test/kvx/instr/individual/lbz.c | 9 + test/kvx/instr/individual/muld.c | 7 + test/kvx/instr/individual/mulw.c | 7 + test/kvx/instr/individual/negd.c | 7 + test/kvx/instr/individual/ord.c | 7 + test/kvx/instr/individual/sbfd.c | 7 + test/kvx/instr/individual/sbfw.c | 7 + test/kvx/instr/individual/simple.c | 7 + test/kvx/instr/individual/sllw.c | 7 + test/kvx/instr/individual/srad.c | 7 + test/kvx/instr/individual/srld.c | 7 + test/kvx/instr/individual/tailcall.c | 16 ++ test/kvx/instr/individual/udivd.c | 7 + test/kvx/instr/individual/umodd.c | 7 + test/kvx/instr/individual/xord.c | 7 + test/kvx/instr/modi32.c | 5 + test/kvx/instr/modui32.c | 7 + test/kvx/instr/ui32.c | 12 + test/kvx/instr/ui64.c | 10 + test/kvx/interop/.gitignore | 1 + test/kvx/interop/Makefile | 365 +++++++++++++++++++++++ test/kvx/interop/common.c | 257 +++++++++++++++++ test/kvx/interop/common.h | 28 ++ test/kvx/interop/framework.h | 66 +++++ test/kvx/interop/i32.c | 13 + test/kvx/interop/i64.c | 14 + test/kvx/interop/individual/i_multiiargs.c | 6 + test/kvx/interop/individual/i_oneiarg.c | 6 + test/kvx/interop/individual/ll_multillargs.c | 7 + test/kvx/interop/individual/ll_onellarg.c | 7 + test/kvx/interop/individual/ll_void.c | 7 + test/kvx/interop/individual/void_void.c | 7 + test/kvx/interop/stackhell.c | 9 + test/kvx/interop/vaarg_common.c | 383 +++++++++++++++++++++++++ test/kvx/lib/Makefile | 133 +++++++++ test/kvx/lib/printf-test.c | 9 + test/kvx/lib/printf.c | 9 + test/kvx/mmult/.gitignore | 4 + test/kvx/mmult/Makefile | 67 +++++ test/kvx/mmult/README.md | 17 ++ test/kvx/mmult/mmult.c | 146 ++++++++++ test/kvx/mmult/mmult.h | 10 + test/kvx/prng/.gitignore | 3 + test/kvx/prng/Makefile | 69 +++++ test/kvx/prng/README.md | 17 ++ test/kvx/prng/prng.c | 41 +++ test/kvx/prng/prng.h | 10 + test/kvx/prng/types.h | 7 + test/kvx/simucheck.sh | 8 + test/kvx/simutest.sh | 8 + test/kvx/sort/.gitignore | 9 + test/kvx/sort/Makefile | 91 ++++++ test/kvx/sort/README.md | 17 ++ test/kvx/sort/insertion.c | 59 ++++ test/kvx/sort/insertion.h | 6 + test/kvx/sort/main.c | 34 +++ test/kvx/sort/merge.c | 92 ++++++ test/kvx/sort/merge.h | 7 + test/kvx/sort/selection.c | 62 ++++ test/kvx/sort/selection.h | 6 + test/kvx/sort/test.h | 6 + test/mppa/.gitignore | 20 -- test/mppa/builtins/clzll.c | 7 - test/mppa/builtins/stsud.c | 7 - test/mppa/coverage.sh | 24 -- test/mppa/coverage_helper.py | 45 --- test/mppa/delout.sh | 6 - test/mppa/do_test.sh | 50 ---- test/mppa/general/clzd.c | 7 - test/mppa/general/clzw.c | 7 - test/mppa/general/ctzd.c | 7 - test/mppa/general/ctzw.c | 7 - test/mppa/general/satd.c | 7 - test/mppa/general/sbmm8.c | 7 - test/mppa/general/sbmmt8.c | 7 - test/mppa/hardcheck.sh | 6 - test/mppa/hardtest.sh | 6 - test/mppa/instr/.gitignore | 1 - test/mppa/instr/Makefile | 176 ------------ test/mppa/instr/builtin32.c | 12 - test/mppa/instr/builtin64.c | 17 -- test/mppa/instr/div32.c | 5 - test/mppa/instr/divf32.c | 5 - test/mppa/instr/divf64.c | 5 - test/mppa/instr/divu32.c | 7 - test/mppa/instr/f32.c | 8 - test/mppa/instr/f64.c | 8 - test/mppa/instr/floatcmp.py | 93 ------ test/mppa/instr/framework.h | 66 ----- test/mppa/instr/i32.c | 149 ---------- test/mppa/instr/i64.c | 169 ----------- test/mppa/instr/individual/andw.c | 5 - test/mppa/instr/individual/branch.c | 10 - test/mppa/instr/individual/branchz.c | 10 - test/mppa/instr/individual/branchzu.c | 11 - test/mppa/instr/individual/call.c | 16 -- test/mppa/instr/individual/cast_S32_S64.c | 7 - test/mppa/instr/individual/cast_S64_U32.c | 7 - test/mppa/instr/individual/cb.deqz.c | 10 - test/mppa/instr/individual/cb.dgez.c | 10 - test/mppa/instr/individual/cb.dgtz.c | 10 - test/mppa/instr/individual/cb.dlez.c | 10 - test/mppa/instr/individual/cb.dltz.c | 10 - test/mppa/instr/individual/cb.dnez.c | 10 - test/mppa/instr/individual/cb.wgez.c | 10 - test/mppa/instr/individual/cb.wgtz.c | 10 - test/mppa/instr/individual/cb.wlez.c | 10 - test/mppa/instr/individual/cb.wltz.c | 10 - test/mppa/instr/individual/compd.eq.c | 7 - test/mppa/instr/individual/compd.geu.c | 7 - test/mppa/instr/individual/compd.gt.c | 7 - test/mppa/instr/individual/compd.le.c | 7 - test/mppa/instr/individual/compd.leu.c | 7 - test/mppa/instr/individual/compd.lt.c | 7 - test/mppa/instr/individual/compd.ltu.c | 7 - test/mppa/instr/individual/compd.ne.c | 7 - test/mppa/instr/individual/compw.eq.c | 7 - test/mppa/instr/individual/compw.geu.c | 7 - test/mppa/instr/individual/compw.gt.c | 7 - test/mppa/instr/individual/compw.gtu.c | 7 - test/mppa/instr/individual/compw.le.c | 7 - test/mppa/instr/individual/compw.leu.c | 7 - test/mppa/instr/individual/compw.lt.c | 7 - test/mppa/instr/individual/compw.ltu.c | 7 - test/mppa/instr/individual/compw.ne.c | 7 - test/mppa/instr/individual/div2.c | 7 - test/mppa/instr/individual/doubleconv.c | 9 - test/mppa/instr/individual/floatconv.c | 9 - test/mppa/instr/individual/fmuld.c | 7 - test/mppa/instr/individual/fmulw.c | 7 - test/mppa/instr/individual/fnegd.c | 7 - test/mppa/instr/individual/fnegw.c | 7 - test/mppa/instr/individual/for.c | 9 - test/mppa/instr/individual/forvar.c | 9 - test/mppa/instr/individual/forvarl.c | 10 - test/mppa/instr/individual/fsbfd.c | 7 - test/mppa/instr/individual/fsbfw.c | 7 - test/mppa/instr/individual/indirect_call.c | 33 --- test/mppa/instr/individual/indirect_tailcall.c | 33 --- test/mppa/instr/individual/lbs.c | 9 - test/mppa/instr/individual/lbz.c | 9 - test/mppa/instr/individual/muld.c | 7 - test/mppa/instr/individual/mulw.c | 7 - test/mppa/instr/individual/negd.c | 7 - test/mppa/instr/individual/ord.c | 7 - test/mppa/instr/individual/sbfd.c | 7 - test/mppa/instr/individual/sbfw.c | 7 - test/mppa/instr/individual/simple.c | 7 - test/mppa/instr/individual/sllw.c | 7 - test/mppa/instr/individual/srad.c | 7 - test/mppa/instr/individual/srld.c | 7 - test/mppa/instr/individual/tailcall.c | 16 -- test/mppa/instr/individual/udivd.c | 7 - test/mppa/instr/individual/umodd.c | 7 - test/mppa/instr/individual/xord.c | 7 - test/mppa/instr/modi32.c | 5 - test/mppa/instr/modui32.c | 7 - test/mppa/instr/ui32.c | 12 - test/mppa/instr/ui64.c | 10 - test/mppa/interop/.gitignore | 1 - test/mppa/interop/Makefile | 365 ----------------------- test/mppa/interop/common.c | 257 ----------------- test/mppa/interop/common.h | 28 -- test/mppa/interop/framework.h | 66 ----- test/mppa/interop/i32.c | 13 - test/mppa/interop/i64.c | 14 - test/mppa/interop/individual/i_multiiargs.c | 6 - test/mppa/interop/individual/i_oneiarg.c | 6 - test/mppa/interop/individual/ll_multillargs.c | 7 - test/mppa/interop/individual/ll_onellarg.c | 7 - test/mppa/interop/individual/ll_void.c | 7 - test/mppa/interop/individual/void_void.c | 7 - test/mppa/interop/stackhell.c | 9 - test/mppa/interop/vaarg_common.c | 383 ------------------------- test/mppa/lib/Makefile | 133 --------- test/mppa/lib/printf-test.c | 9 - test/mppa/lib/printf.c | 9 - test/mppa/mmult/.gitignore | 4 - test/mppa/mmult/Makefile | 67 ----- test/mppa/mmult/README.md | 17 -- test/mppa/mmult/mmult.c | 146 ---------- test/mppa/mmult/mmult.h | 10 - test/mppa/prng/.gitignore | 3 - test/mppa/prng/Makefile | 69 ----- test/mppa/prng/README.md | 17 -- test/mppa/prng/prng.c | 41 --- test/mppa/prng/prng.h | 10 - test/mppa/prng/types.h | 7 - test/mppa/simucheck.sh | 8 - test/mppa/simutest.sh | 8 - test/mppa/sort/.gitignore | 9 - test/mppa/sort/Makefile | 91 ------ test/mppa/sort/README.md | 17 -- test/mppa/sort/insertion.c | 59 ---- test/mppa/sort/insertion.h | 6 - test/mppa/sort/main.c | 34 --- test/mppa/sort/merge.c | 92 ------ test/mppa/sort/merge.h | 7 - test/mppa/sort/selection.c | 62 ---- test/mppa/sort/selection.h | 6 - test/mppa/sort/test.h | 6 - test/regression/builtins-kvx.c | 72 +++++ test/regression/builtins-mppa_k1c.c | 72 ----- 320 files changed, 3822 insertions(+), 3822 deletions(-) create mode 100644 test/c/Results/binarytrees-kvx delete mode 100644 test/c/Results/binarytrees-mppa_k1c create mode 100644 test/c/Results/chomp-kvx delete mode 100644 test/c/Results/chomp-mppa_k1c create mode 100644 test/c/Results/fannkuch-kvx delete mode 100644 test/c/Results/fannkuch-mppa_k1c create mode 100644 test/c/Results/fft-kvx delete mode 100644 test/c/Results/fft-mppa_k1c create mode 100644 test/c/Results/fftsp-kvx delete mode 100644 test/c/Results/fftsp-mppa_k1c create mode 100644 test/c/Results/fftw-kvx delete mode 100644 test/c/Results/fftw-mppa_k1c create mode 100644 test/c/Results/fib-kvx delete mode 100644 test/c/Results/fib-mppa_k1c create mode 100644 test/c/Results/integr-kvx delete mode 100644 test/c/Results/integr-mppa_k1c create mode 100644 test/c/Results/knucleotide-kvx delete mode 100644 test/c/Results/knucleotide-mppa_k1c create mode 100644 test/c/Results/lists-kvx delete mode 100644 test/c/Results/lists-mppa_k1c create mode 100644 test/c/Results/mandelbrot-kvx delete mode 100644 test/c/Results/mandelbrot-mppa_k1c create mode 100644 test/c/Results/nbody-kvx delete mode 100644 test/c/Results/nbody-mppa_k1c create mode 100644 test/c/Results/nsieve-kvx delete mode 100644 test/c/Results/nsieve-mppa_k1c create mode 100644 test/c/Results/nsievebits-kvx delete mode 100644 test/c/Results/nsievebits-mppa_k1c create mode 100644 test/c/Results/perlin-kvx delete mode 100644 test/c/Results/perlin-mppa_k1c create mode 100644 test/c/Results/qsort-kvx delete mode 100644 test/c/Results/qsort-mppa_k1c create mode 100644 test/c/Results/sha1-kvx delete mode 100644 test/c/Results/sha1-mppa_k1c create mode 100644 test/c/Results/spectral-kvx delete mode 100644 test/c/Results/spectral-mppa_k1c create mode 100644 test/c/Results/vmach-kvx delete mode 100644 test/c/Results/vmach-mppa_k1c create mode 100644 test/kvx/.gitignore create mode 100644 test/kvx/builtins/clzll.c create mode 100644 test/kvx/builtins/stsud.c create mode 100755 test/kvx/coverage.sh create mode 100644 test/kvx/coverage_helper.py create mode 100755 test/kvx/delout.sh create mode 100644 test/kvx/do_test.sh create mode 100644 test/kvx/general/clzd.c create mode 100644 test/kvx/general/clzw.c create mode 100644 test/kvx/general/ctzd.c create mode 100644 test/kvx/general/ctzw.c create mode 100644 test/kvx/general/satd.c create mode 100644 test/kvx/general/sbmm8.c create mode 100644 test/kvx/general/sbmmt8.c create mode 100755 test/kvx/hardcheck.sh create mode 100755 test/kvx/hardtest.sh create mode 100644 test/kvx/instr/.gitignore create mode 100644 test/kvx/instr/Makefile create mode 100644 test/kvx/instr/builtin32.c create mode 100644 test/kvx/instr/builtin64.c create mode 100644 test/kvx/instr/div32.c create mode 100644 test/kvx/instr/divf32.c create mode 100644 test/kvx/instr/divf64.c create mode 100644 test/kvx/instr/divu32.c create mode 100644 test/kvx/instr/f32.c create mode 100644 test/kvx/instr/f64.c create mode 100755 test/kvx/instr/floatcmp.py create mode 100644 test/kvx/instr/framework.h create mode 100644 test/kvx/instr/i32.c create mode 100644 test/kvx/instr/i64.c create mode 100644 test/kvx/instr/individual/andw.c create mode 100644 test/kvx/instr/individual/branch.c create mode 100644 test/kvx/instr/individual/branchz.c create mode 100644 test/kvx/instr/individual/branchzu.c create mode 100644 test/kvx/instr/individual/call.c create mode 100644 test/kvx/instr/individual/cast_S32_S64.c create mode 100644 test/kvx/instr/individual/cast_S64_U32.c create mode 100644 test/kvx/instr/individual/cb.deqz.c create mode 100644 test/kvx/instr/individual/cb.dgez.c create mode 100644 test/kvx/instr/individual/cb.dgtz.c create mode 100644 test/kvx/instr/individual/cb.dlez.c create mode 100644 test/kvx/instr/individual/cb.dltz.c create mode 100644 test/kvx/instr/individual/cb.dnez.c create mode 100644 test/kvx/instr/individual/cb.wgez.c create mode 100644 test/kvx/instr/individual/cb.wgtz.c create mode 100644 test/kvx/instr/individual/cb.wlez.c create mode 100644 test/kvx/instr/individual/cb.wltz.c create mode 100644 test/kvx/instr/individual/compd.eq.c create mode 100644 test/kvx/instr/individual/compd.geu.c create mode 100644 test/kvx/instr/individual/compd.gt.c create mode 100644 test/kvx/instr/individual/compd.le.c create mode 100644 test/kvx/instr/individual/compd.leu.c create mode 100644 test/kvx/instr/individual/compd.lt.c create mode 100644 test/kvx/instr/individual/compd.ltu.c create mode 100644 test/kvx/instr/individual/compd.ne.c create mode 100644 test/kvx/instr/individual/compw.eq.c create mode 100644 test/kvx/instr/individual/compw.geu.c create mode 100644 test/kvx/instr/individual/compw.gt.c create mode 100644 test/kvx/instr/individual/compw.gtu.c create mode 100644 test/kvx/instr/individual/compw.le.c create mode 100644 test/kvx/instr/individual/compw.leu.c create mode 100644 test/kvx/instr/individual/compw.lt.c create mode 100644 test/kvx/instr/individual/compw.ltu.c create mode 100644 test/kvx/instr/individual/compw.ne.c create mode 100644 test/kvx/instr/individual/div2.c create mode 100644 test/kvx/instr/individual/doubleconv.c create mode 100644 test/kvx/instr/individual/floatconv.c create mode 100644 test/kvx/instr/individual/fmuld.c create mode 100644 test/kvx/instr/individual/fmulw.c create mode 100644 test/kvx/instr/individual/fnegd.c create mode 100644 test/kvx/instr/individual/fnegw.c create mode 100644 test/kvx/instr/individual/for.c create mode 100644 test/kvx/instr/individual/forvar.c create mode 100644 test/kvx/instr/individual/forvarl.c create mode 100644 test/kvx/instr/individual/fsbfd.c create mode 100644 test/kvx/instr/individual/fsbfw.c create mode 100644 test/kvx/instr/individual/indirect_call.c create mode 100644 test/kvx/instr/individual/indirect_tailcall.c create mode 100644 test/kvx/instr/individual/lbs.c create mode 100644 test/kvx/instr/individual/lbz.c create mode 100644 test/kvx/instr/individual/muld.c create mode 100644 test/kvx/instr/individual/mulw.c create mode 100644 test/kvx/instr/individual/negd.c create mode 100644 test/kvx/instr/individual/ord.c create mode 100644 test/kvx/instr/individual/sbfd.c create mode 100644 test/kvx/instr/individual/sbfw.c create mode 100644 test/kvx/instr/individual/simple.c create mode 100644 test/kvx/instr/individual/sllw.c create mode 100644 test/kvx/instr/individual/srad.c create mode 100644 test/kvx/instr/individual/srld.c create mode 100644 test/kvx/instr/individual/tailcall.c create mode 100644 test/kvx/instr/individual/udivd.c create mode 100644 test/kvx/instr/individual/umodd.c create mode 100644 test/kvx/instr/individual/xord.c create mode 100644 test/kvx/instr/modi32.c create mode 100644 test/kvx/instr/modui32.c create mode 100644 test/kvx/instr/ui32.c create mode 100644 test/kvx/instr/ui64.c create mode 100644 test/kvx/interop/.gitignore create mode 100644 test/kvx/interop/Makefile create mode 100644 test/kvx/interop/common.c create mode 100644 test/kvx/interop/common.h create mode 100644 test/kvx/interop/framework.h create mode 100644 test/kvx/interop/i32.c create mode 100644 test/kvx/interop/i64.c create mode 100644 test/kvx/interop/individual/i_multiiargs.c create mode 100644 test/kvx/interop/individual/i_oneiarg.c create mode 100644 test/kvx/interop/individual/ll_multillargs.c create mode 100644 test/kvx/interop/individual/ll_onellarg.c create mode 100644 test/kvx/interop/individual/ll_void.c create mode 100644 test/kvx/interop/individual/void_void.c create mode 100644 test/kvx/interop/stackhell.c create mode 100644 test/kvx/interop/vaarg_common.c create mode 100644 test/kvx/lib/Makefile create mode 100644 test/kvx/lib/printf-test.c create mode 100644 test/kvx/lib/printf.c create mode 100644 test/kvx/mmult/.gitignore create mode 100644 test/kvx/mmult/Makefile create mode 100644 test/kvx/mmult/README.md create mode 100644 test/kvx/mmult/mmult.c create mode 100644 test/kvx/mmult/mmult.h create mode 100644 test/kvx/prng/.gitignore create mode 100644 test/kvx/prng/Makefile create mode 100644 test/kvx/prng/README.md create mode 100644 test/kvx/prng/prng.c create mode 100644 test/kvx/prng/prng.h create mode 100644 test/kvx/prng/types.h create mode 100755 test/kvx/simucheck.sh create mode 100755 test/kvx/simutest.sh create mode 100644 test/kvx/sort/.gitignore create mode 100644 test/kvx/sort/Makefile create mode 100644 test/kvx/sort/README.md create mode 100644 test/kvx/sort/insertion.c create mode 100644 test/kvx/sort/insertion.h create mode 100644 test/kvx/sort/main.c create mode 100644 test/kvx/sort/merge.c create mode 100644 test/kvx/sort/merge.h create mode 100644 test/kvx/sort/selection.c create mode 100644 test/kvx/sort/selection.h create mode 100644 test/kvx/sort/test.h delete mode 100644 test/mppa/.gitignore delete mode 100644 test/mppa/builtins/clzll.c delete mode 100644 test/mppa/builtins/stsud.c delete mode 100755 test/mppa/coverage.sh delete mode 100644 test/mppa/coverage_helper.py delete mode 100755 test/mppa/delout.sh delete mode 100644 test/mppa/do_test.sh delete mode 100644 test/mppa/general/clzd.c delete mode 100644 test/mppa/general/clzw.c delete mode 100644 test/mppa/general/ctzd.c delete mode 100644 test/mppa/general/ctzw.c delete mode 100644 test/mppa/general/satd.c delete mode 100644 test/mppa/general/sbmm8.c delete mode 100644 test/mppa/general/sbmmt8.c delete mode 100755 test/mppa/hardcheck.sh delete mode 100755 test/mppa/hardtest.sh delete mode 100644 test/mppa/instr/.gitignore delete mode 100644 test/mppa/instr/Makefile delete mode 100644 test/mppa/instr/builtin32.c delete mode 100644 test/mppa/instr/builtin64.c delete mode 100644 test/mppa/instr/div32.c delete mode 100644 test/mppa/instr/divf32.c delete mode 100644 test/mppa/instr/divf64.c delete mode 100644 test/mppa/instr/divu32.c delete mode 100644 test/mppa/instr/f32.c delete mode 100644 test/mppa/instr/f64.c delete mode 100755 test/mppa/instr/floatcmp.py delete mode 100644 test/mppa/instr/framework.h delete mode 100644 test/mppa/instr/i32.c delete mode 100644 test/mppa/instr/i64.c delete mode 100644 test/mppa/instr/individual/andw.c delete mode 100644 test/mppa/instr/individual/branch.c delete mode 100644 test/mppa/instr/individual/branchz.c delete mode 100644 test/mppa/instr/individual/branchzu.c delete mode 100644 test/mppa/instr/individual/call.c delete mode 100644 test/mppa/instr/individual/cast_S32_S64.c delete mode 100644 test/mppa/instr/individual/cast_S64_U32.c delete mode 100644 test/mppa/instr/individual/cb.deqz.c delete mode 100644 test/mppa/instr/individual/cb.dgez.c delete mode 100644 test/mppa/instr/individual/cb.dgtz.c delete mode 100644 test/mppa/instr/individual/cb.dlez.c delete mode 100644 test/mppa/instr/individual/cb.dltz.c delete mode 100644 test/mppa/instr/individual/cb.dnez.c delete mode 100644 test/mppa/instr/individual/cb.wgez.c delete mode 100644 test/mppa/instr/individual/cb.wgtz.c delete mode 100644 test/mppa/instr/individual/cb.wlez.c delete mode 100644 test/mppa/instr/individual/cb.wltz.c delete mode 100644 test/mppa/instr/individual/compd.eq.c delete mode 100644 test/mppa/instr/individual/compd.geu.c delete mode 100644 test/mppa/instr/individual/compd.gt.c delete mode 100644 test/mppa/instr/individual/compd.le.c delete mode 100644 test/mppa/instr/individual/compd.leu.c delete mode 100644 test/mppa/instr/individual/compd.lt.c delete mode 100644 test/mppa/instr/individual/compd.ltu.c delete mode 100644 test/mppa/instr/individual/compd.ne.c delete mode 100644 test/mppa/instr/individual/compw.eq.c delete mode 100644 test/mppa/instr/individual/compw.geu.c delete mode 100644 test/mppa/instr/individual/compw.gt.c delete mode 100644 test/mppa/instr/individual/compw.gtu.c delete mode 100644 test/mppa/instr/individual/compw.le.c delete mode 100644 test/mppa/instr/individual/compw.leu.c delete mode 100644 test/mppa/instr/individual/compw.lt.c delete mode 100644 test/mppa/instr/individual/compw.ltu.c delete mode 100644 test/mppa/instr/individual/compw.ne.c delete mode 100644 test/mppa/instr/individual/div2.c delete mode 100644 test/mppa/instr/individual/doubleconv.c delete mode 100644 test/mppa/instr/individual/floatconv.c delete mode 100644 test/mppa/instr/individual/fmuld.c delete mode 100644 test/mppa/instr/individual/fmulw.c delete mode 100644 test/mppa/instr/individual/fnegd.c delete mode 100644 test/mppa/instr/individual/fnegw.c delete mode 100644 test/mppa/instr/individual/for.c delete mode 100644 test/mppa/instr/individual/forvar.c delete mode 100644 test/mppa/instr/individual/forvarl.c delete mode 100644 test/mppa/instr/individual/fsbfd.c delete mode 100644 test/mppa/instr/individual/fsbfw.c delete mode 100644 test/mppa/instr/individual/indirect_call.c delete mode 100644 test/mppa/instr/individual/indirect_tailcall.c delete mode 100644 test/mppa/instr/individual/lbs.c delete mode 100644 test/mppa/instr/individual/lbz.c delete mode 100644 test/mppa/instr/individual/muld.c delete mode 100644 test/mppa/instr/individual/mulw.c delete mode 100644 test/mppa/instr/individual/negd.c delete mode 100644 test/mppa/instr/individual/ord.c delete mode 100644 test/mppa/instr/individual/sbfd.c delete mode 100644 test/mppa/instr/individual/sbfw.c delete mode 100644 test/mppa/instr/individual/simple.c delete mode 100644 test/mppa/instr/individual/sllw.c delete mode 100644 test/mppa/instr/individual/srad.c delete mode 100644 test/mppa/instr/individual/srld.c delete mode 100644 test/mppa/instr/individual/tailcall.c delete mode 100644 test/mppa/instr/individual/udivd.c delete mode 100644 test/mppa/instr/individual/umodd.c delete mode 100644 test/mppa/instr/individual/xord.c delete mode 100644 test/mppa/instr/modi32.c delete mode 100644 test/mppa/instr/modui32.c delete mode 100644 test/mppa/instr/ui32.c delete mode 100644 test/mppa/instr/ui64.c delete mode 100644 test/mppa/interop/.gitignore delete mode 100644 test/mppa/interop/Makefile delete mode 100644 test/mppa/interop/common.c delete mode 100644 test/mppa/interop/common.h delete mode 100644 test/mppa/interop/framework.h delete mode 100644 test/mppa/interop/i32.c delete mode 100644 test/mppa/interop/i64.c delete mode 100644 test/mppa/interop/individual/i_multiiargs.c delete mode 100644 test/mppa/interop/individual/i_oneiarg.c delete mode 100644 test/mppa/interop/individual/ll_multillargs.c delete mode 100644 test/mppa/interop/individual/ll_onellarg.c delete mode 100644 test/mppa/interop/individual/ll_void.c delete mode 100644 test/mppa/interop/individual/void_void.c delete mode 100644 test/mppa/interop/stackhell.c delete mode 100644 test/mppa/interop/vaarg_common.c delete mode 100644 test/mppa/lib/Makefile delete mode 100644 test/mppa/lib/printf-test.c delete mode 100644 test/mppa/lib/printf.c delete mode 100644 test/mppa/mmult/.gitignore delete mode 100644 test/mppa/mmult/Makefile delete mode 100644 test/mppa/mmult/README.md delete mode 100644 test/mppa/mmult/mmult.c delete mode 100644 test/mppa/mmult/mmult.h delete mode 100644 test/mppa/prng/.gitignore delete mode 100644 test/mppa/prng/Makefile delete mode 100644 test/mppa/prng/README.md delete mode 100644 test/mppa/prng/prng.c delete mode 100644 test/mppa/prng/prng.h delete mode 100644 test/mppa/prng/types.h delete mode 100755 test/mppa/simucheck.sh delete mode 100755 test/mppa/simutest.sh delete mode 100644 test/mppa/sort/.gitignore delete mode 100644 test/mppa/sort/Makefile delete mode 100644 test/mppa/sort/README.md delete mode 100644 test/mppa/sort/insertion.c delete mode 100644 test/mppa/sort/insertion.h delete mode 100644 test/mppa/sort/main.c delete mode 100644 test/mppa/sort/merge.c delete mode 100644 test/mppa/sort/merge.h delete mode 100644 test/mppa/sort/selection.c delete mode 100644 test/mppa/sort/selection.h delete mode 100644 test/mppa/sort/test.h create mode 100644 test/regression/builtins-kvx.c delete mode 100644 test/regression/builtins-mppa_k1c.c (limited to 'test') diff --git a/test/c/Results/binarytrees-kvx b/test/c/Results/binarytrees-kvx new file mode 100644 index 00000000..72654db9 --- /dev/null +++ b/test/c/Results/binarytrees-kvx @@ -0,0 +1,4 @@ +stretch tree of depth 7 check: -1 +128 trees of depth 4 check: -128 +32 trees of depth 6 check: -32 +long lived tree of depth 6 check: -1 diff --git a/test/c/Results/binarytrees-mppa_k1c b/test/c/Results/binarytrees-mppa_k1c deleted file mode 100644 index 72654db9..00000000 --- a/test/c/Results/binarytrees-mppa_k1c +++ /dev/null @@ -1,4 +0,0 @@ -stretch tree of depth 7 check: -1 -128 trees of depth 4 check: -128 -32 trees of depth 6 check: -32 -long lived tree of depth 6 check: -1 diff --git a/test/c/Results/chomp-kvx b/test/c/Results/chomp-kvx new file mode 100644 index 00000000..7898d32f --- /dev/null +++ b/test/c/Results/chomp-kvx @@ -0,0 +1,9 @@ +player 0 plays at (1,1) +player 1 plays at (3,0) +player 0 plays at (0,3) +player 1 plays at (2,0) +player 0 plays at (0,2) +player 1 plays at (1,0) +player 0 plays at (0,1) +player 1 plays at (0,0) +player 1 loses diff --git a/test/c/Results/chomp-mppa_k1c b/test/c/Results/chomp-mppa_k1c deleted file mode 100644 index 7898d32f..00000000 --- a/test/c/Results/chomp-mppa_k1c +++ /dev/null @@ -1,9 +0,0 @@ -player 0 plays at (1,1) -player 1 plays at (3,0) -player 0 plays at (0,3) -player 1 plays at (2,0) -player 0 plays at (0,2) -player 1 plays at (1,0) -player 0 plays at (0,1) -player 1 plays at (0,0) -player 1 loses diff --git a/test/c/Results/fannkuch-kvx b/test/c/Results/fannkuch-kvx new file mode 100644 index 00000000..09ecc715 --- /dev/null +++ b/test/c/Results/fannkuch-kvx @@ -0,0 +1,31 @@ +123456 +213456 +231456 +321456 +312456 +132456 +234156 +324156 +342156 +432156 +423156 +243156 +341256 +431256 +413256 +143256 +134256 +314256 +412356 +142356 +124356 +214356 +241356 +421356 +234516 +324516 +342516 +432516 +423516 +243516 +Pfannkuchen(6) = 10 diff --git a/test/c/Results/fannkuch-mppa_k1c b/test/c/Results/fannkuch-mppa_k1c deleted file mode 100644 index 09ecc715..00000000 --- a/test/c/Results/fannkuch-mppa_k1c +++ /dev/null @@ -1,31 +0,0 @@ -123456 -213456 -231456 -321456 -312456 -132456 -234156 -324156 -342156 -432156 -423156 -243156 -341256 -431256 -413256 -143256 -134256 -314256 -412356 -142356 -124356 -214356 -241356 -421356 -234516 -324516 -342516 -432516 -423516 -243516 -Pfannkuchen(6) = 10 diff --git a/test/c/Results/fft-kvx b/test/c/Results/fft-kvx new file mode 100644 index 00000000..0fc1c969 --- /dev/null +++ b/test/c/Results/fft-kvx @@ -0,0 +1 @@ +1024 points, result OK diff --git a/test/c/Results/fft-mppa_k1c b/test/c/Results/fft-mppa_k1c deleted file mode 100644 index 0fc1c969..00000000 --- a/test/c/Results/fft-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -1024 points, result OK diff --git a/test/c/Results/fftsp-kvx b/test/c/Results/fftsp-kvx new file mode 100644 index 00000000..2b5711a6 --- /dev/null +++ b/test/c/Results/fftsp-kvx @@ -0,0 +1 @@ +8 points, result OK diff --git a/test/c/Results/fftsp-mppa_k1c b/test/c/Results/fftsp-mppa_k1c deleted file mode 100644 index 2b5711a6..00000000 --- a/test/c/Results/fftsp-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -8 points, result OK diff --git a/test/c/Results/fftw-kvx b/test/c/Results/fftw-kvx new file mode 100644 index 00000000..a1b6130c --- /dev/null +++ b/test/c/Results/fftw-kvx @@ -0,0 +1,16 @@ +o[0] = 2.918193e+01 +o[1] = -3.230611e+01 +o[2] = 1.271687e+01 +o[3] = -1.099040e+01 +o[4] = 5.728673e+00 +o[5] = -4.918940e+00 +o[6] = 1.880764e+00 +o[7] = -1.292782e+00 +o[8] = 1.104073e+02 +o[9] = -5.867858e+01 +o[10] = 2.768382e+01 +o[11] = -2.073843e+01 +o[12] = 1.229410e+01 +o[13] = -9.195029e+00 +o[14] = 4.307537e+00 +o[15] = -2.080713e+00 diff --git a/test/c/Results/fftw-mppa_k1c b/test/c/Results/fftw-mppa_k1c deleted file mode 100644 index a1b6130c..00000000 --- a/test/c/Results/fftw-mppa_k1c +++ /dev/null @@ -1,16 +0,0 @@ -o[0] = 2.918193e+01 -o[1] = -3.230611e+01 -o[2] = 1.271687e+01 -o[3] = -1.099040e+01 -o[4] = 5.728673e+00 -o[5] = -4.918940e+00 -o[6] = 1.880764e+00 -o[7] = -1.292782e+00 -o[8] = 1.104073e+02 -o[9] = -5.867858e+01 -o[10] = 2.768382e+01 -o[11] = -2.073843e+01 -o[12] = 1.229410e+01 -o[13] = -9.195029e+00 -o[14] = 4.307537e+00 -o[15] = -2.080713e+00 diff --git a/test/c/Results/fib-kvx b/test/c/Results/fib-kvx new file mode 100644 index 00000000..0e0fa4d1 --- /dev/null +++ b/test/c/Results/fib-kvx @@ -0,0 +1 @@ +fib(15) = 987 diff --git a/test/c/Results/fib-mppa_k1c b/test/c/Results/fib-mppa_k1c deleted file mode 100644 index 0e0fa4d1..00000000 --- a/test/c/Results/fib-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -fib(15) = 987 diff --git a/test/c/Results/integr-kvx b/test/c/Results/integr-kvx new file mode 100644 index 00000000..c61fdcc2 --- /dev/null +++ b/test/c/Results/integr-kvx @@ -0,0 +1 @@ +integr(square, 0.0, 1.0, 100000) = 0.333328 diff --git a/test/c/Results/integr-mppa_k1c b/test/c/Results/integr-mppa_k1c deleted file mode 100644 index c61fdcc2..00000000 --- a/test/c/Results/integr-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -integr(square, 0.0, 1.0, 100000) = 0.333328 diff --git a/test/c/Results/knucleotide-kvx b/test/c/Results/knucleotide-kvx new file mode 100644 index 00000000..e69de29b diff --git a/test/c/Results/knucleotide-mppa_k1c b/test/c/Results/knucleotide-mppa_k1c deleted file mode 100644 index e69de29b..00000000 diff --git a/test/c/Results/lists-kvx b/test/c/Results/lists-kvx new file mode 100644 index 00000000..2c94e483 --- /dev/null +++ b/test/c/Results/lists-kvx @@ -0,0 +1,2 @@ +OK +OK diff --git a/test/c/Results/lists-mppa_k1c b/test/c/Results/lists-mppa_k1c deleted file mode 100644 index 2c94e483..00000000 --- a/test/c/Results/lists-mppa_k1c +++ /dev/null @@ -1,2 +0,0 @@ -OK -OK diff --git a/test/c/Results/mandelbrot-kvx b/test/c/Results/mandelbrot-kvx new file mode 100644 index 00000000..55c5683a Binary files /dev/null and b/test/c/Results/mandelbrot-kvx differ diff --git a/test/c/Results/mandelbrot-mppa_k1c b/test/c/Results/mandelbrot-mppa_k1c deleted file mode 100644 index 55c5683a..00000000 Binary files a/test/c/Results/mandelbrot-mppa_k1c and /dev/null differ diff --git a/test/c/Results/nbody-kvx b/test/c/Results/nbody-kvx new file mode 100644 index 00000000..99ad4fd1 --- /dev/null +++ b/test/c/Results/nbody-kvx @@ -0,0 +1,2 @@ +-0.169075164 +-0.169050762 diff --git a/test/c/Results/nbody-mppa_k1c b/test/c/Results/nbody-mppa_k1c deleted file mode 100644 index 99ad4fd1..00000000 --- a/test/c/Results/nbody-mppa_k1c +++ /dev/null @@ -1,2 +0,0 @@ --0.169075164 --0.169050762 diff --git a/test/c/Results/nsieve-kvx b/test/c/Results/nsieve-kvx new file mode 100644 index 00000000..95fea812 --- /dev/null +++ b/test/c/Results/nsieve-kvx @@ -0,0 +1,3 @@ +Primes up to 12800 1526 +Primes up to 6400 834 +Primes up to 3200 452 diff --git a/test/c/Results/nsieve-mppa_k1c b/test/c/Results/nsieve-mppa_k1c deleted file mode 100644 index 95fea812..00000000 --- a/test/c/Results/nsieve-mppa_k1c +++ /dev/null @@ -1,3 +0,0 @@ -Primes up to 12800 1526 -Primes up to 6400 834 -Primes up to 3200 452 diff --git a/test/c/Results/nsievebits-kvx b/test/c/Results/nsievebits-kvx new file mode 100644 index 00000000..2131804c --- /dev/null +++ b/test/c/Results/nsievebits-kvx @@ -0,0 +1,3 @@ +Primes up to 40000 4203 +Primes up to 20000 2262 +Primes up to 10000 1229 diff --git a/test/c/Results/nsievebits-mppa_k1c b/test/c/Results/nsievebits-mppa_k1c deleted file mode 100644 index 2131804c..00000000 --- a/test/c/Results/nsievebits-mppa_k1c +++ /dev/null @@ -1,3 +0,0 @@ -Primes up to 40000 4203 -Primes up to 20000 2262 -Primes up to 10000 1229 diff --git a/test/c/Results/perlin-kvx b/test/c/Results/perlin-kvx new file mode 100644 index 00000000..8438b53c --- /dev/null +++ b/test/c/Results/perlin-kvx @@ -0,0 +1 @@ +6.0000e+00 diff --git a/test/c/Results/perlin-mppa_k1c b/test/c/Results/perlin-mppa_k1c deleted file mode 100644 index 8438b53c..00000000 --- a/test/c/Results/perlin-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -6.0000e+00 diff --git a/test/c/Results/qsort-kvx b/test/c/Results/qsort-kvx new file mode 100644 index 00000000..d86bac9d --- /dev/null +++ b/test/c/Results/qsort-kvx @@ -0,0 +1 @@ +OK diff --git a/test/c/Results/qsort-mppa_k1c b/test/c/Results/qsort-mppa_k1c deleted file mode 100644 index d86bac9d..00000000 --- a/test/c/Results/qsort-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -OK diff --git a/test/c/Results/sha1-kvx b/test/c/Results/sha1-kvx new file mode 100644 index 00000000..730d5406 --- /dev/null +++ b/test/c/Results/sha1-kvx @@ -0,0 +1,2 @@ +Test `abc': passed +Test `abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq': passed diff --git a/test/c/Results/sha1-mppa_k1c b/test/c/Results/sha1-mppa_k1c deleted file mode 100644 index 730d5406..00000000 --- a/test/c/Results/sha1-mppa_k1c +++ /dev/null @@ -1,2 +0,0 @@ -Test `abc': passed -Test `abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq': passed diff --git a/test/c/Results/spectral-kvx b/test/c/Results/spectral-kvx new file mode 100644 index 00000000..b06cd560 --- /dev/null +++ b/test/c/Results/spectral-kvx @@ -0,0 +1 @@ +1.272359925 diff --git a/test/c/Results/spectral-mppa_k1c b/test/c/Results/spectral-mppa_k1c deleted file mode 100644 index b06cd560..00000000 --- a/test/c/Results/spectral-mppa_k1c +++ /dev/null @@ -1 +0,0 @@ -1.272359925 diff --git a/test/c/Results/vmach-kvx b/test/c/Results/vmach-kvx new file mode 100644 index 00000000..a95237a6 --- /dev/null +++ b/test/c/Results/vmach-kvx @@ -0,0 +1,2 @@ +fib(15) = 987 +tak(12, 9, 6) = 9 diff --git a/test/c/Results/vmach-mppa_k1c b/test/c/Results/vmach-mppa_k1c deleted file mode 100644 index a95237a6..00000000 --- a/test/c/Results/vmach-mppa_k1c +++ /dev/null @@ -1,2 +0,0 @@ -fib(15) = 987 -tak(12, 9, 6) = 9 diff --git a/test/kvx/.gitignore b/test/kvx/.gitignore new file mode 100644 index 00000000..b10c40c8 --- /dev/null +++ b/test/kvx/.gitignore @@ -0,0 +1,20 @@ +check +asm_coverage +instr/Makefile +mmult/Makefile +prng/Makefile +sort/Makefile +prng/.zero +sort/.zero +sort/insertion-ccomp-kvx +sort/insertion-gcc-kvx +sort/insertion-gcc-x86 +sort/main-ccomp-kvx +sort/main-gcc-kvx +sort/main-gcc-x86 +sort/merge-ccomp-kvx +sort/merge-gcc-kvx +sort/merge-gcc-x86 +sort/selection-ccomp-kvx +sort/selection-gcc-kvx +sort/selection-gcc-x86 diff --git a/test/kvx/builtins/clzll.c b/test/kvx/builtins/clzll.c new file mode 100644 index 00000000..13905cba --- /dev/null +++ b/test/kvx/builtins/clzll.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = __builtin_clzll(a); +} +END_TEST() diff --git a/test/kvx/builtins/stsud.c b/test/kvx/builtins/stsud.c new file mode 100644 index 00000000..fa42b001 --- /dev/null +++ b/test/kvx/builtins/stsud.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 2) +{ + c = __builtin_kvx_stsud(t[0], t[1]); +} +END_TEST() diff --git a/test/kvx/coverage.sh b/test/kvx/coverage.sh new file mode 100755 index 00000000..96f6bc04 --- /dev/null +++ b/test/kvx/coverage.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +printer=../../kvx/TargetPrinter.ml +asmdir=instr/asm/ +to_cover_raw=/tmp/to_cover_raw +to_cover=/tmp/to_cover +covered_raw=/tmp/covered_raw +covered=/tmp/covered + +# Stop at any error +set -e +# Pipes do not mask errors +set -o pipefail + +sed -n "s/^.*fprintf\s\+oc\s*\"\s*\([a-z][^[:space:]]*\)\s.*/\1/p" $printer > $to_cover_raw +python2.7 coverage_helper.py $to_cover_raw | sort -u > $to_cover + +rm -f $covered_raw +for asm in $(ls $asmdir/*.ccomp.s); do + grep -v ":" $asm | sed -n "s/^\s*\([a-z][a-z0-9.]*\).*/\1/p" | sort -u >> $covered_raw +done +python2.7 coverage_helper.py $covered_raw | sort -u > $covered + +vimdiff $to_cover $covered diff --git a/test/kvx/coverage_helper.py b/test/kvx/coverage_helper.py new file mode 100644 index 00000000..e5b1907c --- /dev/null +++ b/test/kvx/coverage_helper.py @@ -0,0 +1,45 @@ +import fileinput +import sys + +all_loads_stores = "lbs lbz lhz lo lq ld lhs lws sb sd sh so sq sw".split(" ") + +all_bconds = "wnez weqz wltz wgez wlez wgtz dnez deqz dltz dgez dlez dgtz".split(" ") + +all_iconds = "ne eq lt ge le gt ltu geu leu gtu".split(" ") + +all_fconds = "one ueq oeq une olt uge oge ult".split(" ") + +replaces_a = [(["cb.", "cmoved."], all_bconds), + (["compd.", "compw."], all_iconds), + (["fcompd.", "fcompw."], all_fconds), + (all_loads_stores, [".xs", ""])] + +replaces_dd = [(["addx", "sbfx"], ["2d", "4d", "8d", "16d"])] +replaces_dw = [(["addx", "sbfx"], ["2w", "4w", "8w", "16w"])] + +macros_binds = {"%a": replaces_a, "%dd": replaces_dd, "%dw": replaces_dw} + +def expand_macro(fullinst, macro, replaceTable): + inst = fullinst.replace(macro, "") + for (searchlist, mods) in replaceTable: + if inst in searchlist: + return [fullinst.replace(macro, mod) for mod in mods] + raise NameError + +insts = [] +for line in fileinput.input(): + fullinst = line[:-1] + try: + for macro in macros_binds: + if macro in fullinst: + insts.extend(expand_macro(fullinst, macro, macros_binds[macro])) + break + else: + insts.append(fullinst) + except NameError: + print >> sys.stderr, fullinst + " could not be found any match for macro " + macro + sys.exit(1) + +for inst in insts: + print inst +occurs = {} diff --git a/test/kvx/delout.sh b/test/kvx/delout.sh new file mode 100755 index 00000000..e9c72e1c --- /dev/null +++ b/test/kvx/delout.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +for folder in prng mmult sort instr interop; do + rm -f $folder/*.out + rm -f $folder/out/* +done diff --git a/test/kvx/do_test.sh b/test/kvx/do_test.sh new file mode 100644 index 00000000..5cc23dee --- /dev/null +++ b/test/kvx/do_test.sh @@ -0,0 +1,50 @@ +do_test () { +cat << EOF + +## +# PRNG tests +## +EOF +(cd prng && make $1 -j$2) + +cat << EOF + +## +# Matrix Multiplication tests +## +EOF +(cd mmult && make $1 -j$2) + +cat << EOF + +## +# List sort tests +## +EOF +(cd sort && make $1 -j$2) + +cat << EOF + +## +# Instruction unit tests +## +EOF +(cd instr && make $1 -j$2) + +cat << EOF + +## +# Interoperability with GCC +## +EOF +(cd interop && make $1 -j$2) + +cat << EOF + +## +# printf wrapper test +## +(cd lib && make $1 -j$2) +EOF + +} diff --git a/test/kvx/general/clzd.c b/test/kvx/general/clzd.c new file mode 100644 index 00000000..d3e8a8ec --- /dev/null +++ b/test/kvx/general/clzd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 1) +{ + c = __builtin_kvx_clzd(t[0]); +} +END_TEST() diff --git a/test/kvx/general/clzw.c b/test/kvx/general/clzw.c new file mode 100644 index 00000000..7b5478fd --- /dev/null +++ b/test/kvx/general/clzw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 1) +{ + c = __builtin_kvx_clzw(t[0]); +} +END_TEST() diff --git a/test/kvx/general/ctzd.c b/test/kvx/general/ctzd.c new file mode 100644 index 00000000..bba869e1 --- /dev/null +++ b/test/kvx/general/ctzd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 1) +{ + c = __builtin_kvx_ctzd(t[0]); +} +END_TEST() diff --git a/test/kvx/general/ctzw.c b/test/kvx/general/ctzw.c new file mode 100644 index 00000000..a7128b04 --- /dev/null +++ b/test/kvx/general/ctzw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 1) +{ + c = __builtin_kvx_ctzw(t[0]); +} +END_TEST() diff --git a/test/kvx/general/satd.c b/test/kvx/general/satd.c new file mode 100644 index 00000000..9d0d1cf9 --- /dev/null +++ b/test/kvx/general/satd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 2) +{ + c = __builtin_kvx_satd(t[0], t[1]); +} +END_TEST() diff --git a/test/kvx/general/sbmm8.c b/test/kvx/general/sbmm8.c new file mode 100644 index 00000000..91f13425 --- /dev/null +++ b/test/kvx/general/sbmm8.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 2) +{ + c = __builtin_kvx_sbmm8(t[0], t[1]); +} +END_TEST() diff --git a/test/kvx/general/sbmmt8.c b/test/kvx/general/sbmmt8.c new file mode 100644 index 00000000..7b120dfa --- /dev/null +++ b/test/kvx/general/sbmmt8.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST_N(unsigned long long, 2) +{ + c = __builtin_kvx_sbmmt8(t[0], t[1]); +} +END_TEST() diff --git a/test/kvx/hardcheck.sh b/test/kvx/hardcheck.sh new file mode 100755 index 00000000..b6538f0e --- /dev/null +++ b/test/kvx/hardcheck.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Tests the execution of the binaries produced by CompCert, in hardware + +source do_test.sh + +do_test hardcheck 1 diff --git a/test/kvx/hardtest.sh b/test/kvx/hardtest.sh new file mode 100755 index 00000000..6321bc7d --- /dev/null +++ b/test/kvx/hardtest.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Tests the validity of the tests, in hardware + +source do_test.sh + +do_test hardtest 1 diff --git a/test/kvx/instr/.gitignore b/test/kvx/instr/.gitignore new file mode 100644 index 00000000..ea1472ec --- /dev/null +++ b/test/kvx/instr/.gitignore @@ -0,0 +1 @@ +output/ diff --git a/test/kvx/instr/Makefile b/test/kvx/instr/Makefile new file mode 100644 index 00000000..e4f964b3 --- /dev/null +++ b/test/kvx/instr/Makefile @@ -0,0 +1,176 @@ +SHELL := /bin/bash + +KVXC ?= k1-cos-gcc +CC ?= gcc +CCOMP ?= ccomp +OPTIM ?= -O2 +CFLAGS ?= $(OPTIM) +CCOMPFLAGS ?= $(CFLAGS) +SIMU ?= k1-mppa +TIMEOUT ?= --signal=SIGTERM 120s +DIFF ?= python2.7 floatcmp.py -reltol .00001 +HARDRUN ?= k1-jtag-runner + +DIR=./ +SRCDIR=$(DIR) +OUTDIR=$(DIR)/out +BINDIR=$(DIR)/bin +ASMDIR=$(DIR)/asm +LIB=../lib/system.x86-gcc.a +K1LIB=../lib/system.gcc.a + +## +# Intended flow : .c -> .gcc.s -> .gcc.bin -> .gcc.out +# -> .ccomp.s -> .ccomp.bin -> .ccomp.out +## + +KVXCPATH=$(shell which $(KVXC)) +CCPATH=$(shell which $(CC)) +CCOMPPATH=$(shell which $(CCOMP)) +SIMUPATH=$(shell which $(SIMU)) + +TESTNAMES?=$(notdir $(subst .c,,$(wildcard $(DIR)/*.c))) +X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) +GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.simu.out,$(TESTNAMES))) +CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.simu.out,$(TESTNAMES))) +GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.hard.out,$(TESTNAMES))) +CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.hard.out,$(TESTNAMES))) + +BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES))) + +## +# Targets +## + +all: $(BIN) + +GREEN=\033[0;32m +RED=\033[0;31m +YELLOW=\033[0;33m +NC=\033[0m + +.PHONY: +test: simutest + +.PHONY: +check: simucheck + +.PHONY: +simutest: $(X86_GCC_OUT) $(GCC_SIMUOUT) + @echo "Comparing x86 gcc output to k1 gcc.." + for test in $(TESTNAMES); do\ + x86out=$(OUTDIR)/$$test.x86-gcc.out;\ + gccout=$(OUTDIR)/$$test.gcc.simu.out;\ + if grep "__KVX__" -q $$test.c; then\ + printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ + elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ + >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +simucheck: $(GCC_SIMUOUT) $(CCOMP_SIMUOUT) + @echo "Comparing k1 gcc output to ccomp.." + @for test in $(TESTNAMES); do\ + gccout=$(OUTDIR)/$$test.gcc.simu.out;\ + ccompout=$(OUTDIR)/$$test.ccomp.simu.out;\ + if $(DIFF) $$ccompout $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ + >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +hardtest: $(X86_GCC_OUT) $(GCC_HARDOUT) + @echo "Comparing x86 gcc output to k1 gcc.." + for test in $(TESTNAMES); do\ + x86out=$(OUTDIR)/$$test.x86-gcc.out;\ + gccout=$(OUTDIR)/$$test.gcc.hard.out;\ + if grep "__KVX__" -q $$test.c; then\ + printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ + elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ + >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +hardcheck: $(GCC_HARDOUT) $(CCOMP_HARDOUT) + @echo "Comparing k1 gcc output to ccomp.." + @for test in $(TESTNAMES); do\ + gccout=$(OUTDIR)/$$test.gcc.hard.out;\ + ccompout=$(OUTDIR)/$$test.ccomp.hard.out;\ + if $(DIFF) $$ccompout $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ + >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ + fi;\ + done + +## +# Rules +## + +.SECONDARY: +$(LIB): + (cd $(dir $(LIB)) && make) + +$(K1LIB): + (cd $(dir $(LIB)) && make) + +# Generating output + +## Version avec timeout +$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.simu.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.simu.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.hard.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.hard.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +# Assembly to binary + +$(BINDIR)/%.x86-gcc.bin: $(ASMDIR)/%.x86-gcc.s $(LIB) $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +$(BINDIR)/%.gcc.bin: $(ASMDIR)/%.gcc.s $(K1LIB) $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ + +$(BINDIR)/%.ccomp.bin: $(ASMDIR)/%.ccomp.s $(K1LIB) $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CCOMPFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ + +# Source to assembly + +$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CCOMPFLAGS) -S $< -o $@ diff --git a/test/kvx/instr/builtin32.c b/test/kvx/instr/builtin32.c new file mode 100644 index 00000000..9efb33cd --- /dev/null +++ b/test/kvx/instr/builtin32.c @@ -0,0 +1,12 @@ +#include "framework.h" + +BEGIN_TEST(int) + int *ptr = &c; +#ifdef __KVX__ + int d = c; + a = __builtin_kvx_alclrw(ptr); + c = d; + +#endif +END_TEST32() + diff --git a/test/kvx/instr/builtin64.c b/test/kvx/instr/builtin64.c new file mode 100644 index 00000000..252eb2c6 --- /dev/null +++ b/test/kvx/instr/builtin64.c @@ -0,0 +1,17 @@ +#include "framework.h" + +BEGIN_TEST(long long) + long long *ptr = &c; +#ifdef __KVX__ + long long d = c; + a = __builtin_kvx_alclrd(ptr); + c = d; + c += a; + + c += __builtin_clzll(a); + + /* Removed the AFADDD builtin who was incorrect in CompCert, see #157 */ + // a = __builtin_kvx_afaddd(ptr, a); + // a = __builtin_kvx_afaddd(ptr, a); +#endif +END_TEST64() diff --git a/test/kvx/instr/div32.c b/test/kvx/instr/div32.c new file mode 100644 index 00000000..83c3a0e3 --- /dev/null +++ b/test/kvx/instr/div32.c @@ -0,0 +1,5 @@ +#include "framework.h" + +BEGIN_TEST(int) + c = a/b; +END_TEST32() diff --git a/test/kvx/instr/divf32.c b/test/kvx/instr/divf32.c new file mode 100644 index 00000000..513a3293 --- /dev/null +++ b/test/kvx/instr/divf32.c @@ -0,0 +1,5 @@ +#include "framework.h" + +BEGIN_TEST(float) + c = a / b; +END_TESTF32() diff --git a/test/kvx/instr/divf64.c b/test/kvx/instr/divf64.c new file mode 100644 index 00000000..0dd23826 --- /dev/null +++ b/test/kvx/instr/divf64.c @@ -0,0 +1,5 @@ +#include "framework.h" + +BEGIN_TEST(double) + c = a / b; +END_TESTF64() diff --git a/test/kvx/instr/divu32.c b/test/kvx/instr/divu32.c new file mode 100644 index 00000000..1fe196c4 --- /dev/null +++ b/test/kvx/instr/divu32.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = a/b; +} +END_TEST32() diff --git a/test/kvx/instr/f32.c b/test/kvx/instr/f32.c new file mode 100644 index 00000000..7e304aeb --- /dev/null +++ b/test/kvx/instr/f32.c @@ -0,0 +1,8 @@ +#include "framework.h" + +BEGIN_TEST(float) + c = ((float)a + (float)b); + c += ((float)a * (float)b); + c += (-(float)a); + c += ((float)a - (float)b); +END_TESTF32() diff --git a/test/kvx/instr/f64.c b/test/kvx/instr/f64.c new file mode 100644 index 00000000..be8094c9 --- /dev/null +++ b/test/kvx/instr/f64.c @@ -0,0 +1,8 @@ +#include "framework.h" + +BEGIN_TEST(double) + c = ((double)a + (double)b); + c += ((double)a * (double)b); + c += (-(double)a); + c += ((double)a - (double)b); +END_TESTF64() diff --git a/test/kvx/instr/floatcmp.py b/test/kvx/instr/floatcmp.py new file mode 100755 index 00000000..49f1bc13 --- /dev/null +++ b/test/kvx/instr/floatcmp.py @@ -0,0 +1,93 @@ +#!/usr/bin/python2.7 + +import argparse as ap +import sys + +parser = ap.ArgumentParser() +parser.add_argument("file1", help="First file to compare") +parser.add_argument("file2", help="Second file to compare") +parser.add_argument("-reltol", help="Relative error") +parser.add_argument("-abstol", help="Absolute error") +parser.add_argument("-s", help="Silent output", action="store_true") +args = parser.parse_args() + +reltol = float(args.reltol) if args.reltol else None +abstol = float(args.abstol) if args.abstol else None +silent = args.s + +if silent: + sys.stdout = open("/dev/null", "w") + +import re +from math import fabs + +def floatcmp(f1, f2): + if abstol: + if fabs(f1 - f2) > abstol: + return False + if reltol: + if f2 != 0. and fabs((f1 - f2) / f2) > reltol: + return False + return True + +class Parsed(list): + def __eq__(self, other): + if len(self) != len(other): + return False + comps = zip(self, other) + for comp in comps: + if all(isinstance(compElt, str) for compElt in comp): + if comp[0] != comp[1]: + return False + elif all (isinstance(compElt, float) for compElt in comp): + if not floatcmp(comp[0], comp[1]): + return False + else: + return False + return True + + def __ne__(self, other): + return not self.__eq__(other) + +parseLine = re.compile(r"\s*(\S+)") +def readline(line): + words = parseLine.findall(line) + parsed = Parsed([]) + for word in words: + try: + parse = float(word) + parsed.append(parse) + except ValueError: + parsed.append(word) + return parsed + +def readfile(filename): + L = [] + try: + with open(filename) as f: + for line in f: + L.append(readline(line)) + except IOError: + print "Unable to read {}".format(filename) + sys.exit(2) + return L + +L1 = readfile(args.file1) +L2 = readfile(args.file2) + +if len(L1) != len(L2): + print "The files have different amount of lines" + print "\t{}: {} lines".format(args.file1, len(L1)) + print "\t{}: {} lines".format(args.file2, len(L2)) + sys.exit(1) + +cmpL = zip(L1, L2) +for i, cmpElt in enumerate(cmpL): + if cmpElt[0] != cmpElt[1]: + print "The files differ at line {}".format(i) + print "\t{}: {}".format(args.file1, cmpElt[0]) + print "\t{}: {}".format(args.file2, cmpElt[1]) + sys.exit(1) + +print "Comparison succeeded" +sys.exit(0) diff --git a/test/kvx/instr/framework.h b/test/kvx/instr/framework.h new file mode 100644 index 00000000..3bbfa271 --- /dev/null +++ b/test/kvx/instr/framework.h @@ -0,0 +1,66 @@ +#ifndef __FRAMEWORK_H__ +#define __FRAMEWORK_H__ + +#include +#include "../prng/prng.c" + +#define BEGIN_TEST_N(type, N)\ + int main(void){\ + type t[N], c, i, j, S;\ + srand(0);\ + S = 0;\ + for (i = 0 ; i < 100 ; i++){\ + c = randlong();\ + for (j = 0 ; j < N ; j++)\ + t[j] = randlong();\ + /* END BEGIN_TEST_N */ + +#define BEGIN_TEST(type)\ + int main(void){\ + type a, b, c, S;\ + int i;\ + srand(0);\ + S = 0;\ + for (i = 0 ; i < 100 ; i++){\ + c = randlong();\ + a = randlong();\ + b = randlong(); + /* END BEGIN_TEST */ + +/* In between BEGIN_TEST and END_TEST : definition of c */ + +#define END_TEST64()\ + printf("%llu\t%llu\t%llu\n", a, b, c);\ + S += c;\ + }\ + return S;\ + } + /* END END_TEST64 */ + +#define END_TEST32()\ + printf("%u\t%u\t%u\n", a, b, c);\ + S += c;\ + }\ + return S;\ + } + /* END END_TEST32 */ + +#define END_TESTF32()\ + printf("%e\t%e\t%e\n", a, b, c);\ + S += c;\ + }\ + return 0;\ + } + /* END END_TESTF32 */ + +#define END_TESTF64()\ + printf("%e\t%e\t%e\n", a, b, c);\ + S += c;\ + }\ + return 0;\ + } + /* END END_TESTF64 */ + +#endif + + diff --git a/test/kvx/instr/i32.c b/test/kvx/instr/i32.c new file mode 100644 index 00000000..e350931c --- /dev/null +++ b/test/kvx/instr/i32.c @@ -0,0 +1,149 @@ +#include "framework.h" + +int sum(int a, int b){ + return a+b; +} + +int make(int a){ + return a; +} + +int tailsum(int a, int b){ + return make(a+b); +} + +int fact(int a){ + int r = 1; + int i; + for (i = 1; i < a; i++) + r *= i; + return r; +} + +float int2float(int v){ + return v; +} + +BEGIN_TEST(int) + c = a+b; + c += a&b; + + /* testing if, cb version */ + if ((a & 0x1) == 1) + c += fact(1); + else + c += fact(2); + + if (a & 0x1 == 0) + c += fact(4); + else + c += fact(8); + + if (a & 0x1 == 0) + c += fact(4); + else + c += fact(8); + + b = !(a & 0x01); + if (!b) + c += fact(16); + else + c += fact(32); + + c += sum(make(a), make(b)); + c += (long long) a; + + if (0 > (a & 0x1) - 1) + c += fact(64); + else + c += fact(128); + + if (0 >= (a & 0x1)) + c += fact(256); + else + c += fact(512); + + if ((a & 0x1) > 0) + c += fact(1024); + else + c += fact(2048); + + if ((a & 0x1) - 1 >= 0) + c += fact(4096); + else + c += fact(8192); + + /* cmoved version */ + if ((a & 0x1) == 1) + c += 1; + else + c += 2; + + if (a & 0x1 == 0) + c += 4; + else + c += 8; + + if (a & 0x1 == 0) + c += 4; + else + c += 8; + + b = !(a & 0x01); + if (!b) + c += 16; + else + c += 32; + + if (0 > (a & 0x1) - 1) + c += 64; + else + c += 128; + + if (0 >= (a & 0x1)) + c += 256; + else + c += 512; + + if ((a & 0x1) > 0) + c += 1024; + else + c += 2048; + + if ((a & 0x1) - 1 >= 0) + c += 4096; + else + c += 8192; + + c += ((a & 0x1) == (b & 0x1)); + c += (a > b); + c += (a <= b); + c += (a < b); + c += (a + b) / 2; + c += (int) int2float(a) + (int) int2float(b) + (int) int2float(42.3); + c += (a << 4); // addx16w + c += (a << 3); // addx8w + c += (a << 2); // addx4w + c += (a << 1); // addx2w + + c += ~a & b; // andnw + + int j; + for (j = 0 ; j < 10 ; j++) + c += a; + int k; + for (k = 0 ; k < (b & 0x8) ; k++) + c += a; + + char s[] = "Tome and Cherry at the playa\n"; + c += s[(a & (sizeof(s)-1))]; + + unsigned char s2[] = "Tim is sorry at the playa\n"; + c += s2[a & (sizeof(s) - 1)]; + + c += a*b; + c += a-b; + c += a << (b & 0x8); + + c += sum(a, b); +END_TEST32() diff --git a/test/kvx/instr/i64.c b/test/kvx/instr/i64.c new file mode 100644 index 00000000..e869d93c --- /dev/null +++ b/test/kvx/instr/i64.c @@ -0,0 +1,169 @@ +#include "framework.h" + +long long sum(long long a, long long b){ + return a+b; +} + +long long diff(long long a, long long b){ + return a-b; +} + +long long mul(long long a, long long b){ + return a*b; +} + +long long make(long long a){ + return a; +} + +long long random_op(long long a, long long b){ + long long d = 3; + long long (*op)(long long, long long); + + if (a % d == 0) + op = sum; + else if (a % d == 1) + op = diff; + else + op = mul; + + return op(a, b); +} + +long fact(long a){ + long r = 1; + long i; + for (i = 1; i < a; i++) + r *= i; + return r; +} + +double long2double(long v){ + return v; +} + +BEGIN_TEST(long long) + c = a&b; + c += a*b; + c += -a; + c += a | b; + c += a-b; + c += a >> (b & 0x8LL); + c += a >> (b & 0x8ULL); + c += a % b; + c += (a << 4); // addx16d + c += (a << 3); // addx8d + c += (a << 2); // addx4d + c += (a << 1); // addx2d + + c += ~a & b; // andnd + + long long d = 3; + long long (*op)(long long, long long); + + if (a % d == 0) + op = sum; + else if (a % d == 1) + op = diff; + else + op = mul; + + c += op(make(a), make(b)); + c += random_op(a, b); + c += a/b; + c += a^b; + c += (unsigned int) a; + + /* Testing if, cb */ + if (0 != (a & 0x1LL)) + c += fact(1); + else + c += fact(2); + + if (0 > (a & 0x1LL)) + c += fact(4); + else + c += fact(8); + + if (0 >= (a & 0x1LL) - 1) + c += fact(16); + else + c += fact(32); + + if ((unsigned long long)(a & 0x1LL) >= 1) + c += fact(18); + else + c += fact(31); + + + if (a-41414141 > 0) + c += fact(13); + else + c += fact(31); + + if (a & 0x1LL > 0) + c += fact(64); + else + c += fact(128); + + if ((a & 0x1LL) - 1 >= 0) + c += fact(256); + else + c += fact(512); + + if (0 == (a & 0x1LL)) + c += fact(1024); + else + c += fact(2048); + + /* Testing if, cmoved */ + if (0 != (a & 0x1LL)) + c += 1; + else + c += 2; + + if (0 > (a & 0x1LL)) + c += 4; + else + c += 8; + + if (0 >= (a & 0x1LL) - 1) + c += 16; + else + c += 32; + + if (a-41414141 > 0) + c += 13; + else + c += 31; + + if (a & 0x1LL > 0) + c += 64; + else + c += 128; + + if ((a & 0x1LL) - 1 >= 0) + c += 256; + else + c += 512; + + if (0 == (a & 0x1LL)) + c += 1024; + else + c += 2048; + + c += ((a & 0x1LL) == (b & 0x1LL)); + c += (a >= b); + c += (a > b); + c += (a <= b); + c += (a < b); + c += (long) long2double(a) + (long) long2double(b) + (long) long2double(42.3); + + int j; + + for (j = 0 ; j < (b & 0x8LL) ; j++) + c += a; + + c += ((a & 0x1LL) == (b & 0x1LL)); + +END_TEST64() diff --git a/test/kvx/instr/individual/andw.c b/test/kvx/instr/individual/andw.c new file mode 100644 index 00000000..799dc7fb --- /dev/null +++ b/test/kvx/instr/individual/andw.c @@ -0,0 +1,5 @@ +#include "framework.h" + +BEGIN_TEST(int) + c = a&b; +END_TEST32() diff --git a/test/kvx/instr/individual/branch.c b/test/kvx/instr/individual/branch.c new file mode 100644 index 00000000..c9937e31 --- /dev/null +++ b/test/kvx/instr/individual/branch.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if ((a & 0x1) == 1) + c = 0; + else + c = 1; +} +END_TEST32() diff --git a/test/kvx/instr/individual/branchz.c b/test/kvx/instr/individual/branchz.c new file mode 100644 index 00000000..d3e021b5 --- /dev/null +++ b/test/kvx/instr/individual/branchz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if (a & 0x1 == 0) + c = 0; + else + c = 1; +} +END_TEST32() diff --git a/test/kvx/instr/individual/branchzu.c b/test/kvx/instr/individual/branchzu.c new file mode 100644 index 00000000..d0169174 --- /dev/null +++ b/test/kvx/instr/individual/branchzu.c @@ -0,0 +1,11 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + b = !(a & 0x01); + if (!b) + c = 0; + else + c = 1; +} +END_TEST32() diff --git a/test/kvx/instr/individual/call.c b/test/kvx/instr/individual/call.c new file mode 100644 index 00000000..ba2ec323 --- /dev/null +++ b/test/kvx/instr/individual/call.c @@ -0,0 +1,16 @@ +#include "framework.h" + +int sum(int a, int b){ + return a+b; +} + +int make(int a){ + return a; +} + +BEGIN_TEST(int) +{ + c = sum(make(a), make(b)); +} +END_TEST32() +/* RETURN VALUE: 60 */ diff --git a/test/kvx/instr/individual/cast_S32_S64.c b/test/kvx/instr/individual/cast_S32_S64.c new file mode 100644 index 00000000..09c97e00 --- /dev/null +++ b/test/kvx/instr/individual/cast_S32_S64.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = (long long) a; +} +END_TEST32() diff --git a/test/kvx/instr/individual/cast_S64_U32.c b/test/kvx/instr/individual/cast_S64_U32.c new file mode 100644 index 00000000..2d9dc723 --- /dev/null +++ b/test/kvx/instr/individual/cast_S64_U32.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = (unsigned int) a; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.deqz.c b/test/kvx/instr/individual/cb.deqz.c new file mode 100644 index 00000000..6da2ab07 --- /dev/null +++ b/test/kvx/instr/individual/cb.deqz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if (0 != (a & 0x1LL)) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.dgez.c b/test/kvx/instr/individual/cb.dgez.c new file mode 100644 index 00000000..7bef25ad --- /dev/null +++ b/test/kvx/instr/individual/cb.dgez.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if (0 > (a & 0x1LL)) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.dgtz.c b/test/kvx/instr/individual/cb.dgtz.c new file mode 100644 index 00000000..1a43fb1f --- /dev/null +++ b/test/kvx/instr/individual/cb.dgtz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if (0 >= (a & 0x1LL) - 1) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.dlez.c b/test/kvx/instr/individual/cb.dlez.c new file mode 100644 index 00000000..2fb97939 --- /dev/null +++ b/test/kvx/instr/individual/cb.dlez.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if (a & 0x1LL > 0) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.dltz.c b/test/kvx/instr/individual/cb.dltz.c new file mode 100644 index 00000000..a431d5d0 --- /dev/null +++ b/test/kvx/instr/individual/cb.dltz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if ((a & 0x1LL) - 1 >= 0) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.dnez.c b/test/kvx/instr/individual/cb.dnez.c new file mode 100644 index 00000000..44516cbe --- /dev/null +++ b/test/kvx/instr/individual/cb.dnez.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + if (0 == (a & 0x1LL)) + c = 1; + else + c = 0; +} +END_TEST64() diff --git a/test/kvx/instr/individual/cb.wgez.c b/test/kvx/instr/individual/cb.wgez.c new file mode 100644 index 00000000..5779ad92 --- /dev/null +++ b/test/kvx/instr/individual/cb.wgez.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if (0 > (a & 0x1) - 1) + c = 1; + else + c = 0; +} +END_TEST32() diff --git a/test/kvx/instr/individual/cb.wgtz.c b/test/kvx/instr/individual/cb.wgtz.c new file mode 100644 index 00000000..abb695bd --- /dev/null +++ b/test/kvx/instr/individual/cb.wgtz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if (0 >= (a & 0x1)) + c = 1; + else + c = 0; +} +END_TEST32() diff --git a/test/kvx/instr/individual/cb.wlez.c b/test/kvx/instr/individual/cb.wlez.c new file mode 100644 index 00000000..3a2e08c1 --- /dev/null +++ b/test/kvx/instr/individual/cb.wlez.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if ((a & 0x1) > 0) + c = 1; + else + c = 0; +} +END_TEST32() diff --git a/test/kvx/instr/individual/cb.wltz.c b/test/kvx/instr/individual/cb.wltz.c new file mode 100644 index 00000000..5d52c72a --- /dev/null +++ b/test/kvx/instr/individual/cb.wltz.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + if ((a & 0x1) - 1 >= 0) + c = 1; + else + c = 0; +} +END_TEST32() diff --git a/test/kvx/instr/individual/compd.eq.c b/test/kvx/instr/individual/compd.eq.c new file mode 100644 index 00000000..4fe8de2a --- /dev/null +++ b/test/kvx/instr/individual/compd.eq.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = ((a & 0x1LL) == (b & 0x1LL)); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.geu.c b/test/kvx/instr/individual/compd.geu.c new file mode 100644 index 00000000..fccf0804 --- /dev/null +++ b/test/kvx/instr/individual/compd.geu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = (a >= b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.gt.c b/test/kvx/instr/individual/compd.gt.c new file mode 100644 index 00000000..b9901436 --- /dev/null +++ b/test/kvx/instr/individual/compd.gt.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = (a > b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.le.c b/test/kvx/instr/individual/compd.le.c new file mode 100644 index 00000000..6fa0f103 --- /dev/null +++ b/test/kvx/instr/individual/compd.le.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = (a <= b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.leu.c b/test/kvx/instr/individual/compd.leu.c new file mode 100644 index 00000000..1ad18281 --- /dev/null +++ b/test/kvx/instr/individual/compd.leu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = (a <= b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.lt.c b/test/kvx/instr/individual/compd.lt.c new file mode 100644 index 00000000..c42cda56 --- /dev/null +++ b/test/kvx/instr/individual/compd.lt.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = (a < b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.ltu.c b/test/kvx/instr/individual/compd.ltu.c new file mode 100644 index 00000000..b03d4d53 --- /dev/null +++ b/test/kvx/instr/individual/compd.ltu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = (a < b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compd.ne.c b/test/kvx/instr/individual/compd.ne.c new file mode 100644 index 00000000..fd9d0b28 --- /dev/null +++ b/test/kvx/instr/individual/compd.ne.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = ((a & 0x1ULL) != (b & 0x1ULL)); +} +END_TEST64() diff --git a/test/kvx/instr/individual/compw.eq.c b/test/kvx/instr/individual/compw.eq.c new file mode 100644 index 00000000..cd93f365 --- /dev/null +++ b/test/kvx/instr/individual/compw.eq.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = ((a & 0x1) == (b & 0x1)); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.geu.c b/test/kvx/instr/individual/compw.geu.c new file mode 100644 index 00000000..b8fb1adf --- /dev/null +++ b/test/kvx/instr/individual/compw.geu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = (a >= b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.gt.c b/test/kvx/instr/individual/compw.gt.c new file mode 100644 index 00000000..5f6bc907 --- /dev/null +++ b/test/kvx/instr/individual/compw.gt.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = (a > b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.gtu.c b/test/kvx/instr/individual/compw.gtu.c new file mode 100644 index 00000000..947f6a14 --- /dev/null +++ b/test/kvx/instr/individual/compw.gtu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = (a > b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.le.c b/test/kvx/instr/individual/compw.le.c new file mode 100644 index 00000000..35ec6b7d --- /dev/null +++ b/test/kvx/instr/individual/compw.le.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = (a <= b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.leu.c b/test/kvx/instr/individual/compw.leu.c new file mode 100644 index 00000000..74ebfb42 --- /dev/null +++ b/test/kvx/instr/individual/compw.leu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = (a <= b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.lt.c b/test/kvx/instr/individual/compw.lt.c new file mode 100644 index 00000000..cb1f30bd --- /dev/null +++ b/test/kvx/instr/individual/compw.lt.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = (a < b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.ltu.c b/test/kvx/instr/individual/compw.ltu.c new file mode 100644 index 00000000..6a0c5af1 --- /dev/null +++ b/test/kvx/instr/individual/compw.ltu.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = (a < b); +} +END_TEST32() diff --git a/test/kvx/instr/individual/compw.ne.c b/test/kvx/instr/individual/compw.ne.c new file mode 100644 index 00000000..7035e2c7 --- /dev/null +++ b/test/kvx/instr/individual/compw.ne.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = ((a & 0x1U) != (b & 0x1U)); +} +END_TEST32() diff --git a/test/kvx/instr/individual/div2.c b/test/kvx/instr/individual/div2.c new file mode 100644 index 00000000..b5dfe63a --- /dev/null +++ b/test/kvx/instr/individual/div2.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = (a + b) / 2; +} +END_TEST32() diff --git a/test/kvx/instr/individual/doubleconv.c b/test/kvx/instr/individual/doubleconv.c new file mode 100644 index 00000000..55b1ddab --- /dev/null +++ b/test/kvx/instr/individual/doubleconv.c @@ -0,0 +1,9 @@ +#include "framework.h" + +double long2double(long v){ + return v; +} + +BEGIN_TEST(long) + c = (long) long2double(a) + (long) long2double(b) + (long) long2double(42.3); +END_TEST64() diff --git a/test/kvx/instr/individual/floatconv.c b/test/kvx/instr/individual/floatconv.c new file mode 100644 index 00000000..32b798e1 --- /dev/null +++ b/test/kvx/instr/individual/floatconv.c @@ -0,0 +1,9 @@ +#include "framework.h" + +float int2float(int v){ + return v; +} + +BEGIN_TEST(int) + c = (int) int2float(a) + (int) int2float(b) + (int) int2float(42.3); +END_TEST32() diff --git a/test/kvx/instr/individual/fmuld.c b/test/kvx/instr/individual/fmuld.c new file mode 100644 index 00000000..03c990fa --- /dev/null +++ b/test/kvx/instr/individual/fmuld.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(double) +{ + c = ((double)a * (double)b); +} +END_TESTF64() diff --git a/test/kvx/instr/individual/fmulw.c b/test/kvx/instr/individual/fmulw.c new file mode 100644 index 00000000..f85eba64 --- /dev/null +++ b/test/kvx/instr/individual/fmulw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(float) +{ + c = ((float)a * (float)b); +} +END_TESTF32() diff --git a/test/kvx/instr/individual/fnegd.c b/test/kvx/instr/individual/fnegd.c new file mode 100644 index 00000000..974eb7e8 --- /dev/null +++ b/test/kvx/instr/individual/fnegd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(double) +{ + c = (-(double)a); +} +END_TESTF64() diff --git a/test/kvx/instr/individual/fnegw.c b/test/kvx/instr/individual/fnegw.c new file mode 100644 index 00000000..fbeaab8e --- /dev/null +++ b/test/kvx/instr/individual/fnegw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(float) +{ + c = (-(float)a); +} +END_TESTF64() diff --git a/test/kvx/instr/individual/for.c b/test/kvx/instr/individual/for.c new file mode 100644 index 00000000..373ab6bd --- /dev/null +++ b/test/kvx/instr/individual/for.c @@ -0,0 +1,9 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + int j; + for (j = 0 ; j < 10 ; j++) + c += a; +} +END_TEST32() diff --git a/test/kvx/instr/individual/forvar.c b/test/kvx/instr/individual/forvar.c new file mode 100644 index 00000000..9e43c198 --- /dev/null +++ b/test/kvx/instr/individual/forvar.c @@ -0,0 +1,9 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + int k; + for (k = 0 ; k < (b & 0x8) ; k++) + c += a; +} +END_TEST32() diff --git a/test/kvx/instr/individual/forvarl.c b/test/kvx/instr/individual/forvarl.c new file mode 100644 index 00000000..c1fe90fd --- /dev/null +++ b/test/kvx/instr/individual/forvarl.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(long long int) +{ + int j; + + for (j = 0 ; j < (b & 0x8LL) ; j++) + c += a; +} +END_TEST64() diff --git a/test/kvx/instr/individual/fsbfd.c b/test/kvx/instr/individual/fsbfd.c new file mode 100644 index 00000000..f80c1efe --- /dev/null +++ b/test/kvx/instr/individual/fsbfd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(double) +{ + c = ((double)a - (double)b); +} +END_TESTF64() diff --git a/test/kvx/instr/individual/fsbfw.c b/test/kvx/instr/individual/fsbfw.c new file mode 100644 index 00000000..067c40b5 --- /dev/null +++ b/test/kvx/instr/individual/fsbfw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(float) +{ + c = ((float)a - (float)b); +} +END_TESTF64() diff --git a/test/kvx/instr/individual/indirect_call.c b/test/kvx/instr/individual/indirect_call.c new file mode 100644 index 00000000..f376c00a --- /dev/null +++ b/test/kvx/instr/individual/indirect_call.c @@ -0,0 +1,33 @@ +#include "framework.h" + +long long sum(long long a, long long b){ + return a+b; +} + +long long diff(long long a, long long b){ + return a-b; +} + +long long mul(long long a, long long b){ + return a*b; +} + +long long make(long long a){ + return a; +} + +BEGIN_TEST(long long) +{ + long long d = 3; + long long (*op)(long long, long long); + + if (a % d == 0) + op = sum; + else if (a % d == 1) + op = diff; + else + op = mul; + + c += op(make(a), make(b)); +} +END_TEST64() diff --git a/test/kvx/instr/individual/indirect_tailcall.c b/test/kvx/instr/individual/indirect_tailcall.c new file mode 100644 index 00000000..e6c16ea1 --- /dev/null +++ b/test/kvx/instr/individual/indirect_tailcall.c @@ -0,0 +1,33 @@ +#include "framework.h" + +long long sum(long long a, long long b){ + return a+b; +} + +long long diff(long long a, long long b){ + return a-b; +} + +long long mul(long long a, long long b){ + return a*b; +} + +long long random_op(long long a, long long b){ + long long d = 3; + long long (*op)(long long, long long); + + if (a % d == 0) + op = sum; + else if (a % d == 1) + op = diff; + else + op = mul; + + return op(a, b); +} + +BEGIN_TEST(long long) +{ + c += random_op(a, b); +} +END_TEST64() diff --git a/test/kvx/instr/individual/lbs.c b/test/kvx/instr/individual/lbs.c new file mode 100644 index 00000000..22a50632 --- /dev/null +++ b/test/kvx/instr/individual/lbs.c @@ -0,0 +1,9 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + char s[] = "Tome and Cherry at the playa\n"; + + c = s[(a & (sizeof(s)-1))]; +} +END_TEST32() diff --git a/test/kvx/instr/individual/lbz.c b/test/kvx/instr/individual/lbz.c new file mode 100644 index 00000000..04ba098d --- /dev/null +++ b/test/kvx/instr/individual/lbz.c @@ -0,0 +1,9 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + unsigned char s[] = "Tim is sorry at the playa\n"; + + c = s[a & (sizeof(s) - 1)]; +} +END_TEST32() diff --git a/test/kvx/instr/individual/muld.c b/test/kvx/instr/individual/muld.c new file mode 100644 index 00000000..f7e23850 --- /dev/null +++ b/test/kvx/instr/individual/muld.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = a*b; +} +END_TEST64() diff --git a/test/kvx/instr/individual/mulw.c b/test/kvx/instr/individual/mulw.c new file mode 100644 index 00000000..a91d966e --- /dev/null +++ b/test/kvx/instr/individual/mulw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = a * b; +} +END_TEST32() diff --git a/test/kvx/instr/individual/negd.c b/test/kvx/instr/individual/negd.c new file mode 100644 index 00000000..837b9828 --- /dev/null +++ b/test/kvx/instr/individual/negd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = -a; +} +END_TEST64() diff --git a/test/kvx/instr/individual/ord.c b/test/kvx/instr/individual/ord.c new file mode 100644 index 00000000..cae1ae8b --- /dev/null +++ b/test/kvx/instr/individual/ord.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = a | b; +} +END_TEST64() diff --git a/test/kvx/instr/individual/sbfd.c b/test/kvx/instr/individual/sbfd.c new file mode 100644 index 00000000..77c28c77 --- /dev/null +++ b/test/kvx/instr/individual/sbfd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = a-b; +} +END_TEST64() diff --git a/test/kvx/instr/individual/sbfw.c b/test/kvx/instr/individual/sbfw.c new file mode 100644 index 00000000..e38a1fff --- /dev/null +++ b/test/kvx/instr/individual/sbfw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = a-b; +} +END_TEST32() diff --git a/test/kvx/instr/individual/simple.c b/test/kvx/instr/individual/simple.c new file mode 100644 index 00000000..944f09c9 --- /dev/null +++ b/test/kvx/instr/individual/simple.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = a+b; +} +END_TEST32() diff --git a/test/kvx/instr/individual/sllw.c b/test/kvx/instr/individual/sllw.c new file mode 100644 index 00000000..6dd41a6c --- /dev/null +++ b/test/kvx/instr/individual/sllw.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(int) +{ + c = a << (b & 0x8); +} +END_TEST32() diff --git a/test/kvx/instr/individual/srad.c b/test/kvx/instr/individual/srad.c new file mode 100644 index 00000000..00be9d0c --- /dev/null +++ b/test/kvx/instr/individual/srad.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = a >> (b & 0x8LL); +} +END_TEST64() diff --git a/test/kvx/instr/individual/srld.c b/test/kvx/instr/individual/srld.c new file mode 100644 index 00000000..14970efd --- /dev/null +++ b/test/kvx/instr/individual/srld.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = a >> (b & 0x8ULL); +} +END_TEST64() diff --git a/test/kvx/instr/individual/tailcall.c b/test/kvx/instr/individual/tailcall.c new file mode 100644 index 00000000..6c659a01 --- /dev/null +++ b/test/kvx/instr/individual/tailcall.c @@ -0,0 +1,16 @@ +#include "framework.h" + +int make(int a){ + return a; +} + +int sum(int a, int b){ + return make(a+b); +} + +BEGIN_TEST(int) +{ + c = sum(a, b); +} +END_TEST32() +/* RETURN VALUE: 60 */ diff --git a/test/kvx/instr/individual/udivd.c b/test/kvx/instr/individual/udivd.c new file mode 100644 index 00000000..cfb31881 --- /dev/null +++ b/test/kvx/instr/individual/udivd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = a/b; +} +END_TEST64() diff --git a/test/kvx/instr/individual/umodd.c b/test/kvx/instr/individual/umodd.c new file mode 100644 index 00000000..a7f25f1c --- /dev/null +++ b/test/kvx/instr/individual/umodd.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = a%b; +} +END_TEST64() diff --git a/test/kvx/instr/individual/xord.c b/test/kvx/instr/individual/xord.c new file mode 100644 index 00000000..b6a90cb0 --- /dev/null +++ b/test/kvx/instr/individual/xord.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(long long) +{ + c = a^b; +} +END_TEST64() diff --git a/test/kvx/instr/modi32.c b/test/kvx/instr/modi32.c new file mode 100644 index 00000000..958ae920 --- /dev/null +++ b/test/kvx/instr/modi32.c @@ -0,0 +1,5 @@ +#include "framework.h" + +BEGIN_TEST(int) + c = a%b; +END_TEST32() diff --git a/test/kvx/instr/modui32.c b/test/kvx/instr/modui32.c new file mode 100644 index 00000000..a39034a8 --- /dev/null +++ b/test/kvx/instr/modui32.c @@ -0,0 +1,7 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = a%b; +} +END_TEST32() diff --git a/test/kvx/instr/ui32.c b/test/kvx/instr/ui32.c new file mode 100644 index 00000000..f56a9b95 --- /dev/null +++ b/test/kvx/instr/ui32.c @@ -0,0 +1,12 @@ +#include "framework.h" + +BEGIN_TEST(unsigned int) +{ + c = (long long) a; + c += (a >= b); + c += (a > b); + c += (a <= b); + c += (a < b); + c += ((a & 0x1U) != (b & 0x1U)); +} +END_TEST32() diff --git a/test/kvx/instr/ui64.c b/test/kvx/instr/ui64.c new file mode 100644 index 00000000..908dec3c --- /dev/null +++ b/test/kvx/instr/ui64.c @@ -0,0 +1,10 @@ +#include "framework.h" + +BEGIN_TEST(unsigned long long) +{ + c = (a > b); + c += (a <= b); + c += (a < b); + c += ((a & 0x1ULL) != (b & 0x1ULL)); +} +END_TEST64() diff --git a/test/kvx/interop/.gitignore b/test/kvx/interop/.gitignore new file mode 100644 index 00000000..ea1472ec --- /dev/null +++ b/test/kvx/interop/.gitignore @@ -0,0 +1 @@ +output/ diff --git a/test/kvx/interop/Makefile b/test/kvx/interop/Makefile new file mode 100644 index 00000000..a0d4d7da --- /dev/null +++ b/test/kvx/interop/Makefile @@ -0,0 +1,365 @@ +SHELL := /bin/bash + +KVXC ?= k1-cos-gcc +CC ?= gcc +CCOMP ?= ccomp +CFLAGS ?= -O2 -Wno-varargs +SIMU ?= k1-mppa +TIMEOUT ?= --signal=SIGTERM 120s +HARDRUN ?= k1-jtag-runner + +DIR=./ +SRCDIR=$(DIR) +OUTDIR=$(DIR)/out +BINDIR=$(DIR)/bin +ASMDIR=$(DIR)/asm +OBJDIR=$(DIR)/obj +COMMON=common +VAARG_COMMON=vaarg_common + +## +# Intended flow : .c -> .gcc.s -> .gcc.o -> .gcc.bin -> .gcc.out +# -> .ccomp.s -> .ccomp.o -> .ccomp.bin -> .ccomp.out +# -> .x86-gcc.s -> .x86-gcc.o -> .x86-gcc.bin -> .x86-gcc.out +# +# The .o -> .bin part uses $(COMMON).gcc.o or $(COMMON).x86-gcc.o depending on the architecture +# There is also a $(VAARG_COMMON) that is the same than $(COMMON) but with va_arg +## + +KVXCPATH=$(shell which $(KVXC)) +CCPATH=$(shell which $(CC)) +CCOMPPATH=$(shell which $(CCOMP)) +SIMUPATH=$(shell which $(SIMU)) + +TESTNAMES ?= $(filter-out $(VAARG_COMMON),$(filter-out $(COMMON),$(notdir $(subst .c,,$(wildcard $(DIR)/*.c))))) + +X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) +GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.simu.out,$(TESTNAMES))) +GCC_REV_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.simu.out,$(TESTNAMES))) +CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.simu.out,$(TESTNAMES))) + +GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.hard.out,$(TESTNAMES))) +GCC_REV_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.hard.out,$(TESTNAMES))) +CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.hard.out,$(TESTNAMES))) + +VAARG_X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.vaarg.out,$(TESTNAMES))) +VAARG_GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.vaarg.simu.out,$(TESTNAMES))) +VAARG_GCC_REV_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.vaarg.simu.out,$(TESTNAMES))) +VAARG_CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.vaarg.simu.out,$(TESTNAMES))) + +VAARG_GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.vaarg.hard.out,$(TESTNAMES))) +VAARG_GCC_REV_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.vaarg.hard.out,$(TESTNAMES))) +VAARG_CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.vaarg.hard.out,$(TESTNAMES))) + +BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.rev.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.vaarg.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.vaarg.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .ccomp.vaarg.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.rev.vaarg.bin,$(TESTNAMES))) + +## +# Targets +## + +all: $(BIN) + +GREEN=\033[0;32m +RED=\033[0;31m +NC=\033[0m + +.PHONY: +test: simutest + +.PHONY: +simutest: $(X86_GCC_OUT) $(GCC_SIMUOUT) $(VAARG_X86_GCC_OUT) $(VAARG_GCC_SIMUOUT) + @echo "Comparing x86 gcc output to k1 gcc.." + @for test in $(TESTNAMES); do\ + x86out=$(OUTDIR)/$$test.x86-gcc.out;\ + gccout=$(OUTDIR)/$$test.gcc.simu.out;\ + vaarg_x86out=$(OUTDIR)/$$test.x86-gcc.vaarg.out;\ + vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.simu.out;\ + if ! diff $$x86out $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_x86out $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_x86out and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_x86out and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +check: simucheck + +.PHONY: +simucheck: $(GCC_SIMUOUT) $(CCOMP_SIMUOUT) $(GCC_REV_SIMUOUT) $(VAARG_GCC_SIMUOUT) $(VAARG_CCOMP_SIMUOUT) $(VAARG_GCC_REV_SIMUOUT) + @echo "Comparing k1 gcc output to ccomp.." + @for test in $(TESTNAMES); do\ + gccout=$(OUTDIR)/$$test.gcc.simu.out;\ + ccompout=$(OUTDIR)/$$test.ccomp.simu.out;\ + gccrevout=$(OUTDIR)/$$test.gcc.rev.simu.out;\ + vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.simu.out;\ + vaarg_ccompout=$(OUTDIR)/$$test.ccomp.vaarg.simu.out;\ + vaarg_gccrevout=$(OUTDIR)/$$test.gcc.rev.vaarg.simu.out;\ + if ! diff $$ccompout $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$gccrevout $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$gccrevout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$gccrevout and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_ccompout $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_ccompout and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_ccompout and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_gccrevout $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_gccrevout and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_gccrevout and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +hardtest: $(X86_GCC_OUT) $(GCC_HARDOUT) $(VAARG_X86_GCC_OUT) $(VAARG_GCC_HARDOUT) + @echo "Comparing x86 gcc output to k1 gcc.." + @for test in $(TESTNAMES); do\ + x86out=$(OUTDIR)/$$test.x86-gcc.out;\ + gccout=$(OUTDIR)/$$test.gcc.hard.out;\ + vaarg_x86out=$(OUTDIR)/$$test.x86-gcc.vaarg.out;\ + vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.hard.out;\ + if ! diff $$x86out $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_x86out $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_x86out and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_x86out and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + done + +.PHONY: +hardcheck: $(GCC_HARDOUT) $(CCOMP_HARDOUT) $(GCC_REV_HARDOUT) $(VAARG_GCC_HARDOUT) $(VAARG_CCOMP_HARDOUT) $(VAARG_GCC_REV_HARDOUT) + @echo "Comparing k1 gcc output to ccomp.." + @for test in $(TESTNAMES); do\ + gccout=$(OUTDIR)/$$test.gcc.hard.out;\ + ccompout=$(OUTDIR)/$$test.ccomp.hard.out;\ + gccrevout=$(OUTDIR)/$$test.gcc.rev.hard.out;\ + vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.hard.out;\ + vaarg_ccompout=$(OUTDIR)/$$test.ccomp.vaarg.hard.out;\ + vaarg_gccrevout=$(OUTDIR)/$$test.gcc.rev.vaarg.hard.out;\ + if ! diff $$ccompout $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$gccrevout $$gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$gccrevout and $$gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$gccrevout and $$gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_ccompout $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_ccompout and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_ccompout and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + if ! diff $$vaarg_gccrevout $$vaarg_gccout > /dev/null; then\ + >&2 printf "$(RED)ERROR: $$vaarg_gccrevout and $$vaarg_gccout differ$(NC)\n";\ + else\ + printf "$(GREEN)GOOD: $$vaarg_gccrevout and $$vaarg_gccout concur$(NC)\n";\ + fi;\ + done + +## +# Rules +## + +.SECONDARY: + +## +# Generating output +## + +## Version sans les timeout +#$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin +# @mkdir -p $(@D) +# ./$< > $@; echo $$? >> $@ +# +#$(OUTDIR)/%.gcc.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) +# @mkdir -p $(@D) +# $(SIMU) -- $< > $@ ; echo $$? >> $@ +# +#$(OUTDIR)/%.ccomp.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) +# @mkdir -p $(@D) +# $(SIMU) -- $< > $@ ; echo $$? >> $@ + +## No vaarg + +$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.simu.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.rev.simu.out: $(BINDIR)/%.gcc.rev.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.simu.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.hard.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.rev.hard.out: $(BINDIR)/%.gcc.rev.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.hard.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +## With vaarg + +$(OUTDIR)/%.x86-gcc.vaarg.out: $(BINDIR)/%.x86-gcc.vaarg.bin + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.vaarg.simu.out: $(BINDIR)/%.gcc.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.rev.vaarg.simu.out: $(BINDIR)/%.gcc.rev.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.vaarg.simu.out: $(BINDIR)/%.ccomp.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.vaarg.hard.out: $(BINDIR)/%.gcc.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.rev.vaarg.hard.out: $(BINDIR)/%.gcc.rev.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.vaarg.hard.out: $(BINDIR)/%.ccomp.vaarg.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +## +# Object to binary +## + +## common + +$(BINDIR)/$(COMMON).x86-gcc.bin: $(OBJDIR)/$(COMMON).x86-gcc.o $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $< -o $@ + +$(BINDIR)/$(COMMON).gcc.bin: $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $< -o $@ + +$(BINDIR)/$(COMMON).ccomp.bin: $(OBJDIR)/$(COMMON).ccomp.o $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $< -o $@ + +## vaarg_common + +$(BINDIR)/$(VAARG_COMMON).x86-gcc.bin: $(OBJDIR)/$(VAARG_COMMON).x86-gcc.o $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $< -o $@ + +$(BINDIR)/$(VAARG_COMMON).gcc.bin: $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $< -o $@ + +$(BINDIR)/$(VAARG_COMMON).ccomp.bin: $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $< -o $@ + +## no vaarg + +$(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(COMMON).x86-gcc.o $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.gcc.rev.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).ccomp.o $(KVXCPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.ccomp.bin: $(OBJDIR)/%.ccomp.o $(OBJDIR)/$(COMMON).gcc.o $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +## with vaarg + +$(BINDIR)/%.x86-gcc.vaarg.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(VAARG_COMMON).x86-gcc.o $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.gcc.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.gcc.rev.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(KVXCPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +$(BINDIR)/%.ccomp.vaarg.bin: $(OBJDIR)/%.ccomp.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ + +## +# Assembly to object +## + +$(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) + @mkdir -p $(@D) + $(CC) -c $(CFLAGS) $< -o $@ + +$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) -c $(CFLAGS) $< -o $@ + +$(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) -c $(CFLAGS) $< -o $@ + + +## +# Source to assembly +## + +$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) -S $< -o $@ diff --git a/test/kvx/interop/common.c b/test/kvx/interop/common.c new file mode 100644 index 00000000..05b49187 --- /dev/null +++ b/test/kvx/interop/common.c @@ -0,0 +1,257 @@ +#define STACK int a[100];\ + a[42] = 42; + +#define ONEARG_OP(arg) (3*magic(arg)+2) + +#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ magic(arg2) << arg3 - arg4) + +#define MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,\ + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,\ + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29)\ + (a0 * a1 * a2 * magic(a3) * a4 * a5 * a6 * a7 * a8 * a9 *\ + a10 * a11 * a12 * a13 * a14 * a15 * a16 * a17 * a18 * a19 *\ + a20 * a21 * a22 * a23 * a24 * a25 * a26 * a27 * a28 * a29) + +int magic(long a){ + return a*42 + 26; +} + +void void_void(){ + STACK; +} + +long long ll_void(){ + STACK; + return 0xdeadbeefdeadbeefULL; +} + +int i_oneiarg(int arg){ + STACK; + return ONEARG_OP(arg); +} + +int i_multiiargs(int arg1, char arg2, char arg3, int arg4){ + STACK; + return MULTIARG_OP(arg1, arg2, arg3, arg4); +} + +int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, + char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, + char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29) +{ + STACK; + return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); +} + +int ll_onellarg(long long arg){ + STACK; + return ONEARG_OP(arg); +} + +long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4){ + STACK; + return MULTIARG_OP(arg1, arg2, arg3, arg4); +} + +long long ll_manyllargs(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, + char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, + char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) +{ + STACK; + return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); +} + +double stackhell(char a0, int a1, float a2, long long a3, double a4, char a5, long long a6, long long a7, float a8, long long a9, + double a10, long long a11, char a12, int a13, float a14, double a15, long long a16, long long a17, float a18, long long a19, + char a20, int a21, char a22, long long a23, float a24, char a25, long long a26, int a27, double a28, long long a29) +{ + long long b0 = a0; + long long b1 = a1 * b0; + long long b2 = a2 * b1; + float b3 = a3 * b2; + int b4 = a4 * b3; + double b5 = a5 * b4; + int b6 = a6 * b5; + float b7 = a7 * b6; + char b8 = a8 * b7; + double b9 = a9 * b8; + char b10 = a10 * b9; + float b11 = a11 * b10; + char b12 = a12 * b11; + int b13 = a13 * b12; + long long b14 = a14 * b13; + long long b15 = a15 * b14; + long long b16 = a16 * b15; + long long b17 = a17 * b16; + long long b18 = a18 * b17; + long long b19 = a19 * b18; + long long b20 = a20 * b19; + long long b21 = a21 * b20; + long long b22 = a22 * b21; + long long b23 = a23 * b22; + long long b24 = a24 * b23; + long long b25 = a25 * b24; + long long b26 = a26 * b25; + long long b27 = a27 * b26; + int b28 = a28 * b27; + double b29 = a29 * b28; + float b30 = b0 * b29; + double b31 = b1 * b30; + int b32 = b2 * b31; + char b33 = b3 * b32; + float b34 = b4 * b33; + char b35 = b5 * b34; + double b36 = b6 * b35; + float b37 = b7 * b36; + int b38 = b8 * b37; + double b39 = b9 * b38; + float b40 = b0 * b39; + int b41 = b1 * b40; + double b42 = b2 * b41; + float b43 = b3 * b42; + int b44 = b4 * b43; + double b45 = b5 * b44; + int b46 = b6 * b45; + double b47 = b7 * b46; + int b48 = b8 * b47; + long long b49 = b9 * b48; + long long b50 = b0 * b49; + long long b51 = b1 * b50; + long long b52 = b2 * b51; + long long b53 = b3 * b52; + long long b54 = b4 * b53; + long long b55 = b5 * b54; + long long b56 = b6 * b55; + long long b57 = b7 * b56; + int b58 = b8 * b57; + float b59 = b9 * b58; + int b60 = b0 * b59; + float b61 = b1 * b60; + float b62 = b2 * b61; + int b63 = b3 * b62; + double b64 = b4 * b63; + int b65 = b5 * b64; + int b66 = b6 * b65; + double b67 = b7 * b66; + double b68 = b8 * b67; + int b69 = b9 * b68; + char b70 = b0 * b69; + char b71 = b1 * b70; + double b72 = b2 * b71; + double b73 = b3 * b72; + char b74 = b4 * b73; + float b75 = b5 * b74; + float b76 = b6 * b75; + double b77 = b7 * b76; + char b78 = b8 * b77; + float b79 = b9 * b78; + float b80 = b0 * b79; + char b81 = b1 * b80; + char b82 = b2 * b81; + float b83 = b3 * b82; + char b84 = b4 * b83; + int b85 = b5 * b84; + int b86 = b6 * b85; + double b87 = b7 * b86; + float b88 = b8 * b87; + double b89 = b9 * b88; + int b90 = b0 * b89; + float b91 = b1 * b90; + double b92 = b2 * b91; + int b93 = b3 * b92; + int b94 = b4 * b93; + long long b95 = b5 * b94; + long long b96 = b6 * b95; + long long b97 = b7 * b96; + long long b98 = b8 * b97; + long long b99 = b9 * b98; + long long b100 = b0 * b99; + long long b101 = b1 * b100; + long long b102 = b2 * b101; + long long b103 = b3 * b102; + long long b104 = b4 * b103; + long long b105 = b5 * b104; + long long b106 = b6 * b105; + long long b107 = b7 * b106; + long long b108 = b8 * b107; + long long b109 = b9 * b108; + long long b110 = b0 * b109; + long long b111 = b1 * b110; + long long b112 = b2 * b111; + long long b113 = b3 * b112; + long long b114 = b4 * b113; + int b115 = b5 * b114; + int b116 = b6 * b115; + int b117 = b7 * b116; + float b118 = b8 * b117; + float b119 = b9 * b118; + int b120 = b0 * b119; + double b121 = b1 * b120; + float b122 = b2 * b121; + int b123 = b3 * b122; + double b124 = b4 * b123; + int b125 = b5 * b124; + char b126 = b6 * b125; + double b127 = b7 * b126; + char b128 = b8 * b127; + float b129 = b9 * b128; + char b130 = b0 * b129; + double b131 = b1 * b130; + char b132 = b2 * b131; + float b133 = b3 * b132; + char b134 = b4 * b133; + double b135 = b5 * b134; + char b136 = b6 * b135; + float b137 = b7 * b136; + char b138 = b8 * b137; + double b139 = b9 * b138; + char b140 = b0 * b139; + float b141 = b1 * b140; + char b142 = b2 * b141; + double b143 = b3 * b142; + char b144 = b4 * b143; + float b145 = b5 * b144; + char b146 = b6 * b145; + double b147 = b7 * b146; + int b148 = b8 * b147; + float b149 = b9 * b148; + int b150 = b0 * b149; + double b151 = b1 * b150; + int b152 = b2 * b151; + float b153 = b3 * b152; + int b154 = b4 * b153; + double b155 = b5 * b154; + int b156 = b6 * b155; + float b157 = b7 * b156; + int b158 = b8 * b157; + double b159 = b9 * b158; + int b160 = b0 * b159; + float b161 = b1 * b160; + int b162 = b2 * b161; + return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29) + * b0 * b1 * b2 * b3 * b4 * b5 * b6 * b7 * b8 * b9 + * b10 * b11 * b12 * b13 * b14 * b15 * b16 * b17 * b18 * b19 + * b20 * b21 * b22 * b23 * b24 * b25 * b26 * b27 * b28 * b29 + * b30 * b31 * b32 * b33 * b34 * b35 * b36 * b37 * b38 * b39 + * b40 * b41 * b42 * b43 * b44 * b45 * b46 * b47 * b48 * b49 + * b50 * b51 * b52 * b53 * b54 * b55 * b56 * b57 * b58 * b59 + * b60 * b61 * b62 * b63 * b64 * b65 * b66 * b67 * b68 * b69 + * b70 * b71 * b72 * b73 * b74 * b75 * b76 * b77 * b78 * b79 + * b80 * b81 * b82 * b83 * b84 * b85 * b86 * b87 * b88 * b89 + * b90 * b91 * b92 * b93 * b94 * b95 * b96 * b97 * b98 * b99 + * b100 * b101 * b102 * b103 * b104 * b105 * b106 * b107 * b108 * b109 + * b110 * b111 * b112 * b113 * b114 * b115 * b116 * b117 * b118 * b119 + * b120 * b121 * b122 * b123 * b124 * b125 * b126 * b127 * b128 * b129 + * b130 * b131 * b132 * b133 * b134 * b135 * b136 * b137 * b138 * b139 + * b140 * b141 * b142 * b143 * b144 * b145 * b146 * b147 * b148 * b149 + * b150 * b151 * b152 * b153 * b154 * b155 * b156 * b157 * b158 * b159 + * b160 * b161 * b162 + ; +} + diff --git a/test/kvx/interop/common.h b/test/kvx/interop/common.h new file mode 100644 index 00000000..055ce7ea --- /dev/null +++ b/test/kvx/interop/common.h @@ -0,0 +1,28 @@ +#ifndef __COMMON_H__ +#define __COMMON_H__ + +void void_void(void); + +long long ll_void(void); + +int i_oneiarg(int arg); + +int i_multiiargs(int arg1, char arg2, char arg3, int arg4); + +int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, + char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, + char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29); + +int ll_onellarg(long long arg); + +long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4); + +long long ll_manyllargs(char a0, long long a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, + char a10, long long a11, char a12, long long a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, + char a20, long long a21, char a22, long long a23, char a24, char a25, long long a26, long long a27, char a28, long long a29); + +double stackhell(char a0, long long a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, + char a10, long long a11, char a12, long long a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, + char a20, long long a21, char a22, long long a23, char a24, char a25, long long a26, long long a27, char a28, long long a29); + +#endif diff --git a/test/kvx/interop/framework.h b/test/kvx/interop/framework.h new file mode 100644 index 00000000..3bbfa271 --- /dev/null +++ b/test/kvx/interop/framework.h @@ -0,0 +1,66 @@ +#ifndef __FRAMEWORK_H__ +#define __FRAMEWORK_H__ + +#include +#include "../prng/prng.c" + +#define BEGIN_TEST_N(type, N)\ + int main(void){\ + type t[N], c, i, j, S;\ + srand(0);\ + S = 0;\ + for (i = 0 ; i < 100 ; i++){\ + c = randlong();\ + for (j = 0 ; j < N ; j++)\ + t[j] = randlong();\ + /* END BEGIN_TEST_N */ + +#define BEGIN_TEST(type)\ + int main(void){\ + type a, b, c, S;\ + int i;\ + srand(0);\ + S = 0;\ + for (i = 0 ; i < 100 ; i++){\ + c = randlong();\ + a = randlong();\ + b = randlong(); + /* END BEGIN_TEST */ + +/* In between BEGIN_TEST and END_TEST : definition of c */ + +#define END_TEST64()\ + printf("%llu\t%llu\t%llu\n", a, b, c);\ + S += c;\ + }\ + return S;\ + } + /* END END_TEST64 */ + +#define END_TEST32()\ + printf("%u\t%u\t%u\n", a, b, c);\ + S += c;\ + }\ + return S;\ + } + /* END END_TEST32 */ + +#define END_TESTF32()\ + printf("%e\t%e\t%e\n", a, b, c);\ + S += c;\ + }\ + return 0;\ + } + /* END END_TESTF32 */ + +#define END_TESTF64()\ + printf("%e\t%e\t%e\n", a, b, c);\ + S += c;\ + }\ + return 0;\ + } + /* END END_TESTF64 */ + +#endif + + diff --git a/test/kvx/interop/i32.c b/test/kvx/interop/i32.c new file mode 100644 index 00000000..6bc2705c --- /dev/null +++ b/test/kvx/interop/i32.c @@ -0,0 +1,13 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(int) + c = i_manyiargs(a, b, a-b, a+b, a*2, b*2, a*2-b, a+b*2, (a-b)*2, (a+b)*2, + -2*a, -2*b, a-b, a+b, a*3, b*3, a*3-b, a+b*3, (a-b)*3, (a+b)*3, + -3*a, -3*b, a-b, a+b, a*4, b*4, a*4-b, a+b*4, (a-b)*4, (a+b)*4); + c += i_multiiargs(a, b, a-b, a+b); + c += i_oneiarg(a); + void_void(); + c += a; +END_TEST32() + diff --git a/test/kvx/interop/i64.c b/test/kvx/interop/i64.c new file mode 100644 index 00000000..3e7240f7 --- /dev/null +++ b/test/kvx/interop/i64.c @@ -0,0 +1,14 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(long long) + c = ll_manyllargs(a, b, a-b, a+b, a*2, b*2, a*2-b, a+b*2, (a-b)*2, (a+b)*2, + -2*a, -2*b, a-b, a+b, a*3, b*3, a*3-b, a+b*3, (a-b)*3, (a+b)*3, + -3*a, -3*b, a-b, a+b, a*4, b*4, a*4-b, a+b*4, (a-b)*4, (a+b)*4); + c += ll_multillargs(a, b, a-b, a+b); + c += ll_onellarg(a); + c = ll_void(); + c += a; + void_void(); + c += a; +END_TEST64() diff --git a/test/kvx/interop/individual/i_multiiargs.c b/test/kvx/interop/individual/i_multiiargs.c new file mode 100644 index 00000000..888742b5 --- /dev/null +++ b/test/kvx/interop/individual/i_multiiargs.c @@ -0,0 +1,6 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(int) + c = i_multiiargs(a, b, a-b, a+b); +END_TEST32() diff --git a/test/kvx/interop/individual/i_oneiarg.c b/test/kvx/interop/individual/i_oneiarg.c new file mode 100644 index 00000000..9c969fb8 --- /dev/null +++ b/test/kvx/interop/individual/i_oneiarg.c @@ -0,0 +1,6 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(int) + c = i_oneiarg(a); +END_TEST32() diff --git a/test/kvx/interop/individual/ll_multillargs.c b/test/kvx/interop/individual/ll_multillargs.c new file mode 100644 index 00000000..34b422eb --- /dev/null +++ b/test/kvx/interop/individual/ll_multillargs.c @@ -0,0 +1,7 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(long long) + c = ll_multillargs(a, b, a-b, a+b); +END_TEST64() + diff --git a/test/kvx/interop/individual/ll_onellarg.c b/test/kvx/interop/individual/ll_onellarg.c new file mode 100644 index 00000000..a2fbbbe9 --- /dev/null +++ b/test/kvx/interop/individual/ll_onellarg.c @@ -0,0 +1,7 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(long long) + c = ll_onellarg(a); +END_TEST64() + diff --git a/test/kvx/interop/individual/ll_void.c b/test/kvx/interop/individual/ll_void.c new file mode 100644 index 00000000..da128fdd --- /dev/null +++ b/test/kvx/interop/individual/ll_void.c @@ -0,0 +1,7 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(long long) + c = ll_void(); + c += a; +END_TEST64() diff --git a/test/kvx/interop/individual/void_void.c b/test/kvx/interop/individual/void_void.c new file mode 100644 index 00000000..976a721b --- /dev/null +++ b/test/kvx/interop/individual/void_void.c @@ -0,0 +1,7 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(long long) + void_void(); + c = a; +END_TEST64() diff --git a/test/kvx/interop/stackhell.c b/test/kvx/interop/stackhell.c new file mode 100644 index 00000000..5abaa71d --- /dev/null +++ b/test/kvx/interop/stackhell.c @@ -0,0 +1,9 @@ +#include "framework.h" +#include "common.h" + +BEGIN_TEST(double) + c = stackhell(a, b, a*b, a*b, a*2, b*2, a*2*b, a*b*2, (a*b)*2, (a*b)*2, + 2*a, 2*b, a*b, a*b, a*3, b*3, a*3*b, a*b*3, (a*b)*3, (a*b)*3, + 3*a, 3*b, a*b, a*b, a*4, b*4, a*4*b, a*b*4, (a*b)*4, (a*b)*4); + +END_TESTF64() diff --git a/test/kvx/interop/vaarg_common.c b/test/kvx/interop/vaarg_common.c new file mode 100644 index 00000000..3314959f --- /dev/null +++ b/test/kvx/interop/vaarg_common.c @@ -0,0 +1,383 @@ +#include + +#define STACK int a[100];\ + a[42] = 42; + +#define ONEARG_OP(arg) (3*magic(arg)+2) + +#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ magic(arg2) << arg3 - arg4) + +#define MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,\ + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,\ + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29)\ + (a0 + a1 * a2 + magic(a3) * a4 + a5 + a6 + a7 - a8 + a9 +\ + a10 + a11 - a12 ^ a13 + a14 - magic(a15) + a16 ^ a17 + a18 + a19 +\ + a20 + a21 + a22 * a23 + a24 + a25 << a26 & a27 + a28 + a29) + +#define VA_START(vl, arg) va_list vl; va_start(vl, arg) +#define VA_END(vl) va_end(vl) + +int magic(long a){ + return a*2 + 42; +} + +void void_void(void){ + STACK; +} + +long long ll_void(void){ + STACK; + return 0xdeadbeefdeadbeefULL; +} + +// int i_oneiarg(int arg){ +int i_oneiarg(int arg, ...){ + STACK; + VA_START(vl, arg); + VA_END(vl); + return ONEARG_OP(arg); +} + +//int i_multiiargs(int arg1, char arg2, char arg3, int arg4){ +int i_multiiargs(int arg1, ...){ + STACK; + VA_START(vl, arg1); + char arg2 = va_arg(vl, int); + char arg3 = va_arg(vl, int); + int arg4 = va_arg(vl, int); + VA_END(vl); + return MULTIARG_OP(arg1, arg2, arg3, arg4); +} + +//int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, +// char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, +// char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29) +int i_manyiargs(char a0, ...) +{ + STACK; + VA_START(vl, a0); + VA_START(vl2, a0); + int a1 = va_arg(vl, int); + char a2 = va_arg(vl, int); + int a3 = va_arg(vl, int); + char a4 = va_arg(vl, int); + char a5 = va_arg(vl, int); + char b1 = va_arg(vl2, int); + int a6 = va_arg(vl, int); + int a7 = va_arg(vl, int); + char a8 = va_arg(vl, int); + char b2 = va_arg(vl2, int); + int a9 = va_arg(vl, int); + char a10 = va_arg(vl, int); + int a11 = va_arg(vl, int); + char a12 = va_arg(vl, int); + char b3 = va_arg(vl2, int); + int a13 = va_arg(vl, int); + char a14 = va_arg(vl, int); + char a15 = va_arg(vl, int); + int a16 = va_arg(vl, int); + int a17 = va_arg(vl, int); + char a18 = va_arg(vl, int); + int a19 = va_arg(vl, int); + char a20 = va_arg(vl, int); + int a21 = va_arg(vl, int); + char a22 = va_arg(vl, int); + int a23 = va_arg(vl, int); + char a24 = va_arg(vl, int); + char a25 = va_arg(vl, int); + int a26 = va_arg(vl, int); + char b4 = va_arg(vl2, int); + int a27 = va_arg(vl, int); + char a28 = va_arg(vl, int); + int a29 = va_arg(vl, int); + VA_END(vl); + VA_END(vl); + return MANYARG_OP(a0, a1, a2, a3, a4, (a5*b2), a6, a7, a8, a9, + (a10*b3), a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, (a21*b1), a22, a23, (a24*b3), a25, a26, a27, a28, a29); +} + +//int ll_onellarg(long long arg){ +int ll_onellarg(long long arg, ...){ + STACK; + VA_START(vl, arg); + VA_END(vl); + return ONEARG_OP(arg); +} + +//long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4){ +long long ll_multillargs(long long arg1, ...){ + STACK; + VA_START(vl, arg1); + char arg2 = va_arg(vl, int); + char arg3 = va_arg(vl, int); + long long arg4 = va_arg(vl, long long); + VA_END(vl); + return MULTIARG_OP(arg1, arg2, arg3, arg4); +} + +//long long ll_manyllargs(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, +// char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, +// char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) +long long ll_manyllargs(char a0, ...) +{ + STACK; + VA_START(vl, a0); + int a1 = va_arg(vl, int); + char a2 = va_arg(vl, int); + long long a3 = va_arg(vl, long long); + char a4 = va_arg(vl, int); + char a5 = va_arg(vl, int); + long long a6 = va_arg(vl, long long); + long long a7 = va_arg(vl, long long); + char a8 = va_arg(vl, int); + long long a9 = va_arg(vl, long long); + char a10 = va_arg(vl, int); + long long a11 = va_arg(vl, long long); + char a12 = va_arg(vl, int); + int a13 = va_arg(vl, int); + char a14 = va_arg(vl, int); + char a15 = va_arg(vl, int); + long long a16 = va_arg(vl, long long); + long long a17 = va_arg(vl, long long); + char a18 = va_arg(vl, int); + long long a19 = va_arg(vl, long long); + char a20 = va_arg(vl, int); + int a21 = va_arg(vl, int); + char a22 = va_arg(vl, int); + long long a23 = va_arg(vl, long long); + char a24 = va_arg(vl, int); + char a25 = va_arg(vl, int); + long long a26 = va_arg(vl, long long); + int a27 = va_arg(vl, int); + char a28 = va_arg(vl, int); + long long a29 = va_arg(vl, long long); + VA_END(vl); + return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); +} + +//long long stackhell(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, +// char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, +// char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) +long long stackhell(char a0, ...) +{ + VA_START(vl, a0); + int a1 = va_arg(vl, int); + char a2 = va_arg(vl, int); + long long a3 = va_arg(vl, long long); + char a4 = va_arg(vl, int); + char a5 = va_arg(vl, int); + long long a6 = va_arg(vl, long long); + long long a7 = va_arg(vl, long long); + char a8 = va_arg(vl, int); + long long a9 = va_arg(vl, long long); + char a10 = va_arg(vl, int); + long long a11 = va_arg(vl, long long); + char a12 = va_arg(vl, int); + int a13 = va_arg(vl, int); + char a14 = va_arg(vl, int); + char a15 = va_arg(vl, int); + long long a16 = va_arg(vl, long long); + long long a17 = va_arg(vl, long long); + char a18 = va_arg(vl, int); + long long a19 = va_arg(vl, long long); + char a20 = va_arg(vl, int); + int a21 = va_arg(vl, int); + char a22 = va_arg(vl, int); + long long a23 = va_arg(vl, long long); + char a24 = va_arg(vl, int); + char a25 = va_arg(vl, int); + long long a26 = va_arg(vl, long long); + int a27 = va_arg(vl, int); + char a28 = va_arg(vl, int); + long long a29 = va_arg(vl, long long); + VA_END(vl); + + long long b0 = a0; + long long b1 = a1 + b0; + long long b2 = a2 + b1; + int b3 = a3 + b2; + int b4 = a4 + b3; + int b5 = a5 + b4; + int b6 = a6 + b5; + int b7 = a7 + b6; + char b8 = a8 + b7; + char b9 = a9 + b8; + char b10 = a10 + b9; + char b11 = a11 + b10; + char b12 = a12 + b11; + int b13 = a13 + b12; + long long b14 = a14 + b13; + long long b15 = a15 + b14; + long long b16 = a16 + b15; + long long b17 = a17 + b16; + long long b18 = a18 + b17; + long long b19 = a19 + b18; + long long b20 = a20 + b19; + long long b21 = a21 + b20; + long long b22 = a22 + b21; + long long b23 = a23 + b22; + long long b24 = a24 + b23; + long long b25 = a25 + b24; + long long b26 = a26 + b25; + long long b27 = a27 + b26; + int b28 = a28 + b27; + int b29 = a29 + b28; + int b30 = b0 + b29; + int b31 = b1 + b30; + int b32 = b2 + b31; + char b33 = b3 + b32; + char b34 = b4 + b33; + char b35 = b5 + b34; + char b36 = b6 + b35; + char b37 = b7 + b36; + int b38 = b8 + b37; + int b39 = b9 + b38; + int b40 = b0 + b39; + int b41 = b1 + b40; + int b42 = b2 + b41; + int b43 = b3 + b42; + int b44 = b4 + b43; + int b45 = b5 + b44; + int b46 = b6 + b45; + int b47 = b7 + b46; + int b48 = b8 + b47; + long long b49 = b9 + b48; + long long b50 = b0 + b49; + long long b51 = b1 + b50; + long long b52 = b2 + b51; + long long b53 = b3 + b52; + long long b54 = b4 + b53; + long long b55 = b5 + b54; + long long b56 = b6 + b55; + long long b57 = b7 + b56; + int b58 = b8 + b57; + int b59 = b9 + b58; + int b60 = b0 + b59; + int b61 = b1 + b60; + int b62 = b2 + b61; + int b63 = b3 + b62; + int b64 = b4 + b63; + int b65 = b5 + b64; + int b66 = b6 + b65; + int b67 = b7 + b66; + int b68 = b8 + b67; + int b69 = b9 + b68; + char b70 = b0 + b69; + char b71 = b1 + b70; + char b72 = b2 + b71; + char b73 = b3 + b72; + char b74 = b4 + b73; + char b75 = b5 + b74; + char b76 = b6 + b75; + char b77 = b7 + b76; + char b78 = b8 + b77; + char b79 = b9 + b78; + char b80 = b0 + b79; + char b81 = b1 + b80; + char b82 = b2 + b81; + char b83 = b3 + b82; + char b84 = b4 + b83; + int b85 = b5 + b84; + int b86 = b6 + b85; + int b87 = b7 + b86; + int b88 = b8 + b87; + int b89 = b9 + b88; + int b90 = b0 + b89; + int b91 = b1 + b90; + int b92 = b2 + b91; + int b93 = b3 + b92; + int b94 = b4 + b93; + long long b95 = b5 + b94; + long long b96 = b6 + b95; + long long b97 = b7 + b96; + long long b98 = b8 + b97; + long long b99 = b9 + b98; + long long b100 = b0 + b99; + long long b101 = b1 + b100; + long long b102 = b2 + b101; + long long b103 = b3 + b102; + long long b104 = b4 + b103; + long long b105 = b5 + b104; + long long b106 = b6 + b105; + long long b107 = b7 + b106; + long long b108 = b8 + b107; + long long b109 = b9 + b108; + long long b110 = b0 + b109; + long long b111 = b1 + b110; + long long b112 = b2 + b111; + long long b113 = b3 + b112; + long long b114 = b4 + b113; + int b115 = b5 + b114; + int b116 = b6 + b115; + int b117 = b7 + b116; + int b118 = b8 + b117; + int b119 = b9 + b118; + int b120 = b0 + b119; + int b121 = b1 + b120; + int b122 = b2 + b121; + int b123 = b3 + b122; + int b124 = b4 + b123; + int b125 = b5 + b124; + char b126 = b6 + b125; + char b127 = b7 + b126; + char b128 = b8 + b127; + char b129 = b9 + b128; + char b130 = b0 + b129; + char b131 = b1 + b130; + char b132 = b2 + b131; + char b133 = b3 + b132; + char b134 = b4 + b133; + char b135 = b5 + b134; + char b136 = b6 + b135; + char b137 = b7 + b136; + char b138 = b8 + b137; + char b139 = b9 + b138; + char b140 = b0 + b139; + char b141 = b1 + b140; + char b142 = b2 + b141; + char b143 = b3 + b142; + char b144 = b4 + b143; + char b145 = b5 + b144; + char b146 = b6 + b145; + char b147 = b7 + b146; + int b148 = b8 + b147; + int b149 = b9 + b148; + int b150 = b0 + b149; + int b151 = b1 + b150; + int b152 = b2 + b151; + int b153 = b3 + b152; + int b154 = b4 + b153; + int b155 = b5 + b154; + int b156 = b6 + b155; + int b157 = b7 + b156; + int b158 = b8 + b157; + int b159 = b9 + b158; + int b160 = b0 + b159; + int b161 = b1 + b160; + int b162 = b2 + b161; + return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, + a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, + a20, a21, a22, a23, a24, a25, a26, a27, a28, a29) + + b0 + b1 + b2 + b3 + b4 + b5 + b6 + b7 + b8 + b9 + + b10 + b11 + b12 + b13 + b14 + b15 + b16 + b17 + b18 + b19 + + b20 + b21 + b22 + b23 + b24 + b25 + b26 + b27 + b28 + b29 + + b30 + b31 + b32 + b33 + b34 + b35 + b36 + b37 + b38 + b39 + + b40 + b41 + b42 + b43 + b44 + b45 + b46 + b47 + b48 + b49 + + b50 + b51 + b52 + b53 + b54 + b55 + b56 + b57 + b58 + b59 + + b60 + b61 + b62 + b63 + b64 + b65 + b66 + b67 + b68 + b69 + + b70 + b71 + b72 + b73 + b74 + b75 + b76 + b77 + b78 + b79 + + b80 + b81 + b82 + b83 + b84 + b85 + b86 + b87 + b88 + b89 + + b90 + b91 + b92 + b93 + b94 + b95 + b96 + b97 + b98 + b99 + + b100 + b101 + b102 + b103 + b104 + b105 + b106 + b107 + b108 + b109 + + b110 + b111 + b112 + b113 + b114 + b115 + b116 + b117 + b118 + b119 + + b120 + b121 + b122 + b123 + b124 + b125 + b126 + b127 + b128 + b129 + + b130 + b131 + b132 + b133 + b134 + b135 + b136 + b137 + b138 + b139 + + b140 + b141 + b142 + b143 + b144 + b145 + b146 + b147 + b148 + b149 + + b150 + b151 + b152 + b153 + b154 + b155 + b156 + b157 + b158 + b159 + + b160 + b161 + b162 + ; +} + diff --git a/test/kvx/lib/Makefile b/test/kvx/lib/Makefile new file mode 100644 index 00000000..5a947bb3 --- /dev/null +++ b/test/kvx/lib/Makefile @@ -0,0 +1,133 @@ +KVXC ?= k1-cos-gcc +K1AR ?= k1-cos-ar +CC ?= gcc +AR ?= gcc-ar +CCOMP ?= ccomp +CFLAGS ?= -O1 -Wl,--wrap=printf +SIMU ?= k1-mppa +TIMEOUT ?= --signal=SIGTERM 60s + +DIR=./ +SRCDIR=$(DIR) +OUTDIR=$(DIR)/out +BINDIR=$(DIR)/bin +ASMDIR=$(DIR)/asm +OBJDIR=$(DIR)/obj + +KVXCPATH=$(shell which $(KVXC)) +K1ARPATH=$(shell which $(K1AR)) +CCPATH=$(shell which $(CC)) +ARPATH=$(shell which $(AR)) +SIMUPATH=$(shell which $(SIMU)) + +TESTNAMES=printf-test +X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) +GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.out,$(TESTNAMES))) +CCOMP_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.out,$(TESTNAMES))) + +OUT=$(X86_GCC_OUT) $(GCC_OUT) $(CCOMP_OUT) +BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ + $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES))) + +## +# Targets +## + +all: $(BIN) system.x86-gcc.a system.gcc.a + +.PHONY: +test: $(X86_GCC_OUT) $(GCC_OUT) + @echo "Comparing x86 gcc output to k1 gcc.." + @for test in $(TESTNAMES); do\ + x86out=$(OUTDIR)/$$test.x86-gcc.out;\ + gccout=$(OUTDIR)/$$test.gcc.out;\ + if ! diff $$x86out $$gccout; then\ + >&2 echo "ERROR: $$x86out and $$gccout differ";\ + else\ + echo "GOOD: $$x86out and $$gccout concur";\ + fi;\ + done + +.PHONY: +check: $(GCC_OUT) $(CCOMP_OUT) + @echo "Comparing k1 gcc output to ccomp.." + @for test in $(TESTNAMES); do\ + gccout=$(OUTDIR)/$$test.gcc.out;\ + ccompout=$(OUTDIR)/$$test.ccomp.out;\ + if ! diff $$ccompout $$gccout; then\ + >&2 echo "ERROR: $$ccompout and $$gccout differ";\ + else\ + echo "GOOD: $$ccompout and $$gccout concur";\ + fi;\ + done + +## +# Rules +## + +.SECONDARY: + +# Generating output + +## Version avec timeout +$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.gcc.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +$(OUTDIR)/%.ccomp.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) + @mkdir -p $(@D) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +# Object to binary + +$(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o system.x86-gcc.a $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o system.gcc.a $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ + +$(BINDIR)/%.ccomp.bin: $(OBJDIR)/%.ccomp.o system.gcc.a $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ + +# Generating libraries +system.x86-gcc.a: $(OBJDIR)/printf.x86-gcc.o $(ARPATH) + $(AR) rcs $@ $< + +system.gcc.a: $(OBJDIR)/printf.gcc.o $(K1ARPATH) + $(K1AR) rcs $@ $< + +# Assembly to object + +$(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) -c $< -o $@ + +$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) -c $< -o $@ + +$(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) + $(CCOMP) $(CFLAGS) -c $< -o $@ + +# Source to assembly + +$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) + @mkdir -p $(@D) + $(CC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) + @mkdir -p $(@D) + $(KVXC) $(CFLAGS) -S $< -o $@ + +$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) + @mkdir -p $(@D) + $(CCOMP) $(CFLAGS) -S $< -o $@ + diff --git a/test/kvx/lib/printf-test.c b/test/kvx/lib/printf-test.c new file mode 100644 index 00000000..25afd436 --- /dev/null +++ b/test/kvx/lib/printf-test.c @@ -0,0 +1,9 @@ +int printf(const char *, ...); + +int main(void){ + int a = 42; + char *str = "Hi there"; + printf("%s, I am %u\n", str, a); + + return 0; +} diff --git a/test/kvx/lib/printf.c b/test/kvx/lib/printf.c new file mode 100644 index 00000000..79984ef6 --- /dev/null +++ b/test/kvx/lib/printf.c @@ -0,0 +1,9 @@ +#include +#include + +int __wrap_printf(const char *format, ...){ + va_list args; + va_start(args, format); + vprintf(format, args); + va_end(args); +} diff --git a/test/kvx/mmult/.gitignore b/test/kvx/mmult/.gitignore new file mode 100644 index 00000000..b43ccc5f --- /dev/null +++ b/test/kvx/mmult/.gitignore @@ -0,0 +1,4 @@ +mmult-test-ccomp-kvx +mmult-test-gcc-kvx +mmult-test-gcc-x86 +.zero diff --git a/test/kvx/mmult/Makefile b/test/kvx/mmult/Makefile new file mode 100644 index 00000000..e7cd890e --- /dev/null +++ b/test/kvx/mmult/Makefile @@ -0,0 +1,67 @@ +KVXC ?= k1-cos-gcc +CC ?= gcc +CCOMP ?= ccomp +CFLAGS ?= -O2 +SIMU ?= k1-mppa +TIMEOUT ?= 10s + +KVXCPATH=$(shell which $(KVXC)) +CCPATH=$(shell which $(CC)) +CCOMPPATH=$(shell which $(CCOMP)) +SIMUPATH=$(shell which $(SIMU)) + +PRNG=../prng/prng.c + +ALL= mmult-test-gcc-x86 mmult-test-gcc-kvx mmult-test-ccomp-kvx +CCOMP_OUT= mmult-test-ccomp-kvx.out +GCC_OUT= mmult-test-gcc-kvx.out +X86_GCC_OUT= mmult-test-gcc-x86.out +STUB_OUT=.zero + +all: $(ALL) + +mmult-test-gcc-x86: mmult.c $(PRNG) $(CCPATH) + $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +mmult-test-gcc-kvx: mmult.c $(PRNG) $(KVXCPATH) + $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ + +mmult-test-ccomp-kvx: mmult.c $(PRNG) $(CCOMPPATH) + $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ + +.SECONDARY: +%kvx.out: %kvx $(SIMUPATH) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +%x86.out: %x86 + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +.zero: + @echo "0" > $@ + +.PHONY: +test: test-x86 test-kvx + +.PHONY: +test-x86: $(X86_GCC_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR x86: $< failed";\ + else\ + echo "GOOD x86: $< succeeded";\ + fi + +.PHONY: +test-kvx: $(GCC_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $< failed";\ + else\ + echo "GOOD kvx: $< succeeded";\ + fi + +.PHONY: +check: $(CCOMP_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $< failed";\ + else\ + echo "GOOD kvx: $< succeeded";\ + fi diff --git a/test/kvx/mmult/README.md b/test/kvx/mmult/README.md new file mode 100644 index 00000000..780603f6 --- /dev/null +++ b/test/kvx/mmult/README.md @@ -0,0 +1,17 @@ +MMULT +===== + +Examples of matrix multiplication using different methods. + +We compute matrix multiplication using column-based matrix multiplication, then row-based, and finally block based. + +The test verifies that the result is the same on the three methods. If it is the same, 0 will be returned. + +The following commands can be run inside the folder: + +- `make`: produces the unitary test binaries + - `mmult-test-gcc-x86` : binary from gcc on x86 + - `mmult-test-kvx-x86` : binary from gcc on kvx + - `mmult-test-ccomp-x86` : binary from ccomp on kvx +- `make test`: tests the return value of the binaries produced by gcc. +- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/kvx/mmult/mmult.c b/test/kvx/mmult/mmult.c new file mode 100644 index 00000000..aeb91d48 --- /dev/null +++ b/test/kvx/mmult/mmult.c @@ -0,0 +1,146 @@ +#include "../prng/types.h" +#include "../prng/prng.h" + +#define __UNIT_TEST_MMULT__ + +#ifdef __UNIT_TEST_MMULT__ +#define SIZE 10 +#else +#include "test.h" +#endif + +void mmult_row(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ + int i, j, k; + + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++) + C[i][j] = 0; + + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++) + for (k = 0 ; k < SIZE ; k++) + C[i][j] += A[i][k] * B[k][j]; +} + +void mmult_col(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ + int i, j, k; + + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++) + C[i][j] = 0; + + for (k = 0 ; k < SIZE ; k++) + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++) + C[i][j] += A[i][k] * B[k][j]; +} + +typedef struct mblock { + int imin, imax, jmin, jmax; + uint64_t *mat; +} mblock; + +#define MAT_XY(mat, x, y) (mat)[(x)*SIZE + (y)] +#define MAT_IJ(block, i, j) MAT_XY((block)->mat, (block)->imin + (i), block->jmin + (j)) + +void divac_mul(mblock *C, const mblock *A, const mblock *B){ + const int size = C->imax - C->imin; + int i, j, k; + + for (i = 0 ; i < size ; i++) + for (j = 0 ; j < size ; j++) + for (k = 0 ; k < size ; k++) + MAT_IJ(C, i, j) += MAT_IJ(A, i, k) * MAT_IJ(B, k, j); +} + +#define BLOCK_X_MID(block) ((block)->imin + (block)->imax) / 2 +#define BLOCK_Y_MID(block) ((block)->jmin + (block)->jmax) / 2 + +#define MAKE_MBLOCK(newb, block, I, J) \ + mblock newb = {.mat=(block)->mat};\ + if ((I) == 0){\ + newb.imin = (block)->imin;\ + newb.imax = BLOCK_X_MID((block));\ + } else {\ + newb.imin = BLOCK_X_MID((block));\ + newb.imax = (block)->imax;\ + } if ((J) == 0){\ + newb.jmin = (block)->jmin;\ + newb.jmax = BLOCK_Y_MID((block));\ + } else {\ + newb.jmin = BLOCK_Y_MID((block));\ + newb.jmax = (block)->jmax;\ + } + +void divac_part(mblock *C, const mblock *A, const mblock *B); + +void divac_wrap(mblock *C , char IC, char JC, + const mblock *A, char IA, char JA, + const mblock *B, char IB, char JB){ + MAKE_MBLOCK(Cb, C, IC, JC); + MAKE_MBLOCK(Ab, A, IA, JA); + MAKE_MBLOCK(Bb, B, IB, JB); + + divac_part(&Cb, &Ab, &Bb); +} + + +void divac_part(mblock *C, const mblock *A, const mblock *B){ + const int size = C->imax - C->imin; + + if (size % 2 == 1) + divac_mul(C, A, B); + else{ + /* C_00 = A_00 B_00 + A_01 B_10 */ + divac_wrap(C, 0, 0, A, 0, 0, B, 0, 0); + divac_wrap(C, 0, 0, A, 0, 1, B, 1, 0); + + /* C_10 = A_10 B_00 + A_11 B_10 */ + divac_wrap(C, 1, 0, A, 1, 0, B, 0, 0); + divac_wrap(C, 1, 0, A, 1, 1, B, 1, 0); + + /* C_01 = A_00 B_01 + A_01 B_11 */ + divac_wrap(C, 0, 1, A, 0, 0, B, 0, 1); + divac_wrap(C, 0, 1, A, 0, 1, B, 1, 1); + + /* C_11 = A_10 B_01 + A_11 B_11 */ + divac_wrap(C, 1, 1, A, 1, 0, B, 0, 1); + divac_wrap(C, 1, 1, A, 1, 1, B, 1, 1); + } + +} + +void mmult_divac(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ + mblock Cb = {.mat = (uint64_t *) C, .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; + mblock Ab = {.mat = (uint64_t *) A , .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; + mblock Bb = {.mat = (uint64_t *) B , .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; + + divac_part(&Cb, &Ab, &Bb); +} + +#ifdef __UNIT_TEST_MMULT__ +static uint64_t C1[SIZE][SIZE], C2[SIZE][SIZE], C3[SIZE][SIZE]; +static uint64_t A[SIZE][SIZE], B[SIZE][SIZE]; + +int main(void){ + srand(42); + int i, j; + + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++){ + A[i][j] = randlong(); + B[i][j] = randlong(); + } + + mmult_row(C1, A, B); + mmult_col(C2, A, B); + mmult_divac(C3, A, B); + + for (i = 0 ; i < SIZE ; i++) + for (j = 0 ; j < SIZE ; j++) + if (!(C1[i][j] == C2[i][j] && C1[i][j] == C3[i][j])) + return -1; + + return 0; +} +#endif /* __UNIT_TEST_MMULT__ */ diff --git a/test/kvx/mmult/mmult.h b/test/kvx/mmult/mmult.h new file mode 100644 index 00000000..3721784a --- /dev/null +++ b/test/kvx/mmult/mmult.h @@ -0,0 +1,10 @@ +#ifndef __MMULT_H__ +#define __MMULT_H__ + +#include "../lib/types.h" + +void mmult_row(uint64_t *A, const uint64_t *B, const uint64_t *C); +void mmult_column(uint64_t *A, const uint64_t *B, const uint64_t *C); +void mmult_strassen(uint64_t *A, const uint64_t *B, const uint64_t *C); + +#endif /* __MMULT_H__ */ diff --git a/test/kvx/prng/.gitignore b/test/kvx/prng/.gitignore new file mode 100644 index 00000000..08023900 --- /dev/null +++ b/test/kvx/prng/.gitignore @@ -0,0 +1,3 @@ +prng-test-ccomp-kvx +prng-test-gcc-x86 +prng-test-gcc-kvx diff --git a/test/kvx/prng/Makefile b/test/kvx/prng/Makefile new file mode 100644 index 00000000..68e5ffc9 --- /dev/null +++ b/test/kvx/prng/Makefile @@ -0,0 +1,69 @@ +KVXC ?= k1-cos-gcc +CC ?= gcc +CCOMP ?= ccomp +CFLAGS ?= -O2 +SIMU ?= k1-mppa +TIMEOUT ?= 10s + +KVXCPATH=$(shell which $(KVXC)) +CCPATH=$(shell which $(CC)) +CCOMPPATH=$(shell which $(CCOMP)) +SIMUPATH=$(shell which $(SIMU)) + +ALL= prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx +CCOMP_OUT= prng-test-ccomp-kvx.out +GCC_OUT= prng-test-gcc-kvx.out +X86_GCC_OUT= prng-test-gcc-x86.out +STUB_OUT=.zero + +all: $(ALL) + +prng-test-gcc-x86: prng.c $(CCPATH) + $(CC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ + +prng-test-gcc-kvx: prng.c $(KVXCPATH) + $(KVXC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ + +prng-test-ccomp-kvx: prng.c $(CCOMPPATH) + $(CCOMP) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ + +.SECONDARY: +%kvx.out: %kvx $(SIMUPATH) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +%x86.out: %x86 + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +.zero: + @echo "0" > $@ + +.PHONY: +test: test-x86 test-kvx + +.PHONY: +test-x86: $(X86_GCC_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR x86: $< failed";\ + else\ + echo "GOOD x86: $< succeeded";\ + fi + +.PHONY: +test-kvx: $(GCC_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $< failed";\ + else\ + echo "GOOD kvx: $< succeeded";\ + fi + +.PHONY: +check: $(CCOMP_OUT) $(STUB_OUT) + @if ! diff $< $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $< failed";\ + else\ + echo "GOOD kvx: $< succeeded";\ + fi + +.PHONY: +clean: + rm -f prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx diff --git a/test/kvx/prng/README.md b/test/kvx/prng/README.md new file mode 100644 index 00000000..98ed539d --- /dev/null +++ b/test/kvx/prng/README.md @@ -0,0 +1,17 @@ +PRNG +==== + +This is a simple Pseudo Random Number Generator. + +`prng.c` contains a simple unitary test that compares the sum of the "bytewise sum" +of 1000 generated numbers to a hardcoded result, that is the one obtained with +`gcc -O2` on a x86 processor, and returns 0 if the result is correct. + +The following commands can be run inside that folder: + +- `make`: produces the unitary test binaries + - `prng-test-gcc-x86` : binary from gcc on x86 + - `prng-test-kvx-x86` : binary from gcc on kvx + - `prng-test-ccomp-x86` : binary from ccomp on kvx +- `make test`: tests the return value of the binaries produced by gcc. +- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/kvx/prng/prng.c b/test/kvx/prng/prng.c new file mode 100644 index 00000000..71de1dc3 --- /dev/null +++ b/test/kvx/prng/prng.c @@ -0,0 +1,41 @@ +// https://en.wikipedia.org/wiki/Linear_congruential_generator -> MMIX Donald Knuth +// modulo 2^64 = no need to do it explicitly + +#include "types.h" + +#define MULTIPLIER 6364136223846793005LL +#define INCREMENT 1442695040888963407LL + +static uint64_t current; + +void srand(uint64_t seed){ + current = seed; +} + +uint64_t randlong(void){ + return (current = MULTIPLIER * current + INCREMENT); +} + +#ifdef __UNIT_TEST_PRNG__ +char bytewise_sum(uint64_t to_check){ + char sum = 0; + int i; + + for (i = 0 ; i < 8 ; i++) + sum += (to_check & (uint64_t)(0xFFULL << i*8)) >> i*8; + + return sum; +} + +int main(void){ + srand(42); + int i; + + for (i = 0 ; i < 1000 ; i++) + randlong(); + + uint64_t last = randlong(); + + return !((unsigned char)bytewise_sum(last) == 155); +} +#endif // __UNIT_TEST_PRNG__ diff --git a/test/kvx/prng/prng.h b/test/kvx/prng/prng.h new file mode 100644 index 00000000..6abdb45a --- /dev/null +++ b/test/kvx/prng/prng.h @@ -0,0 +1,10 @@ +#ifndef __PRNG_H__ +#define __PRNG_H__ + +#include "types.h" + +void srand(uint64_t seed); + +uint64_t randlong(void); + +#endif // __PRNG_H__ diff --git a/test/kvx/prng/types.h b/test/kvx/prng/types.h new file mode 100644 index 00000000..584023e3 --- /dev/null +++ b/test/kvx/prng/types.h @@ -0,0 +1,7 @@ +#ifndef __TYPES_H__ +#define __TYPES_H__ + +#define uint64_t unsigned long long +#define int64_t signed long long + +#endif // __TYPES_H__ diff --git a/test/kvx/simucheck.sh b/test/kvx/simucheck.sh new file mode 100755 index 00000000..48698e35 --- /dev/null +++ b/test/kvx/simucheck.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# Tests the execution of the binaries produced by CompCert, by simulation + +cores=$(grep -c ^processor /proc/cpuinfo) + +source do_test.sh + +do_test check $cores diff --git a/test/kvx/simutest.sh b/test/kvx/simutest.sh new file mode 100755 index 00000000..729d1ba0 --- /dev/null +++ b/test/kvx/simutest.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# Tests the validity of the tests, in simulator + +cores=$(grep -c ^processor /proc/cpuinfo) + +source do_test.sh + +do_test test $cores diff --git a/test/kvx/sort/.gitignore b/test/kvx/sort/.gitignore new file mode 100644 index 00000000..070b87c4 --- /dev/null +++ b/test/kvx/sort/.gitignore @@ -0,0 +1,9 @@ +main-test-ccomp-kvx +main-test-gcc-kvx +main-test-gcc-x86 +merge-test-gcc-kvx +merge-test-gcc-x86 +selection-test-gcc-kvx +selection-test-gcc-x86 +insertion-test-gcc-kvx +insertion-test-gcc-x86 diff --git a/test/kvx/sort/Makefile b/test/kvx/sort/Makefile new file mode 100644 index 00000000..c4090352 --- /dev/null +++ b/test/kvx/sort/Makefile @@ -0,0 +1,91 @@ +KVXC ?= k1-cos-gcc +CC ?= gcc +CCOMP ?= ccomp +CFLAGS ?= -O2 +SIMU ?= k1-mppa +TIMEOUT ?= 10s + +KVXCPATH=$(shell which $(KVXC)) +CCPATH=$(shell which $(CC)) +CCOMPPATH=$(shell which $(CCOMP)) +SIMUPATH=$(shell which $(SIMU)) + +PRNG=../prng/prng.c + +CFILES=insertion.c merge.c selection.c main.c + +ALL= insertion-gcc-x86 insertion-gcc-kvx insertion-ccomp-kvx\ + selection-gcc-x86 selection-gcc-kvx selection-ccomp-kvx\ + merge-gcc-x86 merge-gcc-kvx merge-ccomp-kvx\ + main-gcc-x86 main-gcc-kvx main-ccomp-kvx + +CCOMP_OUT= insertion-ccomp-kvx.out selection-ccomp-kvx.out merge-ccomp-kvx.out\ + main-ccomp-kvx.out +GCC_OUT= insertion-gcc-kvx.out selection-gcc-kvx.out merge-gcc-kvx.out\ + main-gcc-kvx.out +X86_GCC_OUT= insertion-gcc-x86.out selection-gcc-x86.out merge-gcc-x86.out\ + main-gcc-x86.out +STUB_OUT= .zero + +all: $(ALL) + +main-gcc-x86: $(CFILES) $(PRNG) $(CCPATH) + $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +%-gcc-x86: %.c $(PRNG) $(CCPATH) + $(CC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +main-gcc-kvx: $(CFILES) $(PRNG) $(CCPATH) + $(KVXC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ + +%-gcc-kvx: %.c $(PRNG) $(KVXCPATH) + $(KVXC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ + +main-ccomp-kvx: $(CFILES) $(PRNG) $(CCOMPPATH) + $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ + +%-ccomp-kvx: %.c $(PRNG) $(CCOMPPATH) + $(CCOMP) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ + +.SECONDARY: +%x86.out: %x86 + ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ + +%kvx.out: %kvx $(SIMUPATH) + ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ + +.zero: + @echo "0" > $@ + +.PHONY: +test-x86: $(STUB_OUT) $(X86_GCC_OUT) + @for test in $(wordlist 2,100,$^); do\ + if ! diff $$test $(STUB_OUT); then\ + >&2 echo "ERROR x86: $$test failed";\ + else\ + echo "GOOD x86: $$test succeeded";\ + fi;\ + done + +.PHONY: +test-kvx: $(STUB_OUT) $(GCC_OUT) + @for test in $(wordlist 2,100,$^); do\ + if ! diff $$test $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $$test failed";\ + else\ + echo "GOOD kvx: $$test succeeded";\ + fi;\ + done + +.PHONY: +test: test-x86 test-kvx + +.PHONY: +check: $(STUB_OUT) $(CCOMP_OUT) + @for test in $(wordlist 2,100,$^); do\ + if ! diff $$test $(STUB_OUT); then\ + >&2 echo "ERROR kvx: $$test failed";\ + else\ + echo "GOOD kvx: $$test succeeded";\ + fi;\ + done diff --git a/test/kvx/sort/README.md b/test/kvx/sort/README.md new file mode 100644 index 00000000..98ed539d --- /dev/null +++ b/test/kvx/sort/README.md @@ -0,0 +1,17 @@ +PRNG +==== + +This is a simple Pseudo Random Number Generator. + +`prng.c` contains a simple unitary test that compares the sum of the "bytewise sum" +of 1000 generated numbers to a hardcoded result, that is the one obtained with +`gcc -O2` on a x86 processor, and returns 0 if the result is correct. + +The following commands can be run inside that folder: + +- `make`: produces the unitary test binaries + - `prng-test-gcc-x86` : binary from gcc on x86 + - `prng-test-kvx-x86` : binary from gcc on kvx + - `prng-test-ccomp-x86` : binary from ccomp on kvx +- `make test`: tests the return value of the binaries produced by gcc. +- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/kvx/sort/insertion.c b/test/kvx/sort/insertion.c new file mode 100644 index 00000000..bca09599 --- /dev/null +++ b/test/kvx/sort/insertion.c @@ -0,0 +1,59 @@ +#include "../prng/prng.h" +#include "../prng/types.h" + +#ifdef __UNIT_TEST_INSERTION__ +#define SIZE 100 +#else +#include "test.h" +#endif + +void swap_ins(uint64_t *a, uint64_t *b){ + uint64_t tmp = *a; + *a = *b; + *b = tmp; +} + +int insert_sort(uint64_t *res, const uint64_t *T){ + int i, j; + + if (SIZE <= 0) + return -1; + + for (i = 0 ; i < SIZE ; i++) + res[i] = T[i]; + + for (i = 0 ; i < SIZE-1 ; i++){ + if (res[i] > res[i+1]){ + swap_ins(&res[i], &res[i+1]); + for (j = i ; j > 0 ; j--) + if (res[j-1] > res[j]) + swap_ins(&res[j-1], &res[j]); + } + } + + return 0; +} + +#ifdef __UNIT_TEST_INSERTION__ +int main(void){ + uint64_t T[SIZE]; + uint64_t res[SIZE]; + int i; + srand(42); + + for (i = 0 ; i < SIZE ; i++) + T[i] = randlong(); + + /* Sorting the table */ + if (insert_sort(res, T) < 0) return -1; + + /* Computing max(T) */ + uint64_t max = T[0]; + for (i = 1 ; i < SIZE ; i++) + if (T[i] > max) + max = T[i]; + + /* We should have: max(T) == res[SIZE] */ + return !(max == res[SIZE-1]); +} +#endif // __UNIT_TEST_INSERTION__ diff --git a/test/kvx/sort/insertion.h b/test/kvx/sort/insertion.h new file mode 100644 index 00000000..6e37c5fe --- /dev/null +++ b/test/kvx/sort/insertion.h @@ -0,0 +1,6 @@ +#ifndef __INSERTION_H__ +#define __INSERTION_H__ + +int insert_sort(uint64_t *res, const uint64_t *T); + +#endif // __INSERTION_H__ diff --git a/test/kvx/sort/main.c b/test/kvx/sort/main.c new file mode 100644 index 00000000..aef419aa --- /dev/null +++ b/test/kvx/sort/main.c @@ -0,0 +1,34 @@ +#include "../prng/prng.h" +#include "../prng/types.h" + +#include "test.h" +#include "insertion.h" +#include "selection.h" +#include "merge.h" + +int main(void){ + uint64_t T[SIZE]; + uint64_t res1[SIZE], res2[SIZE], res3[SIZE]; + int i; + srand(42); + + for (i = 0 ; i < SIZE ; i++) + T[i] = randlong(); + + /* insertion sort */ + if (insert_sort(res1, T) < 0) return -1; + + /* selection sort */ + if (select_sort(res2, T) < 0) return -2; + + /* merge sort */ + if (merge_sort(res3, T) < 0) return -3; + + /* We should have: res1[i] == res2[i] == res3[i] */ + for (i = 0 ; i < SIZE ; i++){ + if (!(res1[i] == res2[i] && res2[i] == res3[i])) + return -4; + } + + return 0; +} diff --git a/test/kvx/sort/merge.c b/test/kvx/sort/merge.c new file mode 100644 index 00000000..99f8ba85 --- /dev/null +++ b/test/kvx/sort/merge.c @@ -0,0 +1,92 @@ +#include "../prng/prng.h" +#include "../prng/types.h" + +//https://en.wikipedia.org/wiki/Merge_sort + +#ifdef __UNIT_TEST_MERGE__ +#define SIZE 100 +#else +#include "test.h" +#endif + +int min(int a, int b){ + return (a < b)?a:b; +} + +void BottomUpMerge(const uint64_t *A, int iLeft, int iRight, int iEnd, uint64_t *B) +{ + int i = iLeft, j = iRight, k; + for (k = iLeft; k < iEnd; k++) { + if (i < iRight && (j >= iEnd || A[i] <= A[j])) { + B[k] = A[i]; + i = i + 1; + } else { + B[k] = A[j]; + j = j + 1; + } + } +} + +void CopyArray(uint64_t *to, const uint64_t *from) +{ + const int n = SIZE; + int i; + + for(i = 0; i < n; i++) + to[i] = from[i]; +} + +void BottomUpMergeSort(uint64_t *A, uint64_t *B) +{ + const int n = SIZE; + int width, i; + + for (width = 1; width < n; width = 2 * width) + { + for (i = 0; i < n; i = i + 2 * width) + { + BottomUpMerge(A, i, min(i+width, n), min(i+2*width, n), B); + } + CopyArray(A, B); + } +} + +int merge_sort(uint64_t *res, const uint64_t *T){ + int i; + + if (SIZE <= 0) + return -1; + + uint64_t B[SIZE]; + uint64_t *A = res; + for (i = 0 ; i < SIZE ; i++) + A[i] = T[i]; + + BottomUpMergeSort(A, B); + + return 0; +} + +#ifdef __UNIT_TEST_MERGE__ +int main(void){ + uint64_t T[SIZE]; + uint64_t res[SIZE]; + int i; + srand(42); + + for (i = 0 ; i < SIZE ; i++) + T[i] = randlong(); + + /* Sorting the table */ + if (merge_sort(res, T) < 0) return -1; + + /* Computing max(T) */ + uint64_t max = T[0]; + for (i = 1 ; i < SIZE ; i++) + if (T[i] > max) + max = T[i]; + + /* We should have: max(T) == res[SIZE] */ + return !(max == res[SIZE-1]); +} +#endif // __UNIT_TEST_MERGE__ diff --git a/test/kvx/sort/merge.h b/test/kvx/sort/merge.h new file mode 100644 index 00000000..439ce64a --- /dev/null +++ b/test/kvx/sort/merge.h @@ -0,0 +1,7 @@ +#ifndef __MERGE_H__ +#define __MERGE_H__ + +int merge_sort(uint64_t *res, const uint64_t *T); + +#endif // __MERGE_H__ + diff --git a/test/kvx/sort/selection.c b/test/kvx/sort/selection.c new file mode 100644 index 00000000..df4be04f --- /dev/null +++ b/test/kvx/sort/selection.c @@ -0,0 +1,62 @@ +#include "../prng/prng.h" +#include "../prng/types.h" + +#ifdef __UNIT_TEST_SELECTION__ +#define SIZE 100 +#else +#include "test.h" +#endif + +void swap_sel(uint64_t *a, uint64_t *b){ + uint64_t tmp = *a; + *a = *b; + *b = tmp; +} + +int select_sort(uint64_t *res, const uint64_t *T){ + int i, j, iMin; + + if (SIZE <= 0) + return -1; + + for (i = 0 ; i < SIZE ; i++) + res[i] = T[i]; + + for (j = 0 ; j < SIZE ; j++){ + iMin = j; + for (i = j+1 ; i < SIZE ; i++) + if (res[i] < res[iMin]) + iMin = i; + + if (iMin != j) + swap_sel (&res[j], &res[iMin]); + } + + return 0; +} + +#ifdef __UNIT_TEST_SELECTION__ +int main(void){ + uint64_t T[SIZE]; + uint64_t res[SIZE]; + uint64_t max; + int i; + srand(42); + + for (i = 0 ; i < SIZE ; i++) + T[i] = randlong(); + + /* Sorting the table */ + if (select_sort(res, T) < 0) return -1; + + /* Computing max(T) */ + max = T[0]; + for (i = 1 ; i < SIZE ; i++) + if (T[i] > max) + max = T[i]; + + /* We should have: max(T) == res[SIZE] */ + return !(max == res[SIZE-1]); +} +#endif // __UNIT_TEST_SELECTION__ + diff --git a/test/kvx/sort/selection.h b/test/kvx/sort/selection.h new file mode 100644 index 00000000..92a6b461 --- /dev/null +++ b/test/kvx/sort/selection.h @@ -0,0 +1,6 @@ +#ifndef __SELECTION_H__ +#define __SELECTION_H__ + +int select_sort(uint64_t *res, const uint64_t *T); + +#endif // __SELECTION_H__ diff --git a/test/kvx/sort/test.h b/test/kvx/sort/test.h new file mode 100644 index 00000000..4501ee38 --- /dev/null +++ b/test/kvx/sort/test.h @@ -0,0 +1,6 @@ +#ifndef __TEST_H__ +#define __TEST_H__ + +#define SIZE 100 + +#endif diff --git a/test/mppa/.gitignore b/test/mppa/.gitignore deleted file mode 100644 index b10c40c8..00000000 --- a/test/mppa/.gitignore +++ /dev/null @@ -1,20 +0,0 @@ -check -asm_coverage -instr/Makefile -mmult/Makefile -prng/Makefile -sort/Makefile -prng/.zero -sort/.zero -sort/insertion-ccomp-kvx -sort/insertion-gcc-kvx -sort/insertion-gcc-x86 -sort/main-ccomp-kvx -sort/main-gcc-kvx -sort/main-gcc-x86 -sort/merge-ccomp-kvx -sort/merge-gcc-kvx -sort/merge-gcc-x86 -sort/selection-ccomp-kvx -sort/selection-gcc-kvx -sort/selection-gcc-x86 diff --git a/test/mppa/builtins/clzll.c b/test/mppa/builtins/clzll.c deleted file mode 100644 index 13905cba..00000000 --- a/test/mppa/builtins/clzll.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = __builtin_clzll(a); -} -END_TEST() diff --git a/test/mppa/builtins/stsud.c b/test/mppa/builtins/stsud.c deleted file mode 100644 index fa42b001..00000000 --- a/test/mppa/builtins/stsud.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 2) -{ - c = __builtin_kvx_stsud(t[0], t[1]); -} -END_TEST() diff --git a/test/mppa/coverage.sh b/test/mppa/coverage.sh deleted file mode 100755 index 96f6bc04..00000000 --- a/test/mppa/coverage.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -printer=../../kvx/TargetPrinter.ml -asmdir=instr/asm/ -to_cover_raw=/tmp/to_cover_raw -to_cover=/tmp/to_cover -covered_raw=/tmp/covered_raw -covered=/tmp/covered - -# Stop at any error -set -e -# Pipes do not mask errors -set -o pipefail - -sed -n "s/^.*fprintf\s\+oc\s*\"\s*\([a-z][^[:space:]]*\)\s.*/\1/p" $printer > $to_cover_raw -python2.7 coverage_helper.py $to_cover_raw | sort -u > $to_cover - -rm -f $covered_raw -for asm in $(ls $asmdir/*.ccomp.s); do - grep -v ":" $asm | sed -n "s/^\s*\([a-z][a-z0-9.]*\).*/\1/p" | sort -u >> $covered_raw -done -python2.7 coverage_helper.py $covered_raw | sort -u > $covered - -vimdiff $to_cover $covered diff --git a/test/mppa/coverage_helper.py b/test/mppa/coverage_helper.py deleted file mode 100644 index e5b1907c..00000000 --- a/test/mppa/coverage_helper.py +++ /dev/null @@ -1,45 +0,0 @@ -import fileinput -import sys - -all_loads_stores = "lbs lbz lhz lo lq ld lhs lws sb sd sh so sq sw".split(" ") - -all_bconds = "wnez weqz wltz wgez wlez wgtz dnez deqz dltz dgez dlez dgtz".split(" ") - -all_iconds = "ne eq lt ge le gt ltu geu leu gtu".split(" ") - -all_fconds = "one ueq oeq une olt uge oge ult".split(" ") - -replaces_a = [(["cb.", "cmoved."], all_bconds), - (["compd.", "compw."], all_iconds), - (["fcompd.", "fcompw."], all_fconds), - (all_loads_stores, [".xs", ""])] - -replaces_dd = [(["addx", "sbfx"], ["2d", "4d", "8d", "16d"])] -replaces_dw = [(["addx", "sbfx"], ["2w", "4w", "8w", "16w"])] - -macros_binds = {"%a": replaces_a, "%dd": replaces_dd, "%dw": replaces_dw} - -def expand_macro(fullinst, macro, replaceTable): - inst = fullinst.replace(macro, "") - for (searchlist, mods) in replaceTable: - if inst in searchlist: - return [fullinst.replace(macro, mod) for mod in mods] - raise NameError - -insts = [] -for line in fileinput.input(): - fullinst = line[:-1] - try: - for macro in macros_binds: - if macro in fullinst: - insts.extend(expand_macro(fullinst, macro, macros_binds[macro])) - break - else: - insts.append(fullinst) - except NameError: - print >> sys.stderr, fullinst + " could not be found any match for macro " + macro - sys.exit(1) - -for inst in insts: - print inst -occurs = {} diff --git a/test/mppa/delout.sh b/test/mppa/delout.sh deleted file mode 100755 index e9c72e1c..00000000 --- a/test/mppa/delout.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -for folder in prng mmult sort instr interop; do - rm -f $folder/*.out - rm -f $folder/out/* -done diff --git a/test/mppa/do_test.sh b/test/mppa/do_test.sh deleted file mode 100644 index 5cc23dee..00000000 --- a/test/mppa/do_test.sh +++ /dev/null @@ -1,50 +0,0 @@ -do_test () { -cat << EOF - -## -# PRNG tests -## -EOF -(cd prng && make $1 -j$2) - -cat << EOF - -## -# Matrix Multiplication tests -## -EOF -(cd mmult && make $1 -j$2) - -cat << EOF - -## -# List sort tests -## -EOF -(cd sort && make $1 -j$2) - -cat << EOF - -## -# Instruction unit tests -## -EOF -(cd instr && make $1 -j$2) - -cat << EOF - -## -# Interoperability with GCC -## -EOF -(cd interop && make $1 -j$2) - -cat << EOF - -## -# printf wrapper test -## -(cd lib && make $1 -j$2) -EOF - -} diff --git a/test/mppa/general/clzd.c b/test/mppa/general/clzd.c deleted file mode 100644 index d3e8a8ec..00000000 --- a/test/mppa/general/clzd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 1) -{ - c = __builtin_kvx_clzd(t[0]); -} -END_TEST() diff --git a/test/mppa/general/clzw.c b/test/mppa/general/clzw.c deleted file mode 100644 index 7b5478fd..00000000 --- a/test/mppa/general/clzw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 1) -{ - c = __builtin_kvx_clzw(t[0]); -} -END_TEST() diff --git a/test/mppa/general/ctzd.c b/test/mppa/general/ctzd.c deleted file mode 100644 index bba869e1..00000000 --- a/test/mppa/general/ctzd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 1) -{ - c = __builtin_kvx_ctzd(t[0]); -} -END_TEST() diff --git a/test/mppa/general/ctzw.c b/test/mppa/general/ctzw.c deleted file mode 100644 index a7128b04..00000000 --- a/test/mppa/general/ctzw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 1) -{ - c = __builtin_kvx_ctzw(t[0]); -} -END_TEST() diff --git a/test/mppa/general/satd.c b/test/mppa/general/satd.c deleted file mode 100644 index 9d0d1cf9..00000000 --- a/test/mppa/general/satd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 2) -{ - c = __builtin_kvx_satd(t[0], t[1]); -} -END_TEST() diff --git a/test/mppa/general/sbmm8.c b/test/mppa/general/sbmm8.c deleted file mode 100644 index 91f13425..00000000 --- a/test/mppa/general/sbmm8.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 2) -{ - c = __builtin_kvx_sbmm8(t[0], t[1]); -} -END_TEST() diff --git a/test/mppa/general/sbmmt8.c b/test/mppa/general/sbmmt8.c deleted file mode 100644 index 7b120dfa..00000000 --- a/test/mppa/general/sbmmt8.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST_N(unsigned long long, 2) -{ - c = __builtin_kvx_sbmmt8(t[0], t[1]); -} -END_TEST() diff --git a/test/mppa/hardcheck.sh b/test/mppa/hardcheck.sh deleted file mode 100755 index b6538f0e..00000000 --- a/test/mppa/hardcheck.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -# Tests the execution of the binaries produced by CompCert, in hardware - -source do_test.sh - -do_test hardcheck 1 diff --git a/test/mppa/hardtest.sh b/test/mppa/hardtest.sh deleted file mode 100755 index 6321bc7d..00000000 --- a/test/mppa/hardtest.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -# Tests the validity of the tests, in hardware - -source do_test.sh - -do_test hardtest 1 diff --git a/test/mppa/instr/.gitignore b/test/mppa/instr/.gitignore deleted file mode 100644 index ea1472ec..00000000 --- a/test/mppa/instr/.gitignore +++ /dev/null @@ -1 +0,0 @@ -output/ diff --git a/test/mppa/instr/Makefile b/test/mppa/instr/Makefile deleted file mode 100644 index e4f964b3..00000000 --- a/test/mppa/instr/Makefile +++ /dev/null @@ -1,176 +0,0 @@ -SHELL := /bin/bash - -KVXC ?= k1-cos-gcc -CC ?= gcc -CCOMP ?= ccomp -OPTIM ?= -O2 -CFLAGS ?= $(OPTIM) -CCOMPFLAGS ?= $(CFLAGS) -SIMU ?= k1-mppa -TIMEOUT ?= --signal=SIGTERM 120s -DIFF ?= python2.7 floatcmp.py -reltol .00001 -HARDRUN ?= k1-jtag-runner - -DIR=./ -SRCDIR=$(DIR) -OUTDIR=$(DIR)/out -BINDIR=$(DIR)/bin -ASMDIR=$(DIR)/asm -LIB=../lib/system.x86-gcc.a -K1LIB=../lib/system.gcc.a - -## -# Intended flow : .c -> .gcc.s -> .gcc.bin -> .gcc.out -# -> .ccomp.s -> .ccomp.bin -> .ccomp.out -## - -KVXCPATH=$(shell which $(KVXC)) -CCPATH=$(shell which $(CC)) -CCOMPPATH=$(shell which $(CCOMP)) -SIMUPATH=$(shell which $(SIMU)) - -TESTNAMES?=$(notdir $(subst .c,,$(wildcard $(DIR)/*.c))) -X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) -GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.simu.out,$(TESTNAMES))) -CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.simu.out,$(TESTNAMES))) -GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.hard.out,$(TESTNAMES))) -CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.hard.out,$(TESTNAMES))) - -BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES))) - -## -# Targets -## - -all: $(BIN) - -GREEN=\033[0;32m -RED=\033[0;31m -YELLOW=\033[0;33m -NC=\033[0m - -.PHONY: -test: simutest - -.PHONY: -check: simucheck - -.PHONY: -simutest: $(X86_GCC_OUT) $(GCC_SIMUOUT) - @echo "Comparing x86 gcc output to k1 gcc.." - for test in $(TESTNAMES); do\ - x86out=$(OUTDIR)/$$test.x86-gcc.out;\ - gccout=$(OUTDIR)/$$test.gcc.simu.out;\ - if grep "__KVX__" -q $$test.c; then\ - printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ - elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ - >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -simucheck: $(GCC_SIMUOUT) $(CCOMP_SIMUOUT) - @echo "Comparing k1 gcc output to ccomp.." - @for test in $(TESTNAMES); do\ - gccout=$(OUTDIR)/$$test.gcc.simu.out;\ - ccompout=$(OUTDIR)/$$test.ccomp.simu.out;\ - if $(DIFF) $$ccompout $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ - >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -hardtest: $(X86_GCC_OUT) $(GCC_HARDOUT) - @echo "Comparing x86 gcc output to k1 gcc.." - for test in $(TESTNAMES); do\ - x86out=$(OUTDIR)/$$test.x86-gcc.out;\ - gccout=$(OUTDIR)/$$test.gcc.hard.out;\ - if grep "__KVX__" -q $$test.c; then\ - printf "$(YELLOW)UNTESTED: $$test.c contains an \`#ifdef __KVX__\`\n";\ - elif $(DIFF) $$x86out $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ - >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -hardcheck: $(GCC_HARDOUT) $(CCOMP_HARDOUT) - @echo "Comparing k1 gcc output to ccomp.." - @for test in $(TESTNAMES); do\ - gccout=$(OUTDIR)/$$test.gcc.hard.out;\ - ccompout=$(OUTDIR)/$$test.ccomp.hard.out;\ - if $(DIFF) $$ccompout $$gccout > /dev/null; test $${PIPESTATUS[0]} -ne 0; then\ - >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ - fi;\ - done - -## -# Rules -## - -.SECONDARY: -$(LIB): - (cd $(dir $(LIB)) && make) - -$(K1LIB): - (cd $(dir $(LIB)) && make) - -# Generating output - -## Version avec timeout -$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.simu.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.simu.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.hard.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.hard.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -# Assembly to binary - -$(BINDIR)/%.x86-gcc.bin: $(ASMDIR)/%.x86-gcc.s $(LIB) $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -$(BINDIR)/%.gcc.bin: $(ASMDIR)/%.gcc.s $(K1LIB) $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ - -$(BINDIR)/%.ccomp.bin: $(ASMDIR)/%.ccomp.s $(K1LIB) $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CCOMPFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ - -# Source to assembly - -$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CCOMPFLAGS) -S $< -o $@ diff --git a/test/mppa/instr/builtin32.c b/test/mppa/instr/builtin32.c deleted file mode 100644 index 9efb33cd..00000000 --- a/test/mppa/instr/builtin32.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) - int *ptr = &c; -#ifdef __KVX__ - int d = c; - a = __builtin_kvx_alclrw(ptr); - c = d; - -#endif -END_TEST32() - diff --git a/test/mppa/instr/builtin64.c b/test/mppa/instr/builtin64.c deleted file mode 100644 index 252eb2c6..00000000 --- a/test/mppa/instr/builtin64.c +++ /dev/null @@ -1,17 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) - long long *ptr = &c; -#ifdef __KVX__ - long long d = c; - a = __builtin_kvx_alclrd(ptr); - c = d; - c += a; - - c += __builtin_clzll(a); - - /* Removed the AFADDD builtin who was incorrect in CompCert, see #157 */ - // a = __builtin_kvx_afaddd(ptr, a); - // a = __builtin_kvx_afaddd(ptr, a); -#endif -END_TEST64() diff --git a/test/mppa/instr/div32.c b/test/mppa/instr/div32.c deleted file mode 100644 index 83c3a0e3..00000000 --- a/test/mppa/instr/div32.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) - c = a/b; -END_TEST32() diff --git a/test/mppa/instr/divf32.c b/test/mppa/instr/divf32.c deleted file mode 100644 index 513a3293..00000000 --- a/test/mppa/instr/divf32.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(float) - c = a / b; -END_TESTF32() diff --git a/test/mppa/instr/divf64.c b/test/mppa/instr/divf64.c deleted file mode 100644 index 0dd23826..00000000 --- a/test/mppa/instr/divf64.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(double) - c = a / b; -END_TESTF64() diff --git a/test/mppa/instr/divu32.c b/test/mppa/instr/divu32.c deleted file mode 100644 index 1fe196c4..00000000 --- a/test/mppa/instr/divu32.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = a/b; -} -END_TEST32() diff --git a/test/mppa/instr/f32.c b/test/mppa/instr/f32.c deleted file mode 100644 index 7e304aeb..00000000 --- a/test/mppa/instr/f32.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(float) - c = ((float)a + (float)b); - c += ((float)a * (float)b); - c += (-(float)a); - c += ((float)a - (float)b); -END_TESTF32() diff --git a/test/mppa/instr/f64.c b/test/mppa/instr/f64.c deleted file mode 100644 index be8094c9..00000000 --- a/test/mppa/instr/f64.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(double) - c = ((double)a + (double)b); - c += ((double)a * (double)b); - c += (-(double)a); - c += ((double)a - (double)b); -END_TESTF64() diff --git a/test/mppa/instr/floatcmp.py b/test/mppa/instr/floatcmp.py deleted file mode 100755 index 49f1bc13..00000000 --- a/test/mppa/instr/floatcmp.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python2.7 - -import argparse as ap -import sys - -parser = ap.ArgumentParser() -parser.add_argument("file1", help="First file to compare") -parser.add_argument("file2", help="Second file to compare") -parser.add_argument("-reltol", help="Relative error") -parser.add_argument("-abstol", help="Absolute error") -parser.add_argument("-s", help="Silent output", action="store_true") -args = parser.parse_args() - -reltol = float(args.reltol) if args.reltol else None -abstol = float(args.abstol) if args.abstol else None -silent = args.s - -if silent: - sys.stdout = open("/dev/null", "w") - -import re -from math import fabs - -def floatcmp(f1, f2): - if abstol: - if fabs(f1 - f2) > abstol: - return False - if reltol: - if f2 != 0. and fabs((f1 - f2) / f2) > reltol: - return False - return True - -class Parsed(list): - def __eq__(self, other): - if len(self) != len(other): - return False - comps = zip(self, other) - for comp in comps: - if all(isinstance(compElt, str) for compElt in comp): - if comp[0] != comp[1]: - return False - elif all (isinstance(compElt, float) for compElt in comp): - if not floatcmp(comp[0], comp[1]): - return False - else: - return False - return True - - def __ne__(self, other): - return not self.__eq__(other) - -parseLine = re.compile(r"\s*(\S+)") -def readline(line): - words = parseLine.findall(line) - parsed = Parsed([]) - for word in words: - try: - parse = float(word) - parsed.append(parse) - except ValueError: - parsed.append(word) - return parsed - -def readfile(filename): - L = [] - try: - with open(filename) as f: - for line in f: - L.append(readline(line)) - except IOError: - print "Unable to read {}".format(filename) - sys.exit(2) - return L - -L1 = readfile(args.file1) -L2 = readfile(args.file2) - -if len(L1) != len(L2): - print "The files have different amount of lines" - print "\t{}: {} lines".format(args.file1, len(L1)) - print "\t{}: {} lines".format(args.file2, len(L2)) - sys.exit(1) - -cmpL = zip(L1, L2) -for i, cmpElt in enumerate(cmpL): - if cmpElt[0] != cmpElt[1]: - print "The files differ at line {}".format(i) - print "\t{}: {}".format(args.file1, cmpElt[0]) - print "\t{}: {}".format(args.file2, cmpElt[1]) - sys.exit(1) - -print "Comparison succeeded" -sys.exit(0) diff --git a/test/mppa/instr/framework.h b/test/mppa/instr/framework.h deleted file mode 100644 index 3bbfa271..00000000 --- a/test/mppa/instr/framework.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef __FRAMEWORK_H__ -#define __FRAMEWORK_H__ - -#include -#include "../prng/prng.c" - -#define BEGIN_TEST_N(type, N)\ - int main(void){\ - type t[N], c, i, j, S;\ - srand(0);\ - S = 0;\ - for (i = 0 ; i < 100 ; i++){\ - c = randlong();\ - for (j = 0 ; j < N ; j++)\ - t[j] = randlong();\ - /* END BEGIN_TEST_N */ - -#define BEGIN_TEST(type)\ - int main(void){\ - type a, b, c, S;\ - int i;\ - srand(0);\ - S = 0;\ - for (i = 0 ; i < 100 ; i++){\ - c = randlong();\ - a = randlong();\ - b = randlong(); - /* END BEGIN_TEST */ - -/* In between BEGIN_TEST and END_TEST : definition of c */ - -#define END_TEST64()\ - printf("%llu\t%llu\t%llu\n", a, b, c);\ - S += c;\ - }\ - return S;\ - } - /* END END_TEST64 */ - -#define END_TEST32()\ - printf("%u\t%u\t%u\n", a, b, c);\ - S += c;\ - }\ - return S;\ - } - /* END END_TEST32 */ - -#define END_TESTF32()\ - printf("%e\t%e\t%e\n", a, b, c);\ - S += c;\ - }\ - return 0;\ - } - /* END END_TESTF32 */ - -#define END_TESTF64()\ - printf("%e\t%e\t%e\n", a, b, c);\ - S += c;\ - }\ - return 0;\ - } - /* END END_TESTF64 */ - -#endif - - diff --git a/test/mppa/instr/i32.c b/test/mppa/instr/i32.c deleted file mode 100644 index e350931c..00000000 --- a/test/mppa/instr/i32.c +++ /dev/null @@ -1,149 +0,0 @@ -#include "framework.h" - -int sum(int a, int b){ - return a+b; -} - -int make(int a){ - return a; -} - -int tailsum(int a, int b){ - return make(a+b); -} - -int fact(int a){ - int r = 1; - int i; - for (i = 1; i < a; i++) - r *= i; - return r; -} - -float int2float(int v){ - return v; -} - -BEGIN_TEST(int) - c = a+b; - c += a&b; - - /* testing if, cb version */ - if ((a & 0x1) == 1) - c += fact(1); - else - c += fact(2); - - if (a & 0x1 == 0) - c += fact(4); - else - c += fact(8); - - if (a & 0x1 == 0) - c += fact(4); - else - c += fact(8); - - b = !(a & 0x01); - if (!b) - c += fact(16); - else - c += fact(32); - - c += sum(make(a), make(b)); - c += (long long) a; - - if (0 > (a & 0x1) - 1) - c += fact(64); - else - c += fact(128); - - if (0 >= (a & 0x1)) - c += fact(256); - else - c += fact(512); - - if ((a & 0x1) > 0) - c += fact(1024); - else - c += fact(2048); - - if ((a & 0x1) - 1 >= 0) - c += fact(4096); - else - c += fact(8192); - - /* cmoved version */ - if ((a & 0x1) == 1) - c += 1; - else - c += 2; - - if (a & 0x1 == 0) - c += 4; - else - c += 8; - - if (a & 0x1 == 0) - c += 4; - else - c += 8; - - b = !(a & 0x01); - if (!b) - c += 16; - else - c += 32; - - if (0 > (a & 0x1) - 1) - c += 64; - else - c += 128; - - if (0 >= (a & 0x1)) - c += 256; - else - c += 512; - - if ((a & 0x1) > 0) - c += 1024; - else - c += 2048; - - if ((a & 0x1) - 1 >= 0) - c += 4096; - else - c += 8192; - - c += ((a & 0x1) == (b & 0x1)); - c += (a > b); - c += (a <= b); - c += (a < b); - c += (a + b) / 2; - c += (int) int2float(a) + (int) int2float(b) + (int) int2float(42.3); - c += (a << 4); // addx16w - c += (a << 3); // addx8w - c += (a << 2); // addx4w - c += (a << 1); // addx2w - - c += ~a & b; // andnw - - int j; - for (j = 0 ; j < 10 ; j++) - c += a; - int k; - for (k = 0 ; k < (b & 0x8) ; k++) - c += a; - - char s[] = "Tome and Cherry at the playa\n"; - c += s[(a & (sizeof(s)-1))]; - - unsigned char s2[] = "Tim is sorry at the playa\n"; - c += s2[a & (sizeof(s) - 1)]; - - c += a*b; - c += a-b; - c += a << (b & 0x8); - - c += sum(a, b); -END_TEST32() diff --git a/test/mppa/instr/i64.c b/test/mppa/instr/i64.c deleted file mode 100644 index e869d93c..00000000 --- a/test/mppa/instr/i64.c +++ /dev/null @@ -1,169 +0,0 @@ -#include "framework.h" - -long long sum(long long a, long long b){ - return a+b; -} - -long long diff(long long a, long long b){ - return a-b; -} - -long long mul(long long a, long long b){ - return a*b; -} - -long long make(long long a){ - return a; -} - -long long random_op(long long a, long long b){ - long long d = 3; - long long (*op)(long long, long long); - - if (a % d == 0) - op = sum; - else if (a % d == 1) - op = diff; - else - op = mul; - - return op(a, b); -} - -long fact(long a){ - long r = 1; - long i; - for (i = 1; i < a; i++) - r *= i; - return r; -} - -double long2double(long v){ - return v; -} - -BEGIN_TEST(long long) - c = a&b; - c += a*b; - c += -a; - c += a | b; - c += a-b; - c += a >> (b & 0x8LL); - c += a >> (b & 0x8ULL); - c += a % b; - c += (a << 4); // addx16d - c += (a << 3); // addx8d - c += (a << 2); // addx4d - c += (a << 1); // addx2d - - c += ~a & b; // andnd - - long long d = 3; - long long (*op)(long long, long long); - - if (a % d == 0) - op = sum; - else if (a % d == 1) - op = diff; - else - op = mul; - - c += op(make(a), make(b)); - c += random_op(a, b); - c += a/b; - c += a^b; - c += (unsigned int) a; - - /* Testing if, cb */ - if (0 != (a & 0x1LL)) - c += fact(1); - else - c += fact(2); - - if (0 > (a & 0x1LL)) - c += fact(4); - else - c += fact(8); - - if (0 >= (a & 0x1LL) - 1) - c += fact(16); - else - c += fact(32); - - if ((unsigned long long)(a & 0x1LL) >= 1) - c += fact(18); - else - c += fact(31); - - - if (a-41414141 > 0) - c += fact(13); - else - c += fact(31); - - if (a & 0x1LL > 0) - c += fact(64); - else - c += fact(128); - - if ((a & 0x1LL) - 1 >= 0) - c += fact(256); - else - c += fact(512); - - if (0 == (a & 0x1LL)) - c += fact(1024); - else - c += fact(2048); - - /* Testing if, cmoved */ - if (0 != (a & 0x1LL)) - c += 1; - else - c += 2; - - if (0 > (a & 0x1LL)) - c += 4; - else - c += 8; - - if (0 >= (a & 0x1LL) - 1) - c += 16; - else - c += 32; - - if (a-41414141 > 0) - c += 13; - else - c += 31; - - if (a & 0x1LL > 0) - c += 64; - else - c += 128; - - if ((a & 0x1LL) - 1 >= 0) - c += 256; - else - c += 512; - - if (0 == (a & 0x1LL)) - c += 1024; - else - c += 2048; - - c += ((a & 0x1LL) == (b & 0x1LL)); - c += (a >= b); - c += (a > b); - c += (a <= b); - c += (a < b); - c += (long) long2double(a) + (long) long2double(b) + (long) long2double(42.3); - - int j; - - for (j = 0 ; j < (b & 0x8LL) ; j++) - c += a; - - c += ((a & 0x1LL) == (b & 0x1LL)); - -END_TEST64() diff --git a/test/mppa/instr/individual/andw.c b/test/mppa/instr/individual/andw.c deleted file mode 100644 index 799dc7fb..00000000 --- a/test/mppa/instr/individual/andw.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) - c = a&b; -END_TEST32() diff --git a/test/mppa/instr/individual/branch.c b/test/mppa/instr/individual/branch.c deleted file mode 100644 index c9937e31..00000000 --- a/test/mppa/instr/individual/branch.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if ((a & 0x1) == 1) - c = 0; - else - c = 1; -} -END_TEST32() diff --git a/test/mppa/instr/individual/branchz.c b/test/mppa/instr/individual/branchz.c deleted file mode 100644 index d3e021b5..00000000 --- a/test/mppa/instr/individual/branchz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if (a & 0x1 == 0) - c = 0; - else - c = 1; -} -END_TEST32() diff --git a/test/mppa/instr/individual/branchzu.c b/test/mppa/instr/individual/branchzu.c deleted file mode 100644 index d0169174..00000000 --- a/test/mppa/instr/individual/branchzu.c +++ /dev/null @@ -1,11 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - b = !(a & 0x01); - if (!b) - c = 0; - else - c = 1; -} -END_TEST32() diff --git a/test/mppa/instr/individual/call.c b/test/mppa/instr/individual/call.c deleted file mode 100644 index ba2ec323..00000000 --- a/test/mppa/instr/individual/call.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "framework.h" - -int sum(int a, int b){ - return a+b; -} - -int make(int a){ - return a; -} - -BEGIN_TEST(int) -{ - c = sum(make(a), make(b)); -} -END_TEST32() -/* RETURN VALUE: 60 */ diff --git a/test/mppa/instr/individual/cast_S32_S64.c b/test/mppa/instr/individual/cast_S32_S64.c deleted file mode 100644 index 09c97e00..00000000 --- a/test/mppa/instr/individual/cast_S32_S64.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = (long long) a; -} -END_TEST32() diff --git a/test/mppa/instr/individual/cast_S64_U32.c b/test/mppa/instr/individual/cast_S64_U32.c deleted file mode 100644 index 2d9dc723..00000000 --- a/test/mppa/instr/individual/cast_S64_U32.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = (unsigned int) a; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.deqz.c b/test/mppa/instr/individual/cb.deqz.c deleted file mode 100644 index 6da2ab07..00000000 --- a/test/mppa/instr/individual/cb.deqz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if (0 != (a & 0x1LL)) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.dgez.c b/test/mppa/instr/individual/cb.dgez.c deleted file mode 100644 index 7bef25ad..00000000 --- a/test/mppa/instr/individual/cb.dgez.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if (0 > (a & 0x1LL)) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.dgtz.c b/test/mppa/instr/individual/cb.dgtz.c deleted file mode 100644 index 1a43fb1f..00000000 --- a/test/mppa/instr/individual/cb.dgtz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if (0 >= (a & 0x1LL) - 1) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.dlez.c b/test/mppa/instr/individual/cb.dlez.c deleted file mode 100644 index 2fb97939..00000000 --- a/test/mppa/instr/individual/cb.dlez.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if (a & 0x1LL > 0) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.dltz.c b/test/mppa/instr/individual/cb.dltz.c deleted file mode 100644 index a431d5d0..00000000 --- a/test/mppa/instr/individual/cb.dltz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if ((a & 0x1LL) - 1 >= 0) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.dnez.c b/test/mppa/instr/individual/cb.dnez.c deleted file mode 100644 index 44516cbe..00000000 --- a/test/mppa/instr/individual/cb.dnez.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - if (0 == (a & 0x1LL)) - c = 1; - else - c = 0; -} -END_TEST64() diff --git a/test/mppa/instr/individual/cb.wgez.c b/test/mppa/instr/individual/cb.wgez.c deleted file mode 100644 index 5779ad92..00000000 --- a/test/mppa/instr/individual/cb.wgez.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if (0 > (a & 0x1) - 1) - c = 1; - else - c = 0; -} -END_TEST32() diff --git a/test/mppa/instr/individual/cb.wgtz.c b/test/mppa/instr/individual/cb.wgtz.c deleted file mode 100644 index abb695bd..00000000 --- a/test/mppa/instr/individual/cb.wgtz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if (0 >= (a & 0x1)) - c = 1; - else - c = 0; -} -END_TEST32() diff --git a/test/mppa/instr/individual/cb.wlez.c b/test/mppa/instr/individual/cb.wlez.c deleted file mode 100644 index 3a2e08c1..00000000 --- a/test/mppa/instr/individual/cb.wlez.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if ((a & 0x1) > 0) - c = 1; - else - c = 0; -} -END_TEST32() diff --git a/test/mppa/instr/individual/cb.wltz.c b/test/mppa/instr/individual/cb.wltz.c deleted file mode 100644 index 5d52c72a..00000000 --- a/test/mppa/instr/individual/cb.wltz.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - if ((a & 0x1) - 1 >= 0) - c = 1; - else - c = 0; -} -END_TEST32() diff --git a/test/mppa/instr/individual/compd.eq.c b/test/mppa/instr/individual/compd.eq.c deleted file mode 100644 index 4fe8de2a..00000000 --- a/test/mppa/instr/individual/compd.eq.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = ((a & 0x1LL) == (b & 0x1LL)); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.geu.c b/test/mppa/instr/individual/compd.geu.c deleted file mode 100644 index fccf0804..00000000 --- a/test/mppa/instr/individual/compd.geu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = (a >= b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.gt.c b/test/mppa/instr/individual/compd.gt.c deleted file mode 100644 index b9901436..00000000 --- a/test/mppa/instr/individual/compd.gt.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = (a > b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.le.c b/test/mppa/instr/individual/compd.le.c deleted file mode 100644 index 6fa0f103..00000000 --- a/test/mppa/instr/individual/compd.le.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = (a <= b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.leu.c b/test/mppa/instr/individual/compd.leu.c deleted file mode 100644 index 1ad18281..00000000 --- a/test/mppa/instr/individual/compd.leu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = (a <= b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.lt.c b/test/mppa/instr/individual/compd.lt.c deleted file mode 100644 index c42cda56..00000000 --- a/test/mppa/instr/individual/compd.lt.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = (a < b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.ltu.c b/test/mppa/instr/individual/compd.ltu.c deleted file mode 100644 index b03d4d53..00000000 --- a/test/mppa/instr/individual/compd.ltu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = (a < b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compd.ne.c b/test/mppa/instr/individual/compd.ne.c deleted file mode 100644 index fd9d0b28..00000000 --- a/test/mppa/instr/individual/compd.ne.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = ((a & 0x1ULL) != (b & 0x1ULL)); -} -END_TEST64() diff --git a/test/mppa/instr/individual/compw.eq.c b/test/mppa/instr/individual/compw.eq.c deleted file mode 100644 index cd93f365..00000000 --- a/test/mppa/instr/individual/compw.eq.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = ((a & 0x1) == (b & 0x1)); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.geu.c b/test/mppa/instr/individual/compw.geu.c deleted file mode 100644 index b8fb1adf..00000000 --- a/test/mppa/instr/individual/compw.geu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = (a >= b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.gt.c b/test/mppa/instr/individual/compw.gt.c deleted file mode 100644 index 5f6bc907..00000000 --- a/test/mppa/instr/individual/compw.gt.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = (a > b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.gtu.c b/test/mppa/instr/individual/compw.gtu.c deleted file mode 100644 index 947f6a14..00000000 --- a/test/mppa/instr/individual/compw.gtu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = (a > b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.le.c b/test/mppa/instr/individual/compw.le.c deleted file mode 100644 index 35ec6b7d..00000000 --- a/test/mppa/instr/individual/compw.le.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = (a <= b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.leu.c b/test/mppa/instr/individual/compw.leu.c deleted file mode 100644 index 74ebfb42..00000000 --- a/test/mppa/instr/individual/compw.leu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = (a <= b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.lt.c b/test/mppa/instr/individual/compw.lt.c deleted file mode 100644 index cb1f30bd..00000000 --- a/test/mppa/instr/individual/compw.lt.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = (a < b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.ltu.c b/test/mppa/instr/individual/compw.ltu.c deleted file mode 100644 index 6a0c5af1..00000000 --- a/test/mppa/instr/individual/compw.ltu.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = (a < b); -} -END_TEST32() diff --git a/test/mppa/instr/individual/compw.ne.c b/test/mppa/instr/individual/compw.ne.c deleted file mode 100644 index 7035e2c7..00000000 --- a/test/mppa/instr/individual/compw.ne.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = ((a & 0x1U) != (b & 0x1U)); -} -END_TEST32() diff --git a/test/mppa/instr/individual/div2.c b/test/mppa/instr/individual/div2.c deleted file mode 100644 index b5dfe63a..00000000 --- a/test/mppa/instr/individual/div2.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = (a + b) / 2; -} -END_TEST32() diff --git a/test/mppa/instr/individual/doubleconv.c b/test/mppa/instr/individual/doubleconv.c deleted file mode 100644 index 55b1ddab..00000000 --- a/test/mppa/instr/individual/doubleconv.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -double long2double(long v){ - return v; -} - -BEGIN_TEST(long) - c = (long) long2double(a) + (long) long2double(b) + (long) long2double(42.3); -END_TEST64() diff --git a/test/mppa/instr/individual/floatconv.c b/test/mppa/instr/individual/floatconv.c deleted file mode 100644 index 32b798e1..00000000 --- a/test/mppa/instr/individual/floatconv.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -float int2float(int v){ - return v; -} - -BEGIN_TEST(int) - c = (int) int2float(a) + (int) int2float(b) + (int) int2float(42.3); -END_TEST32() diff --git a/test/mppa/instr/individual/fmuld.c b/test/mppa/instr/individual/fmuld.c deleted file mode 100644 index 03c990fa..00000000 --- a/test/mppa/instr/individual/fmuld.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(double) -{ - c = ((double)a * (double)b); -} -END_TESTF64() diff --git a/test/mppa/instr/individual/fmulw.c b/test/mppa/instr/individual/fmulw.c deleted file mode 100644 index f85eba64..00000000 --- a/test/mppa/instr/individual/fmulw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(float) -{ - c = ((float)a * (float)b); -} -END_TESTF32() diff --git a/test/mppa/instr/individual/fnegd.c b/test/mppa/instr/individual/fnegd.c deleted file mode 100644 index 974eb7e8..00000000 --- a/test/mppa/instr/individual/fnegd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(double) -{ - c = (-(double)a); -} -END_TESTF64() diff --git a/test/mppa/instr/individual/fnegw.c b/test/mppa/instr/individual/fnegw.c deleted file mode 100644 index fbeaab8e..00000000 --- a/test/mppa/instr/individual/fnegw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(float) -{ - c = (-(float)a); -} -END_TESTF64() diff --git a/test/mppa/instr/individual/for.c b/test/mppa/instr/individual/for.c deleted file mode 100644 index 373ab6bd..00000000 --- a/test/mppa/instr/individual/for.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - int j; - for (j = 0 ; j < 10 ; j++) - c += a; -} -END_TEST32() diff --git a/test/mppa/instr/individual/forvar.c b/test/mppa/instr/individual/forvar.c deleted file mode 100644 index 9e43c198..00000000 --- a/test/mppa/instr/individual/forvar.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - int k; - for (k = 0 ; k < (b & 0x8) ; k++) - c += a; -} -END_TEST32() diff --git a/test/mppa/instr/individual/forvarl.c b/test/mppa/instr/individual/forvarl.c deleted file mode 100644 index c1fe90fd..00000000 --- a/test/mppa/instr/individual/forvarl.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long int) -{ - int j; - - for (j = 0 ; j < (b & 0x8LL) ; j++) - c += a; -} -END_TEST64() diff --git a/test/mppa/instr/individual/fsbfd.c b/test/mppa/instr/individual/fsbfd.c deleted file mode 100644 index f80c1efe..00000000 --- a/test/mppa/instr/individual/fsbfd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(double) -{ - c = ((double)a - (double)b); -} -END_TESTF64() diff --git a/test/mppa/instr/individual/fsbfw.c b/test/mppa/instr/individual/fsbfw.c deleted file mode 100644 index 067c40b5..00000000 --- a/test/mppa/instr/individual/fsbfw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(float) -{ - c = ((float)a - (float)b); -} -END_TESTF64() diff --git a/test/mppa/instr/individual/indirect_call.c b/test/mppa/instr/individual/indirect_call.c deleted file mode 100644 index f376c00a..00000000 --- a/test/mppa/instr/individual/indirect_call.c +++ /dev/null @@ -1,33 +0,0 @@ -#include "framework.h" - -long long sum(long long a, long long b){ - return a+b; -} - -long long diff(long long a, long long b){ - return a-b; -} - -long long mul(long long a, long long b){ - return a*b; -} - -long long make(long long a){ - return a; -} - -BEGIN_TEST(long long) -{ - long long d = 3; - long long (*op)(long long, long long); - - if (a % d == 0) - op = sum; - else if (a % d == 1) - op = diff; - else - op = mul; - - c += op(make(a), make(b)); -} -END_TEST64() diff --git a/test/mppa/instr/individual/indirect_tailcall.c b/test/mppa/instr/individual/indirect_tailcall.c deleted file mode 100644 index e6c16ea1..00000000 --- a/test/mppa/instr/individual/indirect_tailcall.c +++ /dev/null @@ -1,33 +0,0 @@ -#include "framework.h" - -long long sum(long long a, long long b){ - return a+b; -} - -long long diff(long long a, long long b){ - return a-b; -} - -long long mul(long long a, long long b){ - return a*b; -} - -long long random_op(long long a, long long b){ - long long d = 3; - long long (*op)(long long, long long); - - if (a % d == 0) - op = sum; - else if (a % d == 1) - op = diff; - else - op = mul; - - return op(a, b); -} - -BEGIN_TEST(long long) -{ - c += random_op(a, b); -} -END_TEST64() diff --git a/test/mppa/instr/individual/lbs.c b/test/mppa/instr/individual/lbs.c deleted file mode 100644 index 22a50632..00000000 --- a/test/mppa/instr/individual/lbs.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - char s[] = "Tome and Cherry at the playa\n"; - - c = s[(a & (sizeof(s)-1))]; -} -END_TEST32() diff --git a/test/mppa/instr/individual/lbz.c b/test/mppa/instr/individual/lbz.c deleted file mode 100644 index 04ba098d..00000000 --- a/test/mppa/instr/individual/lbz.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - unsigned char s[] = "Tim is sorry at the playa\n"; - - c = s[a & (sizeof(s) - 1)]; -} -END_TEST32() diff --git a/test/mppa/instr/individual/muld.c b/test/mppa/instr/individual/muld.c deleted file mode 100644 index f7e23850..00000000 --- a/test/mppa/instr/individual/muld.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = a*b; -} -END_TEST64() diff --git a/test/mppa/instr/individual/mulw.c b/test/mppa/instr/individual/mulw.c deleted file mode 100644 index a91d966e..00000000 --- a/test/mppa/instr/individual/mulw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = a * b; -} -END_TEST32() diff --git a/test/mppa/instr/individual/negd.c b/test/mppa/instr/individual/negd.c deleted file mode 100644 index 837b9828..00000000 --- a/test/mppa/instr/individual/negd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = -a; -} -END_TEST64() diff --git a/test/mppa/instr/individual/ord.c b/test/mppa/instr/individual/ord.c deleted file mode 100644 index cae1ae8b..00000000 --- a/test/mppa/instr/individual/ord.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = a | b; -} -END_TEST64() diff --git a/test/mppa/instr/individual/sbfd.c b/test/mppa/instr/individual/sbfd.c deleted file mode 100644 index 77c28c77..00000000 --- a/test/mppa/instr/individual/sbfd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = a-b; -} -END_TEST64() diff --git a/test/mppa/instr/individual/sbfw.c b/test/mppa/instr/individual/sbfw.c deleted file mode 100644 index e38a1fff..00000000 --- a/test/mppa/instr/individual/sbfw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = a-b; -} -END_TEST32() diff --git a/test/mppa/instr/individual/simple.c b/test/mppa/instr/individual/simple.c deleted file mode 100644 index 944f09c9..00000000 --- a/test/mppa/instr/individual/simple.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = a+b; -} -END_TEST32() diff --git a/test/mppa/instr/individual/sllw.c b/test/mppa/instr/individual/sllw.c deleted file mode 100644 index 6dd41a6c..00000000 --- a/test/mppa/instr/individual/sllw.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) -{ - c = a << (b & 0x8); -} -END_TEST32() diff --git a/test/mppa/instr/individual/srad.c b/test/mppa/instr/individual/srad.c deleted file mode 100644 index 00be9d0c..00000000 --- a/test/mppa/instr/individual/srad.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = a >> (b & 0x8LL); -} -END_TEST64() diff --git a/test/mppa/instr/individual/srld.c b/test/mppa/instr/individual/srld.c deleted file mode 100644 index 14970efd..00000000 --- a/test/mppa/instr/individual/srld.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = a >> (b & 0x8ULL); -} -END_TEST64() diff --git a/test/mppa/instr/individual/tailcall.c b/test/mppa/instr/individual/tailcall.c deleted file mode 100644 index 6c659a01..00000000 --- a/test/mppa/instr/individual/tailcall.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "framework.h" - -int make(int a){ - return a; -} - -int sum(int a, int b){ - return make(a+b); -} - -BEGIN_TEST(int) -{ - c = sum(a, b); -} -END_TEST32() -/* RETURN VALUE: 60 */ diff --git a/test/mppa/instr/individual/udivd.c b/test/mppa/instr/individual/udivd.c deleted file mode 100644 index cfb31881..00000000 --- a/test/mppa/instr/individual/udivd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = a/b; -} -END_TEST64() diff --git a/test/mppa/instr/individual/umodd.c b/test/mppa/instr/individual/umodd.c deleted file mode 100644 index a7f25f1c..00000000 --- a/test/mppa/instr/individual/umodd.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = a%b; -} -END_TEST64() diff --git a/test/mppa/instr/individual/xord.c b/test/mppa/instr/individual/xord.c deleted file mode 100644 index b6a90cb0..00000000 --- a/test/mppa/instr/individual/xord.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(long long) -{ - c = a^b; -} -END_TEST64() diff --git a/test/mppa/instr/modi32.c b/test/mppa/instr/modi32.c deleted file mode 100644 index 958ae920..00000000 --- a/test/mppa/instr/modi32.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(int) - c = a%b; -END_TEST32() diff --git a/test/mppa/instr/modui32.c b/test/mppa/instr/modui32.c deleted file mode 100644 index a39034a8..00000000 --- a/test/mppa/instr/modui32.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = a%b; -} -END_TEST32() diff --git a/test/mppa/instr/ui32.c b/test/mppa/instr/ui32.c deleted file mode 100644 index f56a9b95..00000000 --- a/test/mppa/instr/ui32.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned int) -{ - c = (long long) a; - c += (a >= b); - c += (a > b); - c += (a <= b); - c += (a < b); - c += ((a & 0x1U) != (b & 0x1U)); -} -END_TEST32() diff --git a/test/mppa/instr/ui64.c b/test/mppa/instr/ui64.c deleted file mode 100644 index 908dec3c..00000000 --- a/test/mppa/instr/ui64.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "framework.h" - -BEGIN_TEST(unsigned long long) -{ - c = (a > b); - c += (a <= b); - c += (a < b); - c += ((a & 0x1ULL) != (b & 0x1ULL)); -} -END_TEST64() diff --git a/test/mppa/interop/.gitignore b/test/mppa/interop/.gitignore deleted file mode 100644 index ea1472ec..00000000 --- a/test/mppa/interop/.gitignore +++ /dev/null @@ -1 +0,0 @@ -output/ diff --git a/test/mppa/interop/Makefile b/test/mppa/interop/Makefile deleted file mode 100644 index a0d4d7da..00000000 --- a/test/mppa/interop/Makefile +++ /dev/null @@ -1,365 +0,0 @@ -SHELL := /bin/bash - -KVXC ?= k1-cos-gcc -CC ?= gcc -CCOMP ?= ccomp -CFLAGS ?= -O2 -Wno-varargs -SIMU ?= k1-mppa -TIMEOUT ?= --signal=SIGTERM 120s -HARDRUN ?= k1-jtag-runner - -DIR=./ -SRCDIR=$(DIR) -OUTDIR=$(DIR)/out -BINDIR=$(DIR)/bin -ASMDIR=$(DIR)/asm -OBJDIR=$(DIR)/obj -COMMON=common -VAARG_COMMON=vaarg_common - -## -# Intended flow : .c -> .gcc.s -> .gcc.o -> .gcc.bin -> .gcc.out -# -> .ccomp.s -> .ccomp.o -> .ccomp.bin -> .ccomp.out -# -> .x86-gcc.s -> .x86-gcc.o -> .x86-gcc.bin -> .x86-gcc.out -# -# The .o -> .bin part uses $(COMMON).gcc.o or $(COMMON).x86-gcc.o depending on the architecture -# There is also a $(VAARG_COMMON) that is the same than $(COMMON) but with va_arg -## - -KVXCPATH=$(shell which $(KVXC)) -CCPATH=$(shell which $(CC)) -CCOMPPATH=$(shell which $(CCOMP)) -SIMUPATH=$(shell which $(SIMU)) - -TESTNAMES ?= $(filter-out $(VAARG_COMMON),$(filter-out $(COMMON),$(notdir $(subst .c,,$(wildcard $(DIR)/*.c))))) - -X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) -GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.simu.out,$(TESTNAMES))) -GCC_REV_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.simu.out,$(TESTNAMES))) -CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.simu.out,$(TESTNAMES))) - -GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.hard.out,$(TESTNAMES))) -GCC_REV_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.hard.out,$(TESTNAMES))) -CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.hard.out,$(TESTNAMES))) - -VAARG_X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.vaarg.out,$(TESTNAMES))) -VAARG_GCC_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.vaarg.simu.out,$(TESTNAMES))) -VAARG_GCC_REV_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.vaarg.simu.out,$(TESTNAMES))) -VAARG_CCOMP_SIMUOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.vaarg.simu.out,$(TESTNAMES))) - -VAARG_GCC_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.vaarg.hard.out,$(TESTNAMES))) -VAARG_GCC_REV_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.rev.vaarg.hard.out,$(TESTNAMES))) -VAARG_CCOMP_HARDOUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.vaarg.hard.out,$(TESTNAMES))) - -BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.rev.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.vaarg.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.vaarg.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .ccomp.vaarg.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.rev.vaarg.bin,$(TESTNAMES))) - -## -# Targets -## - -all: $(BIN) - -GREEN=\033[0;32m -RED=\033[0;31m -NC=\033[0m - -.PHONY: -test: simutest - -.PHONY: -simutest: $(X86_GCC_OUT) $(GCC_SIMUOUT) $(VAARG_X86_GCC_OUT) $(VAARG_GCC_SIMUOUT) - @echo "Comparing x86 gcc output to k1 gcc.." - @for test in $(TESTNAMES); do\ - x86out=$(OUTDIR)/$$test.x86-gcc.out;\ - gccout=$(OUTDIR)/$$test.gcc.simu.out;\ - vaarg_x86out=$(OUTDIR)/$$test.x86-gcc.vaarg.out;\ - vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.simu.out;\ - if ! diff $$x86out $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_x86out $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_x86out and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_x86out and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -check: simucheck - -.PHONY: -simucheck: $(GCC_SIMUOUT) $(CCOMP_SIMUOUT) $(GCC_REV_SIMUOUT) $(VAARG_GCC_SIMUOUT) $(VAARG_CCOMP_SIMUOUT) $(VAARG_GCC_REV_SIMUOUT) - @echo "Comparing k1 gcc output to ccomp.." - @for test in $(TESTNAMES); do\ - gccout=$(OUTDIR)/$$test.gcc.simu.out;\ - ccompout=$(OUTDIR)/$$test.ccomp.simu.out;\ - gccrevout=$(OUTDIR)/$$test.gcc.rev.simu.out;\ - vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.simu.out;\ - vaarg_ccompout=$(OUTDIR)/$$test.ccomp.vaarg.simu.out;\ - vaarg_gccrevout=$(OUTDIR)/$$test.gcc.rev.vaarg.simu.out;\ - if ! diff $$ccompout $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$gccrevout $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$gccrevout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$gccrevout and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_ccompout $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_ccompout and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_ccompout and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_gccrevout $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_gccrevout and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_gccrevout and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -hardtest: $(X86_GCC_OUT) $(GCC_HARDOUT) $(VAARG_X86_GCC_OUT) $(VAARG_GCC_HARDOUT) - @echo "Comparing x86 gcc output to k1 gcc.." - @for test in $(TESTNAMES); do\ - x86out=$(OUTDIR)/$$test.x86-gcc.out;\ - gccout=$(OUTDIR)/$$test.gcc.hard.out;\ - vaarg_x86out=$(OUTDIR)/$$test.x86-gcc.vaarg.out;\ - vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.hard.out;\ - if ! diff $$x86out $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$x86out and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$x86out and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_x86out $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_x86out and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_x86out and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - done - -.PHONY: -hardcheck: $(GCC_HARDOUT) $(CCOMP_HARDOUT) $(GCC_REV_HARDOUT) $(VAARG_GCC_HARDOUT) $(VAARG_CCOMP_HARDOUT) $(VAARG_GCC_REV_HARDOUT) - @echo "Comparing k1 gcc output to ccomp.." - @for test in $(TESTNAMES); do\ - gccout=$(OUTDIR)/$$test.gcc.hard.out;\ - ccompout=$(OUTDIR)/$$test.ccomp.hard.out;\ - gccrevout=$(OUTDIR)/$$test.gcc.rev.hard.out;\ - vaarg_gccout=$(OUTDIR)/$$test.gcc.vaarg.hard.out;\ - vaarg_ccompout=$(OUTDIR)/$$test.ccomp.vaarg.hard.out;\ - vaarg_gccrevout=$(OUTDIR)/$$test.gcc.rev.vaarg.hard.out;\ - if ! diff $$ccompout $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$ccompout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$ccompout and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$gccrevout $$gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$gccrevout and $$gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$gccrevout and $$gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_ccompout $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_ccompout and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_ccompout and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - if ! diff $$vaarg_gccrevout $$vaarg_gccout > /dev/null; then\ - >&2 printf "$(RED)ERROR: $$vaarg_gccrevout and $$vaarg_gccout differ$(NC)\n";\ - else\ - printf "$(GREEN)GOOD: $$vaarg_gccrevout and $$vaarg_gccout concur$(NC)\n";\ - fi;\ - done - -## -# Rules -## - -.SECONDARY: - -## -# Generating output -## - -## Version sans les timeout -#$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin -# @mkdir -p $(@D) -# ./$< > $@; echo $$? >> $@ -# -#$(OUTDIR)/%.gcc.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) -# @mkdir -p $(@D) -# $(SIMU) -- $< > $@ ; echo $$? >> $@ -# -#$(OUTDIR)/%.ccomp.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) -# @mkdir -p $(@D) -# $(SIMU) -- $< > $@ ; echo $$? >> $@ - -## No vaarg - -$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.simu.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.rev.simu.out: $(BINDIR)/%.gcc.rev.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.simu.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.hard.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.rev.hard.out: $(BINDIR)/%.gcc.rev.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.hard.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -## With vaarg - -$(OUTDIR)/%.x86-gcc.vaarg.out: $(BINDIR)/%.x86-gcc.vaarg.bin - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.vaarg.simu.out: $(BINDIR)/%.gcc.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.rev.vaarg.simu.out: $(BINDIR)/%.gcc.rev.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.vaarg.simu.out: $(BINDIR)/%.ccomp.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.vaarg.hard.out: $(BINDIR)/%.gcc.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.rev.vaarg.hard.out: $(BINDIR)/%.gcc.rev.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.vaarg.hard.out: $(BINDIR)/%.ccomp.vaarg.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(HARDRUN) --exec-file=Cluster0:$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -## -# Object to binary -## - -## common - -$(BINDIR)/$(COMMON).x86-gcc.bin: $(OBJDIR)/$(COMMON).x86-gcc.o $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $< -o $@ - -$(BINDIR)/$(COMMON).gcc.bin: $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $< -o $@ - -$(BINDIR)/$(COMMON).ccomp.bin: $(OBJDIR)/$(COMMON).ccomp.o $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $< -o $@ - -## vaarg_common - -$(BINDIR)/$(VAARG_COMMON).x86-gcc.bin: $(OBJDIR)/$(VAARG_COMMON).x86-gcc.o $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $< -o $@ - -$(BINDIR)/$(VAARG_COMMON).gcc.bin: $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $< -o $@ - -$(BINDIR)/$(VAARG_COMMON).ccomp.bin: $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $< -o $@ - -## no vaarg - -$(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(COMMON).x86-gcc.o $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).gcc.o $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.gcc.rev.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(COMMON).ccomp.o $(KVXCPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.ccomp.bin: $(OBJDIR)/%.ccomp.o $(OBJDIR)/$(COMMON).gcc.o $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -## with vaarg - -$(BINDIR)/%.x86-gcc.vaarg.bin: $(OBJDIR)/%.x86-gcc.o $(OBJDIR)/$(VAARG_COMMON).x86-gcc.o $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.gcc.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.gcc.rev.vaarg.bin: $(OBJDIR)/%.gcc.o $(OBJDIR)/$(VAARG_COMMON).ccomp.o $(KVXCPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -$(BINDIR)/%.ccomp.vaarg.bin: $(OBJDIR)/%.ccomp.o $(OBJDIR)/$(VAARG_COMMON).gcc.o $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $(wordlist 1,2,$^) -o $@ - -## -# Assembly to object -## - -$(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) - @mkdir -p $(@D) - $(CC) -c $(CFLAGS) $< -o $@ - -$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) -c $(CFLAGS) $< -o $@ - -$(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) -c $(CFLAGS) $< -o $@ - - -## -# Source to assembly -## - -$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) -S $< -o $@ diff --git a/test/mppa/interop/common.c b/test/mppa/interop/common.c deleted file mode 100644 index 05b49187..00000000 --- a/test/mppa/interop/common.c +++ /dev/null @@ -1,257 +0,0 @@ -#define STACK int a[100];\ - a[42] = 42; - -#define ONEARG_OP(arg) (3*magic(arg)+2) - -#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ magic(arg2) << arg3 - arg4) - -#define MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,\ - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,\ - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29)\ - (a0 * a1 * a2 * magic(a3) * a4 * a5 * a6 * a7 * a8 * a9 *\ - a10 * a11 * a12 * a13 * a14 * a15 * a16 * a17 * a18 * a19 *\ - a20 * a21 * a22 * a23 * a24 * a25 * a26 * a27 * a28 * a29) - -int magic(long a){ - return a*42 + 26; -} - -void void_void(){ - STACK; -} - -long long ll_void(){ - STACK; - return 0xdeadbeefdeadbeefULL; -} - -int i_oneiarg(int arg){ - STACK; - return ONEARG_OP(arg); -} - -int i_multiiargs(int arg1, char arg2, char arg3, int arg4){ - STACK; - return MULTIARG_OP(arg1, arg2, arg3, arg4); -} - -int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, - char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, - char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29) -{ - STACK; - return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); -} - -int ll_onellarg(long long arg){ - STACK; - return ONEARG_OP(arg); -} - -long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4){ - STACK; - return MULTIARG_OP(arg1, arg2, arg3, arg4); -} - -long long ll_manyllargs(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, - char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, - char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) -{ - STACK; - return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); -} - -double stackhell(char a0, int a1, float a2, long long a3, double a4, char a5, long long a6, long long a7, float a8, long long a9, - double a10, long long a11, char a12, int a13, float a14, double a15, long long a16, long long a17, float a18, long long a19, - char a20, int a21, char a22, long long a23, float a24, char a25, long long a26, int a27, double a28, long long a29) -{ - long long b0 = a0; - long long b1 = a1 * b0; - long long b2 = a2 * b1; - float b3 = a3 * b2; - int b4 = a4 * b3; - double b5 = a5 * b4; - int b6 = a6 * b5; - float b7 = a7 * b6; - char b8 = a8 * b7; - double b9 = a9 * b8; - char b10 = a10 * b9; - float b11 = a11 * b10; - char b12 = a12 * b11; - int b13 = a13 * b12; - long long b14 = a14 * b13; - long long b15 = a15 * b14; - long long b16 = a16 * b15; - long long b17 = a17 * b16; - long long b18 = a18 * b17; - long long b19 = a19 * b18; - long long b20 = a20 * b19; - long long b21 = a21 * b20; - long long b22 = a22 * b21; - long long b23 = a23 * b22; - long long b24 = a24 * b23; - long long b25 = a25 * b24; - long long b26 = a26 * b25; - long long b27 = a27 * b26; - int b28 = a28 * b27; - double b29 = a29 * b28; - float b30 = b0 * b29; - double b31 = b1 * b30; - int b32 = b2 * b31; - char b33 = b3 * b32; - float b34 = b4 * b33; - char b35 = b5 * b34; - double b36 = b6 * b35; - float b37 = b7 * b36; - int b38 = b8 * b37; - double b39 = b9 * b38; - float b40 = b0 * b39; - int b41 = b1 * b40; - double b42 = b2 * b41; - float b43 = b3 * b42; - int b44 = b4 * b43; - double b45 = b5 * b44; - int b46 = b6 * b45; - double b47 = b7 * b46; - int b48 = b8 * b47; - long long b49 = b9 * b48; - long long b50 = b0 * b49; - long long b51 = b1 * b50; - long long b52 = b2 * b51; - long long b53 = b3 * b52; - long long b54 = b4 * b53; - long long b55 = b5 * b54; - long long b56 = b6 * b55; - long long b57 = b7 * b56; - int b58 = b8 * b57; - float b59 = b9 * b58; - int b60 = b0 * b59; - float b61 = b1 * b60; - float b62 = b2 * b61; - int b63 = b3 * b62; - double b64 = b4 * b63; - int b65 = b5 * b64; - int b66 = b6 * b65; - double b67 = b7 * b66; - double b68 = b8 * b67; - int b69 = b9 * b68; - char b70 = b0 * b69; - char b71 = b1 * b70; - double b72 = b2 * b71; - double b73 = b3 * b72; - char b74 = b4 * b73; - float b75 = b5 * b74; - float b76 = b6 * b75; - double b77 = b7 * b76; - char b78 = b8 * b77; - float b79 = b9 * b78; - float b80 = b0 * b79; - char b81 = b1 * b80; - char b82 = b2 * b81; - float b83 = b3 * b82; - char b84 = b4 * b83; - int b85 = b5 * b84; - int b86 = b6 * b85; - double b87 = b7 * b86; - float b88 = b8 * b87; - double b89 = b9 * b88; - int b90 = b0 * b89; - float b91 = b1 * b90; - double b92 = b2 * b91; - int b93 = b3 * b92; - int b94 = b4 * b93; - long long b95 = b5 * b94; - long long b96 = b6 * b95; - long long b97 = b7 * b96; - long long b98 = b8 * b97; - long long b99 = b9 * b98; - long long b100 = b0 * b99; - long long b101 = b1 * b100; - long long b102 = b2 * b101; - long long b103 = b3 * b102; - long long b104 = b4 * b103; - long long b105 = b5 * b104; - long long b106 = b6 * b105; - long long b107 = b7 * b106; - long long b108 = b8 * b107; - long long b109 = b9 * b108; - long long b110 = b0 * b109; - long long b111 = b1 * b110; - long long b112 = b2 * b111; - long long b113 = b3 * b112; - long long b114 = b4 * b113; - int b115 = b5 * b114; - int b116 = b6 * b115; - int b117 = b7 * b116; - float b118 = b8 * b117; - float b119 = b9 * b118; - int b120 = b0 * b119; - double b121 = b1 * b120; - float b122 = b2 * b121; - int b123 = b3 * b122; - double b124 = b4 * b123; - int b125 = b5 * b124; - char b126 = b6 * b125; - double b127 = b7 * b126; - char b128 = b8 * b127; - float b129 = b9 * b128; - char b130 = b0 * b129; - double b131 = b1 * b130; - char b132 = b2 * b131; - float b133 = b3 * b132; - char b134 = b4 * b133; - double b135 = b5 * b134; - char b136 = b6 * b135; - float b137 = b7 * b136; - char b138 = b8 * b137; - double b139 = b9 * b138; - char b140 = b0 * b139; - float b141 = b1 * b140; - char b142 = b2 * b141; - double b143 = b3 * b142; - char b144 = b4 * b143; - float b145 = b5 * b144; - char b146 = b6 * b145; - double b147 = b7 * b146; - int b148 = b8 * b147; - float b149 = b9 * b148; - int b150 = b0 * b149; - double b151 = b1 * b150; - int b152 = b2 * b151; - float b153 = b3 * b152; - int b154 = b4 * b153; - double b155 = b5 * b154; - int b156 = b6 * b155; - float b157 = b7 * b156; - int b158 = b8 * b157; - double b159 = b9 * b158; - int b160 = b0 * b159; - float b161 = b1 * b160; - int b162 = b2 * b161; - return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29) - * b0 * b1 * b2 * b3 * b4 * b5 * b6 * b7 * b8 * b9 - * b10 * b11 * b12 * b13 * b14 * b15 * b16 * b17 * b18 * b19 - * b20 * b21 * b22 * b23 * b24 * b25 * b26 * b27 * b28 * b29 - * b30 * b31 * b32 * b33 * b34 * b35 * b36 * b37 * b38 * b39 - * b40 * b41 * b42 * b43 * b44 * b45 * b46 * b47 * b48 * b49 - * b50 * b51 * b52 * b53 * b54 * b55 * b56 * b57 * b58 * b59 - * b60 * b61 * b62 * b63 * b64 * b65 * b66 * b67 * b68 * b69 - * b70 * b71 * b72 * b73 * b74 * b75 * b76 * b77 * b78 * b79 - * b80 * b81 * b82 * b83 * b84 * b85 * b86 * b87 * b88 * b89 - * b90 * b91 * b92 * b93 * b94 * b95 * b96 * b97 * b98 * b99 - * b100 * b101 * b102 * b103 * b104 * b105 * b106 * b107 * b108 * b109 - * b110 * b111 * b112 * b113 * b114 * b115 * b116 * b117 * b118 * b119 - * b120 * b121 * b122 * b123 * b124 * b125 * b126 * b127 * b128 * b129 - * b130 * b131 * b132 * b133 * b134 * b135 * b136 * b137 * b138 * b139 - * b140 * b141 * b142 * b143 * b144 * b145 * b146 * b147 * b148 * b149 - * b150 * b151 * b152 * b153 * b154 * b155 * b156 * b157 * b158 * b159 - * b160 * b161 * b162 - ; -} - diff --git a/test/mppa/interop/common.h b/test/mppa/interop/common.h deleted file mode 100644 index 055ce7ea..00000000 --- a/test/mppa/interop/common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef __COMMON_H__ -#define __COMMON_H__ - -void void_void(void); - -long long ll_void(void); - -int i_oneiarg(int arg); - -int i_multiiargs(int arg1, char arg2, char arg3, int arg4); - -int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, - char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, - char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29); - -int ll_onellarg(long long arg); - -long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4); - -long long ll_manyllargs(char a0, long long a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, - char a10, long long a11, char a12, long long a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, - char a20, long long a21, char a22, long long a23, char a24, char a25, long long a26, long long a27, char a28, long long a29); - -double stackhell(char a0, long long a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, - char a10, long long a11, char a12, long long a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, - char a20, long long a21, char a22, long long a23, char a24, char a25, long long a26, long long a27, char a28, long long a29); - -#endif diff --git a/test/mppa/interop/framework.h b/test/mppa/interop/framework.h deleted file mode 100644 index 3bbfa271..00000000 --- a/test/mppa/interop/framework.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef __FRAMEWORK_H__ -#define __FRAMEWORK_H__ - -#include -#include "../prng/prng.c" - -#define BEGIN_TEST_N(type, N)\ - int main(void){\ - type t[N], c, i, j, S;\ - srand(0);\ - S = 0;\ - for (i = 0 ; i < 100 ; i++){\ - c = randlong();\ - for (j = 0 ; j < N ; j++)\ - t[j] = randlong();\ - /* END BEGIN_TEST_N */ - -#define BEGIN_TEST(type)\ - int main(void){\ - type a, b, c, S;\ - int i;\ - srand(0);\ - S = 0;\ - for (i = 0 ; i < 100 ; i++){\ - c = randlong();\ - a = randlong();\ - b = randlong(); - /* END BEGIN_TEST */ - -/* In between BEGIN_TEST and END_TEST : definition of c */ - -#define END_TEST64()\ - printf("%llu\t%llu\t%llu\n", a, b, c);\ - S += c;\ - }\ - return S;\ - } - /* END END_TEST64 */ - -#define END_TEST32()\ - printf("%u\t%u\t%u\n", a, b, c);\ - S += c;\ - }\ - return S;\ - } - /* END END_TEST32 */ - -#define END_TESTF32()\ - printf("%e\t%e\t%e\n", a, b, c);\ - S += c;\ - }\ - return 0;\ - } - /* END END_TESTF32 */ - -#define END_TESTF64()\ - printf("%e\t%e\t%e\n", a, b, c);\ - S += c;\ - }\ - return 0;\ - } - /* END END_TESTF64 */ - -#endif - - diff --git a/test/mppa/interop/i32.c b/test/mppa/interop/i32.c deleted file mode 100644 index 6bc2705c..00000000 --- a/test/mppa/interop/i32.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(int) - c = i_manyiargs(a, b, a-b, a+b, a*2, b*2, a*2-b, a+b*2, (a-b)*2, (a+b)*2, - -2*a, -2*b, a-b, a+b, a*3, b*3, a*3-b, a+b*3, (a-b)*3, (a+b)*3, - -3*a, -3*b, a-b, a+b, a*4, b*4, a*4-b, a+b*4, (a-b)*4, (a+b)*4); - c += i_multiiargs(a, b, a-b, a+b); - c += i_oneiarg(a); - void_void(); - c += a; -END_TEST32() - diff --git a/test/mppa/interop/i64.c b/test/mppa/interop/i64.c deleted file mode 100644 index 3e7240f7..00000000 --- a/test/mppa/interop/i64.c +++ /dev/null @@ -1,14 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(long long) - c = ll_manyllargs(a, b, a-b, a+b, a*2, b*2, a*2-b, a+b*2, (a-b)*2, (a+b)*2, - -2*a, -2*b, a-b, a+b, a*3, b*3, a*3-b, a+b*3, (a-b)*3, (a+b)*3, - -3*a, -3*b, a-b, a+b, a*4, b*4, a*4-b, a+b*4, (a-b)*4, (a+b)*4); - c += ll_multillargs(a, b, a-b, a+b); - c += ll_onellarg(a); - c = ll_void(); - c += a; - void_void(); - c += a; -END_TEST64() diff --git a/test/mppa/interop/individual/i_multiiargs.c b/test/mppa/interop/individual/i_multiiargs.c deleted file mode 100644 index 888742b5..00000000 --- a/test/mppa/interop/individual/i_multiiargs.c +++ /dev/null @@ -1,6 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(int) - c = i_multiiargs(a, b, a-b, a+b); -END_TEST32() diff --git a/test/mppa/interop/individual/i_oneiarg.c b/test/mppa/interop/individual/i_oneiarg.c deleted file mode 100644 index 9c969fb8..00000000 --- a/test/mppa/interop/individual/i_oneiarg.c +++ /dev/null @@ -1,6 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(int) - c = i_oneiarg(a); -END_TEST32() diff --git a/test/mppa/interop/individual/ll_multillargs.c b/test/mppa/interop/individual/ll_multillargs.c deleted file mode 100644 index 34b422eb..00000000 --- a/test/mppa/interop/individual/ll_multillargs.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(long long) - c = ll_multillargs(a, b, a-b, a+b); -END_TEST64() - diff --git a/test/mppa/interop/individual/ll_onellarg.c b/test/mppa/interop/individual/ll_onellarg.c deleted file mode 100644 index a2fbbbe9..00000000 --- a/test/mppa/interop/individual/ll_onellarg.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(long long) - c = ll_onellarg(a); -END_TEST64() - diff --git a/test/mppa/interop/individual/ll_void.c b/test/mppa/interop/individual/ll_void.c deleted file mode 100644 index da128fdd..00000000 --- a/test/mppa/interop/individual/ll_void.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(long long) - c = ll_void(); - c += a; -END_TEST64() diff --git a/test/mppa/interop/individual/void_void.c b/test/mppa/interop/individual/void_void.c deleted file mode 100644 index 976a721b..00000000 --- a/test/mppa/interop/individual/void_void.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(long long) - void_void(); - c = a; -END_TEST64() diff --git a/test/mppa/interop/stackhell.c b/test/mppa/interop/stackhell.c deleted file mode 100644 index 5abaa71d..00000000 --- a/test/mppa/interop/stackhell.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "framework.h" -#include "common.h" - -BEGIN_TEST(double) - c = stackhell(a, b, a*b, a*b, a*2, b*2, a*2*b, a*b*2, (a*b)*2, (a*b)*2, - 2*a, 2*b, a*b, a*b, a*3, b*3, a*3*b, a*b*3, (a*b)*3, (a*b)*3, - 3*a, 3*b, a*b, a*b, a*4, b*4, a*4*b, a*b*4, (a*b)*4, (a*b)*4); - -END_TESTF64() diff --git a/test/mppa/interop/vaarg_common.c b/test/mppa/interop/vaarg_common.c deleted file mode 100644 index 3314959f..00000000 --- a/test/mppa/interop/vaarg_common.c +++ /dev/null @@ -1,383 +0,0 @@ -#include - -#define STACK int a[100];\ - a[42] = 42; - -#define ONEARG_OP(arg) (3*magic(arg)+2) - -#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ magic(arg2) << arg3 - arg4) - -#define MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,\ - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,\ - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29)\ - (a0 + a1 * a2 + magic(a3) * a4 + a5 + a6 + a7 - a8 + a9 +\ - a10 + a11 - a12 ^ a13 + a14 - magic(a15) + a16 ^ a17 + a18 + a19 +\ - a20 + a21 + a22 * a23 + a24 + a25 << a26 & a27 + a28 + a29) - -#define VA_START(vl, arg) va_list vl; va_start(vl, arg) -#define VA_END(vl) va_end(vl) - -int magic(long a){ - return a*2 + 42; -} - -void void_void(void){ - STACK; -} - -long long ll_void(void){ - STACK; - return 0xdeadbeefdeadbeefULL; -} - -// int i_oneiarg(int arg){ -int i_oneiarg(int arg, ...){ - STACK; - VA_START(vl, arg); - VA_END(vl); - return ONEARG_OP(arg); -} - -//int i_multiiargs(int arg1, char arg2, char arg3, int arg4){ -int i_multiiargs(int arg1, ...){ - STACK; - VA_START(vl, arg1); - char arg2 = va_arg(vl, int); - char arg3 = va_arg(vl, int); - int arg4 = va_arg(vl, int); - VA_END(vl); - return MULTIARG_OP(arg1, arg2, arg3, arg4); -} - -//int i_manyiargs(char a0, int a1, char a2, int a3, char a4, char a5, int a6, int a7, char a8, int a9, -// char a10, int a11, char a12, int a13, char a14, char a15, int a16, int a17, char a18, int a19, -// char a20, int a21, char a22, int a23, char a24, char a25, int a26, int a27, char a28, int a29) -int i_manyiargs(char a0, ...) -{ - STACK; - VA_START(vl, a0); - VA_START(vl2, a0); - int a1 = va_arg(vl, int); - char a2 = va_arg(vl, int); - int a3 = va_arg(vl, int); - char a4 = va_arg(vl, int); - char a5 = va_arg(vl, int); - char b1 = va_arg(vl2, int); - int a6 = va_arg(vl, int); - int a7 = va_arg(vl, int); - char a8 = va_arg(vl, int); - char b2 = va_arg(vl2, int); - int a9 = va_arg(vl, int); - char a10 = va_arg(vl, int); - int a11 = va_arg(vl, int); - char a12 = va_arg(vl, int); - char b3 = va_arg(vl2, int); - int a13 = va_arg(vl, int); - char a14 = va_arg(vl, int); - char a15 = va_arg(vl, int); - int a16 = va_arg(vl, int); - int a17 = va_arg(vl, int); - char a18 = va_arg(vl, int); - int a19 = va_arg(vl, int); - char a20 = va_arg(vl, int); - int a21 = va_arg(vl, int); - char a22 = va_arg(vl, int); - int a23 = va_arg(vl, int); - char a24 = va_arg(vl, int); - char a25 = va_arg(vl, int); - int a26 = va_arg(vl, int); - char b4 = va_arg(vl2, int); - int a27 = va_arg(vl, int); - char a28 = va_arg(vl, int); - int a29 = va_arg(vl, int); - VA_END(vl); - VA_END(vl); - return MANYARG_OP(a0, a1, a2, a3, a4, (a5*b2), a6, a7, a8, a9, - (a10*b3), a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, (a21*b1), a22, a23, (a24*b3), a25, a26, a27, a28, a29); -} - -//int ll_onellarg(long long arg){ -int ll_onellarg(long long arg, ...){ - STACK; - VA_START(vl, arg); - VA_END(vl); - return ONEARG_OP(arg); -} - -//long long ll_multillargs(long long arg1, char arg2, char arg3, long long arg4){ -long long ll_multillargs(long long arg1, ...){ - STACK; - VA_START(vl, arg1); - char arg2 = va_arg(vl, int); - char arg3 = va_arg(vl, int); - long long arg4 = va_arg(vl, long long); - VA_END(vl); - return MULTIARG_OP(arg1, arg2, arg3, arg4); -} - -//long long ll_manyllargs(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, -// char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, -// char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) -long long ll_manyllargs(char a0, ...) -{ - STACK; - VA_START(vl, a0); - int a1 = va_arg(vl, int); - char a2 = va_arg(vl, int); - long long a3 = va_arg(vl, long long); - char a4 = va_arg(vl, int); - char a5 = va_arg(vl, int); - long long a6 = va_arg(vl, long long); - long long a7 = va_arg(vl, long long); - char a8 = va_arg(vl, int); - long long a9 = va_arg(vl, long long); - char a10 = va_arg(vl, int); - long long a11 = va_arg(vl, long long); - char a12 = va_arg(vl, int); - int a13 = va_arg(vl, int); - char a14 = va_arg(vl, int); - char a15 = va_arg(vl, int); - long long a16 = va_arg(vl, long long); - long long a17 = va_arg(vl, long long); - char a18 = va_arg(vl, int); - long long a19 = va_arg(vl, long long); - char a20 = va_arg(vl, int); - int a21 = va_arg(vl, int); - char a22 = va_arg(vl, int); - long long a23 = va_arg(vl, long long); - char a24 = va_arg(vl, int); - char a25 = va_arg(vl, int); - long long a26 = va_arg(vl, long long); - int a27 = va_arg(vl, int); - char a28 = va_arg(vl, int); - long long a29 = va_arg(vl, long long); - VA_END(vl); - return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); -} - -//long long stackhell(char a0, int a1, char a2, long long a3, char a4, char a5, long long a6, long long a7, char a8, long long a9, -// char a10, long long a11, char a12, int a13, char a14, char a15, long long a16, long long a17, char a18, long long a19, -// char a20, int a21, char a22, long long a23, char a24, char a25, long long a26, int a27, char a28, long long a29) -long long stackhell(char a0, ...) -{ - VA_START(vl, a0); - int a1 = va_arg(vl, int); - char a2 = va_arg(vl, int); - long long a3 = va_arg(vl, long long); - char a4 = va_arg(vl, int); - char a5 = va_arg(vl, int); - long long a6 = va_arg(vl, long long); - long long a7 = va_arg(vl, long long); - char a8 = va_arg(vl, int); - long long a9 = va_arg(vl, long long); - char a10 = va_arg(vl, int); - long long a11 = va_arg(vl, long long); - char a12 = va_arg(vl, int); - int a13 = va_arg(vl, int); - char a14 = va_arg(vl, int); - char a15 = va_arg(vl, int); - long long a16 = va_arg(vl, long long); - long long a17 = va_arg(vl, long long); - char a18 = va_arg(vl, int); - long long a19 = va_arg(vl, long long); - char a20 = va_arg(vl, int); - int a21 = va_arg(vl, int); - char a22 = va_arg(vl, int); - long long a23 = va_arg(vl, long long); - char a24 = va_arg(vl, int); - char a25 = va_arg(vl, int); - long long a26 = va_arg(vl, long long); - int a27 = va_arg(vl, int); - char a28 = va_arg(vl, int); - long long a29 = va_arg(vl, long long); - VA_END(vl); - - long long b0 = a0; - long long b1 = a1 + b0; - long long b2 = a2 + b1; - int b3 = a3 + b2; - int b4 = a4 + b3; - int b5 = a5 + b4; - int b6 = a6 + b5; - int b7 = a7 + b6; - char b8 = a8 + b7; - char b9 = a9 + b8; - char b10 = a10 + b9; - char b11 = a11 + b10; - char b12 = a12 + b11; - int b13 = a13 + b12; - long long b14 = a14 + b13; - long long b15 = a15 + b14; - long long b16 = a16 + b15; - long long b17 = a17 + b16; - long long b18 = a18 + b17; - long long b19 = a19 + b18; - long long b20 = a20 + b19; - long long b21 = a21 + b20; - long long b22 = a22 + b21; - long long b23 = a23 + b22; - long long b24 = a24 + b23; - long long b25 = a25 + b24; - long long b26 = a26 + b25; - long long b27 = a27 + b26; - int b28 = a28 + b27; - int b29 = a29 + b28; - int b30 = b0 + b29; - int b31 = b1 + b30; - int b32 = b2 + b31; - char b33 = b3 + b32; - char b34 = b4 + b33; - char b35 = b5 + b34; - char b36 = b6 + b35; - char b37 = b7 + b36; - int b38 = b8 + b37; - int b39 = b9 + b38; - int b40 = b0 + b39; - int b41 = b1 + b40; - int b42 = b2 + b41; - int b43 = b3 + b42; - int b44 = b4 + b43; - int b45 = b5 + b44; - int b46 = b6 + b45; - int b47 = b7 + b46; - int b48 = b8 + b47; - long long b49 = b9 + b48; - long long b50 = b0 + b49; - long long b51 = b1 + b50; - long long b52 = b2 + b51; - long long b53 = b3 + b52; - long long b54 = b4 + b53; - long long b55 = b5 + b54; - long long b56 = b6 + b55; - long long b57 = b7 + b56; - int b58 = b8 + b57; - int b59 = b9 + b58; - int b60 = b0 + b59; - int b61 = b1 + b60; - int b62 = b2 + b61; - int b63 = b3 + b62; - int b64 = b4 + b63; - int b65 = b5 + b64; - int b66 = b6 + b65; - int b67 = b7 + b66; - int b68 = b8 + b67; - int b69 = b9 + b68; - char b70 = b0 + b69; - char b71 = b1 + b70; - char b72 = b2 + b71; - char b73 = b3 + b72; - char b74 = b4 + b73; - char b75 = b5 + b74; - char b76 = b6 + b75; - char b77 = b7 + b76; - char b78 = b8 + b77; - char b79 = b9 + b78; - char b80 = b0 + b79; - char b81 = b1 + b80; - char b82 = b2 + b81; - char b83 = b3 + b82; - char b84 = b4 + b83; - int b85 = b5 + b84; - int b86 = b6 + b85; - int b87 = b7 + b86; - int b88 = b8 + b87; - int b89 = b9 + b88; - int b90 = b0 + b89; - int b91 = b1 + b90; - int b92 = b2 + b91; - int b93 = b3 + b92; - int b94 = b4 + b93; - long long b95 = b5 + b94; - long long b96 = b6 + b95; - long long b97 = b7 + b96; - long long b98 = b8 + b97; - long long b99 = b9 + b98; - long long b100 = b0 + b99; - long long b101 = b1 + b100; - long long b102 = b2 + b101; - long long b103 = b3 + b102; - long long b104 = b4 + b103; - long long b105 = b5 + b104; - long long b106 = b6 + b105; - long long b107 = b7 + b106; - long long b108 = b8 + b107; - long long b109 = b9 + b108; - long long b110 = b0 + b109; - long long b111 = b1 + b110; - long long b112 = b2 + b111; - long long b113 = b3 + b112; - long long b114 = b4 + b113; - int b115 = b5 + b114; - int b116 = b6 + b115; - int b117 = b7 + b116; - int b118 = b8 + b117; - int b119 = b9 + b118; - int b120 = b0 + b119; - int b121 = b1 + b120; - int b122 = b2 + b121; - int b123 = b3 + b122; - int b124 = b4 + b123; - int b125 = b5 + b124; - char b126 = b6 + b125; - char b127 = b7 + b126; - char b128 = b8 + b127; - char b129 = b9 + b128; - char b130 = b0 + b129; - char b131 = b1 + b130; - char b132 = b2 + b131; - char b133 = b3 + b132; - char b134 = b4 + b133; - char b135 = b5 + b134; - char b136 = b6 + b135; - char b137 = b7 + b136; - char b138 = b8 + b137; - char b139 = b9 + b138; - char b140 = b0 + b139; - char b141 = b1 + b140; - char b142 = b2 + b141; - char b143 = b3 + b142; - char b144 = b4 + b143; - char b145 = b5 + b144; - char b146 = b6 + b145; - char b147 = b7 + b146; - int b148 = b8 + b147; - int b149 = b9 + b148; - int b150 = b0 + b149; - int b151 = b1 + b150; - int b152 = b2 + b151; - int b153 = b3 + b152; - int b154 = b4 + b153; - int b155 = b5 + b154; - int b156 = b6 + b155; - int b157 = b7 + b156; - int b158 = b8 + b157; - int b159 = b9 + b158; - int b160 = b0 + b159; - int b161 = b1 + b160; - int b162 = b2 + b161; - return MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, - a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, - a20, a21, a22, a23, a24, a25, a26, a27, a28, a29) - + b0 + b1 + b2 + b3 + b4 + b5 + b6 + b7 + b8 + b9 - + b10 + b11 + b12 + b13 + b14 + b15 + b16 + b17 + b18 + b19 - + b20 + b21 + b22 + b23 + b24 + b25 + b26 + b27 + b28 + b29 - + b30 + b31 + b32 + b33 + b34 + b35 + b36 + b37 + b38 + b39 - + b40 + b41 + b42 + b43 + b44 + b45 + b46 + b47 + b48 + b49 - + b50 + b51 + b52 + b53 + b54 + b55 + b56 + b57 + b58 + b59 - + b60 + b61 + b62 + b63 + b64 + b65 + b66 + b67 + b68 + b69 - + b70 + b71 + b72 + b73 + b74 + b75 + b76 + b77 + b78 + b79 - + b80 + b81 + b82 + b83 + b84 + b85 + b86 + b87 + b88 + b89 - + b90 + b91 + b92 + b93 + b94 + b95 + b96 + b97 + b98 + b99 - + b100 + b101 + b102 + b103 + b104 + b105 + b106 + b107 + b108 + b109 - + b110 + b111 + b112 + b113 + b114 + b115 + b116 + b117 + b118 + b119 - + b120 + b121 + b122 + b123 + b124 + b125 + b126 + b127 + b128 + b129 - + b130 + b131 + b132 + b133 + b134 + b135 + b136 + b137 + b138 + b139 - + b140 + b141 + b142 + b143 + b144 + b145 + b146 + b147 + b148 + b149 - + b150 + b151 + b152 + b153 + b154 + b155 + b156 + b157 + b158 + b159 - + b160 + b161 + b162 - ; -} - diff --git a/test/mppa/lib/Makefile b/test/mppa/lib/Makefile deleted file mode 100644 index 5a947bb3..00000000 --- a/test/mppa/lib/Makefile +++ /dev/null @@ -1,133 +0,0 @@ -KVXC ?= k1-cos-gcc -K1AR ?= k1-cos-ar -CC ?= gcc -AR ?= gcc-ar -CCOMP ?= ccomp -CFLAGS ?= -O1 -Wl,--wrap=printf -SIMU ?= k1-mppa -TIMEOUT ?= --signal=SIGTERM 60s - -DIR=./ -SRCDIR=$(DIR) -OUTDIR=$(DIR)/out -BINDIR=$(DIR)/bin -ASMDIR=$(DIR)/asm -OBJDIR=$(DIR)/obj - -KVXCPATH=$(shell which $(KVXC)) -K1ARPATH=$(shell which $(K1AR)) -CCPATH=$(shell which $(CC)) -ARPATH=$(shell which $(AR)) -SIMUPATH=$(shell which $(SIMU)) - -TESTNAMES=printf-test -X86_GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .x86-gcc.out,$(TESTNAMES))) -GCC_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .gcc.out,$(TESTNAMES))) -CCOMP_OUT=$(addprefix $(OUTDIR)/,$(addsuffix .ccomp.out,$(TESTNAMES))) - -OUT=$(X86_GCC_OUT) $(GCC_OUT) $(CCOMP_OUT) -BIN=$(addprefix $(BINDIR)/,$(addsuffix .x86-gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .gcc.bin,$(TESTNAMES)))\ - $(addprefix $(BINDIR)/,$(addsuffix .ccomp.bin,$(TESTNAMES))) - -## -# Targets -## - -all: $(BIN) system.x86-gcc.a system.gcc.a - -.PHONY: -test: $(X86_GCC_OUT) $(GCC_OUT) - @echo "Comparing x86 gcc output to k1 gcc.." - @for test in $(TESTNAMES); do\ - x86out=$(OUTDIR)/$$test.x86-gcc.out;\ - gccout=$(OUTDIR)/$$test.gcc.out;\ - if ! diff $$x86out $$gccout; then\ - >&2 echo "ERROR: $$x86out and $$gccout differ";\ - else\ - echo "GOOD: $$x86out and $$gccout concur";\ - fi;\ - done - -.PHONY: -check: $(GCC_OUT) $(CCOMP_OUT) - @echo "Comparing k1 gcc output to ccomp.." - @for test in $(TESTNAMES); do\ - gccout=$(OUTDIR)/$$test.gcc.out;\ - ccompout=$(OUTDIR)/$$test.ccomp.out;\ - if ! diff $$ccompout $$gccout; then\ - >&2 echo "ERROR: $$ccompout and $$gccout differ";\ - else\ - echo "GOOD: $$ccompout and $$gccout concur";\ - fi;\ - done - -## -# Rules -## - -.SECONDARY: - -# Generating output - -## Version avec timeout -$(OUTDIR)/%.x86-gcc.out: $(BINDIR)/%.x86-gcc.bin - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.gcc.out: $(BINDIR)/%.gcc.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -$(OUTDIR)/%.ccomp.out: $(BINDIR)/%.ccomp.bin $(SIMUPATH) - @mkdir -p $(@D) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -# Object to binary - -$(BINDIR)/%.x86-gcc.bin: $(OBJDIR)/%.x86-gcc.o system.x86-gcc.a $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -$(BINDIR)/%.gcc.bin: $(OBJDIR)/%.gcc.o system.gcc.a $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ - -$(BINDIR)/%.ccomp.bin: $(OBJDIR)/%.ccomp.o system.gcc.a $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ - -# Generating libraries -system.x86-gcc.a: $(OBJDIR)/printf.x86-gcc.o $(ARPATH) - $(AR) rcs $@ $< - -system.gcc.a: $(OBJDIR)/printf.gcc.o $(K1ARPATH) - $(K1AR) rcs $@ $< - -# Assembly to object - -$(OBJDIR)/%.x86-gcc.o: $(ASMDIR)/%.x86-gcc.s $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) -c $< -o $@ - -$(OBJDIR)/%.gcc.o: $(ASMDIR)/%.gcc.s $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) -c $< -o $@ - -$(OBJDIR)/%.ccomp.o: $(ASMDIR)/%.ccomp.s $(CCOMPPATH) - $(CCOMP) $(CFLAGS) -c $< -o $@ - -# Source to assembly - -$(ASMDIR)/%.x86-gcc.s: $(SRCDIR)/%.c $(CCPATH) - @mkdir -p $(@D) - $(CC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.gcc.s: $(SRCDIR)/%.c $(KVXCPATH) - @mkdir -p $(@D) - $(KVXC) $(CFLAGS) -S $< -o $@ - -$(ASMDIR)/%.ccomp.s: $(SRCDIR)/%.c $(CCOMPPATH) - @mkdir -p $(@D) - $(CCOMP) $(CFLAGS) -S $< -o $@ - diff --git a/test/mppa/lib/printf-test.c b/test/mppa/lib/printf-test.c deleted file mode 100644 index 25afd436..00000000 --- a/test/mppa/lib/printf-test.c +++ /dev/null @@ -1,9 +0,0 @@ -int printf(const char *, ...); - -int main(void){ - int a = 42; - char *str = "Hi there"; - printf("%s, I am %u\n", str, a); - - return 0; -} diff --git a/test/mppa/lib/printf.c b/test/mppa/lib/printf.c deleted file mode 100644 index 79984ef6..00000000 --- a/test/mppa/lib/printf.c +++ /dev/null @@ -1,9 +0,0 @@ -#include -#include - -int __wrap_printf(const char *format, ...){ - va_list args; - va_start(args, format); - vprintf(format, args); - va_end(args); -} diff --git a/test/mppa/mmult/.gitignore b/test/mppa/mmult/.gitignore deleted file mode 100644 index b43ccc5f..00000000 --- a/test/mppa/mmult/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -mmult-test-ccomp-kvx -mmult-test-gcc-kvx -mmult-test-gcc-x86 -.zero diff --git a/test/mppa/mmult/Makefile b/test/mppa/mmult/Makefile deleted file mode 100644 index e7cd890e..00000000 --- a/test/mppa/mmult/Makefile +++ /dev/null @@ -1,67 +0,0 @@ -KVXC ?= k1-cos-gcc -CC ?= gcc -CCOMP ?= ccomp -CFLAGS ?= -O2 -SIMU ?= k1-mppa -TIMEOUT ?= 10s - -KVXCPATH=$(shell which $(KVXC)) -CCPATH=$(shell which $(CC)) -CCOMPPATH=$(shell which $(CCOMP)) -SIMUPATH=$(shell which $(SIMU)) - -PRNG=../prng/prng.c - -ALL= mmult-test-gcc-x86 mmult-test-gcc-kvx mmult-test-ccomp-kvx -CCOMP_OUT= mmult-test-ccomp-kvx.out -GCC_OUT= mmult-test-gcc-kvx.out -X86_GCC_OUT= mmult-test-gcc-x86.out -STUB_OUT=.zero - -all: $(ALL) - -mmult-test-gcc-x86: mmult.c $(PRNG) $(CCPATH) - $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -mmult-test-gcc-kvx: mmult.c $(PRNG) $(KVXCPATH) - $(KVXC) $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ - -mmult-test-ccomp-kvx: mmult.c $(PRNG) $(CCOMPPATH) - $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ - -.SECONDARY: -%kvx.out: %kvx $(SIMUPATH) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -%x86.out: %x86 - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -.zero: - @echo "0" > $@ - -.PHONY: -test: test-x86 test-kvx - -.PHONY: -test-x86: $(X86_GCC_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR x86: $< failed";\ - else\ - echo "GOOD x86: $< succeeded";\ - fi - -.PHONY: -test-kvx: $(GCC_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $< failed";\ - else\ - echo "GOOD kvx: $< succeeded";\ - fi - -.PHONY: -check: $(CCOMP_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $< failed";\ - else\ - echo "GOOD kvx: $< succeeded";\ - fi diff --git a/test/mppa/mmult/README.md b/test/mppa/mmult/README.md deleted file mode 100644 index 780603f6..00000000 --- a/test/mppa/mmult/README.md +++ /dev/null @@ -1,17 +0,0 @@ -MMULT -===== - -Examples of matrix multiplication using different methods. - -We compute matrix multiplication using column-based matrix multiplication, then row-based, and finally block based. - -The test verifies that the result is the same on the three methods. If it is the same, 0 will be returned. - -The following commands can be run inside the folder: - -- `make`: produces the unitary test binaries - - `mmult-test-gcc-x86` : binary from gcc on x86 - - `mmult-test-kvx-x86` : binary from gcc on kvx - - `mmult-test-ccomp-x86` : binary from ccomp on kvx -- `make test`: tests the return value of the binaries produced by gcc. -- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/mppa/mmult/mmult.c b/test/mppa/mmult/mmult.c deleted file mode 100644 index aeb91d48..00000000 --- a/test/mppa/mmult/mmult.c +++ /dev/null @@ -1,146 +0,0 @@ -#include "../prng/types.h" -#include "../prng/prng.h" - -#define __UNIT_TEST_MMULT__ - -#ifdef __UNIT_TEST_MMULT__ -#define SIZE 10 -#else -#include "test.h" -#endif - -void mmult_row(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ - int i, j, k; - - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++) - C[i][j] = 0; - - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++) - for (k = 0 ; k < SIZE ; k++) - C[i][j] += A[i][k] * B[k][j]; -} - -void mmult_col(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ - int i, j, k; - - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++) - C[i][j] = 0; - - for (k = 0 ; k < SIZE ; k++) - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++) - C[i][j] += A[i][k] * B[k][j]; -} - -typedef struct mblock { - int imin, imax, jmin, jmax; - uint64_t *mat; -} mblock; - -#define MAT_XY(mat, x, y) (mat)[(x)*SIZE + (y)] -#define MAT_IJ(block, i, j) MAT_XY((block)->mat, (block)->imin + (i), block->jmin + (j)) - -void divac_mul(mblock *C, const mblock *A, const mblock *B){ - const int size = C->imax - C->imin; - int i, j, k; - - for (i = 0 ; i < size ; i++) - for (j = 0 ; j < size ; j++) - for (k = 0 ; k < size ; k++) - MAT_IJ(C, i, j) += MAT_IJ(A, i, k) * MAT_IJ(B, k, j); -} - -#define BLOCK_X_MID(block) ((block)->imin + (block)->imax) / 2 -#define BLOCK_Y_MID(block) ((block)->jmin + (block)->jmax) / 2 - -#define MAKE_MBLOCK(newb, block, I, J) \ - mblock newb = {.mat=(block)->mat};\ - if ((I) == 0){\ - newb.imin = (block)->imin;\ - newb.imax = BLOCK_X_MID((block));\ - } else {\ - newb.imin = BLOCK_X_MID((block));\ - newb.imax = (block)->imax;\ - } if ((J) == 0){\ - newb.jmin = (block)->jmin;\ - newb.jmax = BLOCK_Y_MID((block));\ - } else {\ - newb.jmin = BLOCK_Y_MID((block));\ - newb.jmax = (block)->jmax;\ - } - -void divac_part(mblock *C, const mblock *A, const mblock *B); - -void divac_wrap(mblock *C , char IC, char JC, - const mblock *A, char IA, char JA, - const mblock *B, char IB, char JB){ - MAKE_MBLOCK(Cb, C, IC, JC); - MAKE_MBLOCK(Ab, A, IA, JA); - MAKE_MBLOCK(Bb, B, IB, JB); - - divac_part(&Cb, &Ab, &Bb); -} - - -void divac_part(mblock *C, const mblock *A, const mblock *B){ - const int size = C->imax - C->imin; - - if (size % 2 == 1) - divac_mul(C, A, B); - else{ - /* C_00 = A_00 B_00 + A_01 B_10 */ - divac_wrap(C, 0, 0, A, 0, 0, B, 0, 0); - divac_wrap(C, 0, 0, A, 0, 1, B, 1, 0); - - /* C_10 = A_10 B_00 + A_11 B_10 */ - divac_wrap(C, 1, 0, A, 1, 0, B, 0, 0); - divac_wrap(C, 1, 0, A, 1, 1, B, 1, 0); - - /* C_01 = A_00 B_01 + A_01 B_11 */ - divac_wrap(C, 0, 1, A, 0, 0, B, 0, 1); - divac_wrap(C, 0, 1, A, 0, 1, B, 1, 1); - - /* C_11 = A_10 B_01 + A_11 B_11 */ - divac_wrap(C, 1, 1, A, 1, 0, B, 0, 1); - divac_wrap(C, 1, 1, A, 1, 1, B, 1, 1); - } - -} - -void mmult_divac(uint64_t C[][SIZE], uint64_t A[][SIZE], uint64_t B[][SIZE]){ - mblock Cb = {.mat = (uint64_t *) C, .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; - mblock Ab = {.mat = (uint64_t *) A , .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; - mblock Bb = {.mat = (uint64_t *) B , .imin = 0, .imax = SIZE, .jmin = 0, .jmax = SIZE}; - - divac_part(&Cb, &Ab, &Bb); -} - -#ifdef __UNIT_TEST_MMULT__ -static uint64_t C1[SIZE][SIZE], C2[SIZE][SIZE], C3[SIZE][SIZE]; -static uint64_t A[SIZE][SIZE], B[SIZE][SIZE]; - -int main(void){ - srand(42); - int i, j; - - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++){ - A[i][j] = randlong(); - B[i][j] = randlong(); - } - - mmult_row(C1, A, B); - mmult_col(C2, A, B); - mmult_divac(C3, A, B); - - for (i = 0 ; i < SIZE ; i++) - for (j = 0 ; j < SIZE ; j++) - if (!(C1[i][j] == C2[i][j] && C1[i][j] == C3[i][j])) - return -1; - - return 0; -} -#endif /* __UNIT_TEST_MMULT__ */ diff --git a/test/mppa/mmult/mmult.h b/test/mppa/mmult/mmult.h deleted file mode 100644 index 3721784a..00000000 --- a/test/mppa/mmult/mmult.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __MMULT_H__ -#define __MMULT_H__ - -#include "../lib/types.h" - -void mmult_row(uint64_t *A, const uint64_t *B, const uint64_t *C); -void mmult_column(uint64_t *A, const uint64_t *B, const uint64_t *C); -void mmult_strassen(uint64_t *A, const uint64_t *B, const uint64_t *C); - -#endif /* __MMULT_H__ */ diff --git a/test/mppa/prng/.gitignore b/test/mppa/prng/.gitignore deleted file mode 100644 index 08023900..00000000 --- a/test/mppa/prng/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -prng-test-ccomp-kvx -prng-test-gcc-x86 -prng-test-gcc-kvx diff --git a/test/mppa/prng/Makefile b/test/mppa/prng/Makefile deleted file mode 100644 index 68e5ffc9..00000000 --- a/test/mppa/prng/Makefile +++ /dev/null @@ -1,69 +0,0 @@ -KVXC ?= k1-cos-gcc -CC ?= gcc -CCOMP ?= ccomp -CFLAGS ?= -O2 -SIMU ?= k1-mppa -TIMEOUT ?= 10s - -KVXCPATH=$(shell which $(KVXC)) -CCPATH=$(shell which $(CC)) -CCOMPPATH=$(shell which $(CCOMP)) -SIMUPATH=$(shell which $(SIMU)) - -ALL= prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx -CCOMP_OUT= prng-test-ccomp-kvx.out -GCC_OUT= prng-test-gcc-kvx.out -X86_GCC_OUT= prng-test-gcc-x86.out -STUB_OUT=.zero - -all: $(ALL) - -prng-test-gcc-x86: prng.c $(CCPATH) - $(CC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ - -prng-test-gcc-kvx: prng.c $(KVXCPATH) - $(KVXC) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ - -prng-test-ccomp-kvx: prng.c $(CCOMPPATH) - $(CCOMP) -D__UNIT_TEST_PRNG__ $(CFLAGS) $< -o $@ - -.SECONDARY: -%kvx.out: %kvx $(SIMUPATH) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -%x86.out: %x86 - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -.zero: - @echo "0" > $@ - -.PHONY: -test: test-x86 test-kvx - -.PHONY: -test-x86: $(X86_GCC_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR x86: $< failed";\ - else\ - echo "GOOD x86: $< succeeded";\ - fi - -.PHONY: -test-kvx: $(GCC_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $< failed";\ - else\ - echo "GOOD kvx: $< succeeded";\ - fi - -.PHONY: -check: $(CCOMP_OUT) $(STUB_OUT) - @if ! diff $< $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $< failed";\ - else\ - echo "GOOD kvx: $< succeeded";\ - fi - -.PHONY: -clean: - rm -f prng-test-gcc-x86 prng-test-gcc-kvx prng-test-ccomp-kvx diff --git a/test/mppa/prng/README.md b/test/mppa/prng/README.md deleted file mode 100644 index 98ed539d..00000000 --- a/test/mppa/prng/README.md +++ /dev/null @@ -1,17 +0,0 @@ -PRNG -==== - -This is a simple Pseudo Random Number Generator. - -`prng.c` contains a simple unitary test that compares the sum of the "bytewise sum" -of 1000 generated numbers to a hardcoded result, that is the one obtained with -`gcc -O2` on a x86 processor, and returns 0 if the result is correct. - -The following commands can be run inside that folder: - -- `make`: produces the unitary test binaries - - `prng-test-gcc-x86` : binary from gcc on x86 - - `prng-test-kvx-x86` : binary from gcc on kvx - - `prng-test-ccomp-x86` : binary from ccomp on kvx -- `make test`: tests the return value of the binaries produced by gcc. -- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/mppa/prng/prng.c b/test/mppa/prng/prng.c deleted file mode 100644 index 71de1dc3..00000000 --- a/test/mppa/prng/prng.c +++ /dev/null @@ -1,41 +0,0 @@ -// https://en.wikipedia.org/wiki/Linear_congruential_generator -> MMIX Donald Knuth -// modulo 2^64 = no need to do it explicitly - -#include "types.h" - -#define MULTIPLIER 6364136223846793005LL -#define INCREMENT 1442695040888963407LL - -static uint64_t current; - -void srand(uint64_t seed){ - current = seed; -} - -uint64_t randlong(void){ - return (current = MULTIPLIER * current + INCREMENT); -} - -#ifdef __UNIT_TEST_PRNG__ -char bytewise_sum(uint64_t to_check){ - char sum = 0; - int i; - - for (i = 0 ; i < 8 ; i++) - sum += (to_check & (uint64_t)(0xFFULL << i*8)) >> i*8; - - return sum; -} - -int main(void){ - srand(42); - int i; - - for (i = 0 ; i < 1000 ; i++) - randlong(); - - uint64_t last = randlong(); - - return !((unsigned char)bytewise_sum(last) == 155); -} -#endif // __UNIT_TEST_PRNG__ diff --git a/test/mppa/prng/prng.h b/test/mppa/prng/prng.h deleted file mode 100644 index 6abdb45a..00000000 --- a/test/mppa/prng/prng.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __PRNG_H__ -#define __PRNG_H__ - -#include "types.h" - -void srand(uint64_t seed); - -uint64_t randlong(void); - -#endif // __PRNG_H__ diff --git a/test/mppa/prng/types.h b/test/mppa/prng/types.h deleted file mode 100644 index 584023e3..00000000 --- a/test/mppa/prng/types.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef __TYPES_H__ -#define __TYPES_H__ - -#define uint64_t unsigned long long -#define int64_t signed long long - -#endif // __TYPES_H__ diff --git a/test/mppa/simucheck.sh b/test/mppa/simucheck.sh deleted file mode 100755 index 48698e35..00000000 --- a/test/mppa/simucheck.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -# Tests the execution of the binaries produced by CompCert, by simulation - -cores=$(grep -c ^processor /proc/cpuinfo) - -source do_test.sh - -do_test check $cores diff --git a/test/mppa/simutest.sh b/test/mppa/simutest.sh deleted file mode 100755 index 729d1ba0..00000000 --- a/test/mppa/simutest.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -# Tests the validity of the tests, in simulator - -cores=$(grep -c ^processor /proc/cpuinfo) - -source do_test.sh - -do_test test $cores diff --git a/test/mppa/sort/.gitignore b/test/mppa/sort/.gitignore deleted file mode 100644 index 070b87c4..00000000 --- a/test/mppa/sort/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -main-test-ccomp-kvx -main-test-gcc-kvx -main-test-gcc-x86 -merge-test-gcc-kvx -merge-test-gcc-x86 -selection-test-gcc-kvx -selection-test-gcc-x86 -insertion-test-gcc-kvx -insertion-test-gcc-x86 diff --git a/test/mppa/sort/Makefile b/test/mppa/sort/Makefile deleted file mode 100644 index c4090352..00000000 --- a/test/mppa/sort/Makefile +++ /dev/null @@ -1,91 +0,0 @@ -KVXC ?= k1-cos-gcc -CC ?= gcc -CCOMP ?= ccomp -CFLAGS ?= -O2 -SIMU ?= k1-mppa -TIMEOUT ?= 10s - -KVXCPATH=$(shell which $(KVXC)) -CCPATH=$(shell which $(CC)) -CCOMPPATH=$(shell which $(CCOMP)) -SIMUPATH=$(shell which $(SIMU)) - -PRNG=../prng/prng.c - -CFILES=insertion.c merge.c selection.c main.c - -ALL= insertion-gcc-x86 insertion-gcc-kvx insertion-ccomp-kvx\ - selection-gcc-x86 selection-gcc-kvx selection-ccomp-kvx\ - merge-gcc-x86 merge-gcc-kvx merge-ccomp-kvx\ - main-gcc-x86 main-gcc-kvx main-ccomp-kvx - -CCOMP_OUT= insertion-ccomp-kvx.out selection-ccomp-kvx.out merge-ccomp-kvx.out\ - main-ccomp-kvx.out -GCC_OUT= insertion-gcc-kvx.out selection-gcc-kvx.out merge-gcc-kvx.out\ - main-gcc-kvx.out -X86_GCC_OUT= insertion-gcc-x86.out selection-gcc-x86.out merge-gcc-x86.out\ - main-gcc-x86.out -STUB_OUT= .zero - -all: $(ALL) - -main-gcc-x86: $(CFILES) $(PRNG) $(CCPATH) - $(CC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -%-gcc-x86: %.c $(PRNG) $(CCPATH) - $(CC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -main-gcc-kvx: $(CFILES) $(PRNG) $(CCPATH) - $(KVXC) $(CFLAGS) $(filter-out $(CCPATH),$^) -o $@ - -%-gcc-kvx: %.c $(PRNG) $(KVXCPATH) - $(KVXC) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(KVXCPATH),$^) -o $@ - -main-ccomp-kvx: $(CFILES) $(PRNG) $(CCOMPPATH) - $(CCOMP) $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ - -%-ccomp-kvx: %.c $(PRNG) $(CCOMPPATH) - $(CCOMP) -D__UNIT_TEST_$$(echo $(basename $<) | tr a-z A-Z)__ $(CFLAGS) $(filter-out $(CCOMPPATH),$^) -o $@ - -.SECONDARY: -%x86.out: %x86 - ret=0; timeout $(TIMEOUT) ./$< > $@ || { ret=$$?; }; echo $$ret >> $@ - -%kvx.out: %kvx $(SIMUPATH) - ret=0; timeout $(TIMEOUT) $(SIMU) -- $< > $@ || { ret=$$?; }; echo $$ret >> $@ - -.zero: - @echo "0" > $@ - -.PHONY: -test-x86: $(STUB_OUT) $(X86_GCC_OUT) - @for test in $(wordlist 2,100,$^); do\ - if ! diff $$test $(STUB_OUT); then\ - >&2 echo "ERROR x86: $$test failed";\ - else\ - echo "GOOD x86: $$test succeeded";\ - fi;\ - done - -.PHONY: -test-kvx: $(STUB_OUT) $(GCC_OUT) - @for test in $(wordlist 2,100,$^); do\ - if ! diff $$test $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $$test failed";\ - else\ - echo "GOOD kvx: $$test succeeded";\ - fi;\ - done - -.PHONY: -test: test-x86 test-kvx - -.PHONY: -check: $(STUB_OUT) $(CCOMP_OUT) - @for test in $(wordlist 2,100,$^); do\ - if ! diff $$test $(STUB_OUT); then\ - >&2 echo "ERROR kvx: $$test failed";\ - else\ - echo "GOOD kvx: $$test succeeded";\ - fi;\ - done diff --git a/test/mppa/sort/README.md b/test/mppa/sort/README.md deleted file mode 100644 index 98ed539d..00000000 --- a/test/mppa/sort/README.md +++ /dev/null @@ -1,17 +0,0 @@ -PRNG -==== - -This is a simple Pseudo Random Number Generator. - -`prng.c` contains a simple unitary test that compares the sum of the "bytewise sum" -of 1000 generated numbers to a hardcoded result, that is the one obtained with -`gcc -O2` on a x86 processor, and returns 0 if the result is correct. - -The following commands can be run inside that folder: - -- `make`: produces the unitary test binaries - - `prng-test-gcc-x86` : binary from gcc on x86 - - `prng-test-kvx-x86` : binary from gcc on kvx - - `prng-test-ccomp-x86` : binary from ccomp on kvx -- `make test`: tests the return value of the binaries produced by gcc. -- `make check`: tests the return value of the binary produced by CompCert. diff --git a/test/mppa/sort/insertion.c b/test/mppa/sort/insertion.c deleted file mode 100644 index bca09599..00000000 --- a/test/mppa/sort/insertion.c +++ /dev/null @@ -1,59 +0,0 @@ -#include "../prng/prng.h" -#include "../prng/types.h" - -#ifdef __UNIT_TEST_INSERTION__ -#define SIZE 100 -#else -#include "test.h" -#endif - -void swap_ins(uint64_t *a, uint64_t *b){ - uint64_t tmp = *a; - *a = *b; - *b = tmp; -} - -int insert_sort(uint64_t *res, const uint64_t *T){ - int i, j; - - if (SIZE <= 0) - return -1; - - for (i = 0 ; i < SIZE ; i++) - res[i] = T[i]; - - for (i = 0 ; i < SIZE-1 ; i++){ - if (res[i] > res[i+1]){ - swap_ins(&res[i], &res[i+1]); - for (j = i ; j > 0 ; j--) - if (res[j-1] > res[j]) - swap_ins(&res[j-1], &res[j]); - } - } - - return 0; -} - -#ifdef __UNIT_TEST_INSERTION__ -int main(void){ - uint64_t T[SIZE]; - uint64_t res[SIZE]; - int i; - srand(42); - - for (i = 0 ; i < SIZE ; i++) - T[i] = randlong(); - - /* Sorting the table */ - if (insert_sort(res, T) < 0) return -1; - - /* Computing max(T) */ - uint64_t max = T[0]; - for (i = 1 ; i < SIZE ; i++) - if (T[i] > max) - max = T[i]; - - /* We should have: max(T) == res[SIZE] */ - return !(max == res[SIZE-1]); -} -#endif // __UNIT_TEST_INSERTION__ diff --git a/test/mppa/sort/insertion.h b/test/mppa/sort/insertion.h deleted file mode 100644 index 6e37c5fe..00000000 --- a/test/mppa/sort/insertion.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef __INSERTION_H__ -#define __INSERTION_H__ - -int insert_sort(uint64_t *res, const uint64_t *T); - -#endif // __INSERTION_H__ diff --git a/test/mppa/sort/main.c b/test/mppa/sort/main.c deleted file mode 100644 index aef419aa..00000000 --- a/test/mppa/sort/main.c +++ /dev/null @@ -1,34 +0,0 @@ -#include "../prng/prng.h" -#include "../prng/types.h" - -#include "test.h" -#include "insertion.h" -#include "selection.h" -#include "merge.h" - -int main(void){ - uint64_t T[SIZE]; - uint64_t res1[SIZE], res2[SIZE], res3[SIZE]; - int i; - srand(42); - - for (i = 0 ; i < SIZE ; i++) - T[i] = randlong(); - - /* insertion sort */ - if (insert_sort(res1, T) < 0) return -1; - - /* selection sort */ - if (select_sort(res2, T) < 0) return -2; - - /* merge sort */ - if (merge_sort(res3, T) < 0) return -3; - - /* We should have: res1[i] == res2[i] == res3[i] */ - for (i = 0 ; i < SIZE ; i++){ - if (!(res1[i] == res2[i] && res2[i] == res3[i])) - return -4; - } - - return 0; -} diff --git a/test/mppa/sort/merge.c b/test/mppa/sort/merge.c deleted file mode 100644 index 99f8ba85..00000000 --- a/test/mppa/sort/merge.c +++ /dev/null @@ -1,92 +0,0 @@ -#include "../prng/prng.h" -#include "../prng/types.h" - -//https://en.wikipedia.org/wiki/Merge_sort - -#ifdef __UNIT_TEST_MERGE__ -#define SIZE 100 -#else -#include "test.h" -#endif - -int min(int a, int b){ - return (a < b)?a:b; -} - -void BottomUpMerge(const uint64_t *A, int iLeft, int iRight, int iEnd, uint64_t *B) -{ - int i = iLeft, j = iRight, k; - for (k = iLeft; k < iEnd; k++) { - if (i < iRight && (j >= iEnd || A[i] <= A[j])) { - B[k] = A[i]; - i = i + 1; - } else { - B[k] = A[j]; - j = j + 1; - } - } -} - -void CopyArray(uint64_t *to, const uint64_t *from) -{ - const int n = SIZE; - int i; - - for(i = 0; i < n; i++) - to[i] = from[i]; -} - -void BottomUpMergeSort(uint64_t *A, uint64_t *B) -{ - const int n = SIZE; - int width, i; - - for (width = 1; width < n; width = 2 * width) - { - for (i = 0; i < n; i = i + 2 * width) - { - BottomUpMerge(A, i, min(i+width, n), min(i+2*width, n), B); - } - CopyArray(A, B); - } -} - -int merge_sort(uint64_t *res, const uint64_t *T){ - int i; - - if (SIZE <= 0) - return -1; - - uint64_t B[SIZE]; - uint64_t *A = res; - for (i = 0 ; i < SIZE ; i++) - A[i] = T[i]; - - BottomUpMergeSort(A, B); - - return 0; -} - -#ifdef __UNIT_TEST_MERGE__ -int main(void){ - uint64_t T[SIZE]; - uint64_t res[SIZE]; - int i; - srand(42); - - for (i = 0 ; i < SIZE ; i++) - T[i] = randlong(); - - /* Sorting the table */ - if (merge_sort(res, T) < 0) return -1; - - /* Computing max(T) */ - uint64_t max = T[0]; - for (i = 1 ; i < SIZE ; i++) - if (T[i] > max) - max = T[i]; - - /* We should have: max(T) == res[SIZE] */ - return !(max == res[SIZE-1]); -} -#endif // __UNIT_TEST_MERGE__ diff --git a/test/mppa/sort/merge.h b/test/mppa/sort/merge.h deleted file mode 100644 index 439ce64a..00000000 --- a/test/mppa/sort/merge.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef __MERGE_H__ -#define __MERGE_H__ - -int merge_sort(uint64_t *res, const uint64_t *T); - -#endif // __MERGE_H__ - diff --git a/test/mppa/sort/selection.c b/test/mppa/sort/selection.c deleted file mode 100644 index df4be04f..00000000 --- a/test/mppa/sort/selection.c +++ /dev/null @@ -1,62 +0,0 @@ -#include "../prng/prng.h" -#include "../prng/types.h" - -#ifdef __UNIT_TEST_SELECTION__ -#define SIZE 100 -#else -#include "test.h" -#endif - -void swap_sel(uint64_t *a, uint64_t *b){ - uint64_t tmp = *a; - *a = *b; - *b = tmp; -} - -int select_sort(uint64_t *res, const uint64_t *T){ - int i, j, iMin; - - if (SIZE <= 0) - return -1; - - for (i = 0 ; i < SIZE ; i++) - res[i] = T[i]; - - for (j = 0 ; j < SIZE ; j++){ - iMin = j; - for (i = j+1 ; i < SIZE ; i++) - if (res[i] < res[iMin]) - iMin = i; - - if (iMin != j) - swap_sel (&res[j], &res[iMin]); - } - - return 0; -} - -#ifdef __UNIT_TEST_SELECTION__ -int main(void){ - uint64_t T[SIZE]; - uint64_t res[SIZE]; - uint64_t max; - int i; - srand(42); - - for (i = 0 ; i < SIZE ; i++) - T[i] = randlong(); - - /* Sorting the table */ - if (select_sort(res, T) < 0) return -1; - - /* Computing max(T) */ - max = T[0]; - for (i = 1 ; i < SIZE ; i++) - if (T[i] > max) - max = T[i]; - - /* We should have: max(T) == res[SIZE] */ - return !(max == res[SIZE-1]); -} -#endif // __UNIT_TEST_SELECTION__ - diff --git a/test/mppa/sort/selection.h b/test/mppa/sort/selection.h deleted file mode 100644 index 92a6b461..00000000 --- a/test/mppa/sort/selection.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef __SELECTION_H__ -#define __SELECTION_H__ - -int select_sort(uint64_t *res, const uint64_t *T); - -#endif // __SELECTION_H__ diff --git a/test/mppa/sort/test.h b/test/mppa/sort/test.h deleted file mode 100644 index 4501ee38..00000000 --- a/test/mppa/sort/test.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef __TEST_H__ -#define __TEST_H__ - -#define SIZE 100 - -#endif diff --git a/test/regression/builtins-kvx.c b/test/regression/builtins-kvx.c new file mode 100644 index 00000000..cbf51387 --- /dev/null +++ b/test/regression/builtins-kvx.c @@ -0,0 +1,72 @@ +/* Fun with builtins */ + +#include +#include + +char * check_relative_error(double exact, double actual, double precision) +{ + double relative_error = (actual - exact) / exact; + return fabs(relative_error) <= precision ? "OK" : "ERROR"; +} + +//unsigned int x = 0x12345678; +//unsigned int y = 0xDEADBEEF; +//unsigned long long xx = 0x1234567812345678ULL; +//double a = 3.14159; +//double b = 2.718; +//double c = 1.414; +//unsigned short s = 0x1234; + +int main(int argc, char ** argv) +{ + unsigned z; + + //printf("mulhw(%x, %x) = %x\n", x, y, __builtin_mulhw(x, y)); + //printf("mulhwu(%x, %x) = %x\n", x, y, __builtin_mulhwu(x, y)); + //printf("clz(%x) = %d\n", x, __builtin_clz(x)); + //printf("clzll(%llx) = %d\n", (unsigned long long) x, __builtin_clzll(x)); + //printf("clzll(%llx) = %d\n", xx, __builtin_clzll(xx)); + //z = __builtin_bswap(x); + //printf("clzll(%lx) = %d\n", z, __builtin_clzll(z)); + //printf("bswap(%x) = %x\n", x, __builtin_bswap(x)); + //printf("bswap16(%x) = %x\n", s, __builtin_bswap16(s)); + + //printf("fmadd(%f, %f, %f) = %f\n", a, b, c, __builtin_fmadd(a, b, c)); + //printf("fmsub(%f, %f, %f) = %f\n", a, b, c, __builtin_fmsub(a, b, c)); + //printf("fabs(%f) = %f\n", a, __builtin_fabs(a)); + //printf("fabs(%f) = %f\n", -a, __builtin_fabs(-a)); + //printf("fsqrt(%f) = %f\n", a, __builtin_fsqrt(a)); + //printf("frsqrte(%f) = %s\n", + // a, check_relative_error(1.0 / sqrt(a), __builtin_frsqrte(a), 1./32.)); + //printf("fres(%f) = %s\n", + // a, check_relative_error(1.0 / a, __builtin_fres(a), 1./256.)); + //printf("fsel(%f, %f, %f) = %f\n", a, b, c, __builtin_fsel(a, b, c)); + //printf("fsel(%f, %f, %f) = %f\n", -a, b, c, __builtin_fsel(-a, b, c)); + //printf("fcti(%f) = %d\n", a, __builtin_fcti(a)); + //printf("fcti(%f) = %d\n", b, __builtin_fcti(b)); + //printf("fcti(%f) = %d\n", c, __builtin_fcti(c)); + //__builtin_eieio(); + //__builtin_sync(); + //__builtin_isync(); + //printf("isel(%d, %d, %d) = %d\n", 0, x, y, __builtin_isel(0, x, y)); + //printf("isel(%d, %d, %d) = %d\n", 42, x, y, __builtin_isel(42, x, y)); + //printf ("read_16_rev = %x\n", __builtin_read16_reversed(&s)); + //printf ("read_32_rev = %x\n", __builtin_read32_reversed(&y)); + //__builtin_write16_reversed(&s, 0x789A); + //printf ("after write_16_rev: %x\n", s); + //__builtin_write32_reversed(&y, 0x12345678); + //printf ("after write_32_rev: %x\n", y); + //y = 0; + //__builtin_write32_reversed(&y, 0x12345678); + //printf ("CSE write_32_rev: %s\n", y == 0x78563412 ? "ok" : "ERROR"); + ///* Make sure that ignoring the result of a builtin + // doesn't cause an internal error */ + //(void) __builtin_bswap(x); + //(void) __builtin_fsqrt(a); + return 0; +} + + + + + diff --git a/test/regression/builtins-mppa_k1c.c b/test/regression/builtins-mppa_k1c.c deleted file mode 100644 index cbf51387..00000000 --- a/test/regression/builtins-mppa_k1c.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Fun with builtins */ - -#include -#include - -char * check_relative_error(double exact, double actual, double precision) -{ - double relative_error = (actual - exact) / exact; - return fabs(relative_error) <= precision ? "OK" : "ERROR"; -} - -//unsigned int x = 0x12345678; -//unsigned int y = 0xDEADBEEF; -//unsigned long long xx = 0x1234567812345678ULL; -//double a = 3.14159; -//double b = 2.718; -//double c = 1.414; -//unsigned short s = 0x1234; - -int main(int argc, char ** argv) -{ - unsigned z; - - //printf("mulhw(%x, %x) = %x\n", x, y, __builtin_mulhw(x, y)); - //printf("mulhwu(%x, %x) = %x\n", x, y, __builtin_mulhwu(x, y)); - //printf("clz(%x) = %d\n", x, __builtin_clz(x)); - //printf("clzll(%llx) = %d\n", (unsigned long long) x, __builtin_clzll(x)); - //printf("clzll(%llx) = %d\n", xx, __builtin_clzll(xx)); - //z = __builtin_bswap(x); - //printf("clzll(%lx) = %d\n", z, __builtin_clzll(z)); - //printf("bswap(%x) = %x\n", x, __builtin_bswap(x)); - //printf("bswap16(%x) = %x\n", s, __builtin_bswap16(s)); - - //printf("fmadd(%f, %f, %f) = %f\n", a, b, c, __builtin_fmadd(a, b, c)); - //printf("fmsub(%f, %f, %f) = %f\n", a, b, c, __builtin_fmsub(a, b, c)); - //printf("fabs(%f) = %f\n", a, __builtin_fabs(a)); - //printf("fabs(%f) = %f\n", -a, __builtin_fabs(-a)); - //printf("fsqrt(%f) = %f\n", a, __builtin_fsqrt(a)); - //printf("frsqrte(%f) = %s\n", - // a, check_relative_error(1.0 / sqrt(a), __builtin_frsqrte(a), 1./32.)); - //printf("fres(%f) = %s\n", - // a, check_relative_error(1.0 / a, __builtin_fres(a), 1./256.)); - //printf("fsel(%f, %f, %f) = %f\n", a, b, c, __builtin_fsel(a, b, c)); - //printf("fsel(%f, %f, %f) = %f\n", -a, b, c, __builtin_fsel(-a, b, c)); - //printf("fcti(%f) = %d\n", a, __builtin_fcti(a)); - //printf("fcti(%f) = %d\n", b, __builtin_fcti(b)); - //printf("fcti(%f) = %d\n", c, __builtin_fcti(c)); - //__builtin_eieio(); - //__builtin_sync(); - //__builtin_isync(); - //printf("isel(%d, %d, %d) = %d\n", 0, x, y, __builtin_isel(0, x, y)); - //printf("isel(%d, %d, %d) = %d\n", 42, x, y, __builtin_isel(42, x, y)); - //printf ("read_16_rev = %x\n", __builtin_read16_reversed(&s)); - //printf ("read_32_rev = %x\n", __builtin_read32_reversed(&y)); - //__builtin_write16_reversed(&s, 0x789A); - //printf ("after write_16_rev: %x\n", s); - //__builtin_write32_reversed(&y, 0x12345678); - //printf ("after write_32_rev: %x\n", y); - //y = 0; - //__builtin_write32_reversed(&y, 0x12345678); - //printf ("CSE write_32_rev: %s\n", y == 0x78563412 ? "ok" : "ERROR"); - ///* Make sure that ignoring the result of a builtin - // doesn't cause an internal error */ - //(void) __builtin_bswap(x); - //(void) __builtin_fsqrt(a); - return 0; -} - - - - - -- cgit