From: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Laurent Vivier <laur...@vivier.eu> --- .gitignore | 7 +++++++ tests/m68k/Makefile | 6 +----- tests/m68k/fabs.S | 9 +++++++++ tests/m68k/fdiv.S | 10 ++++++++++ tests/m68k/fmove.S | 13 +++++++++---- tests/m68k/fmul.S | 9 +++++++++ tests/m68k/fsub.S | 11 +++++++++++ 7 files changed, 56 insertions(+), 9 deletions(-) create mode 100644 tests/m68k/fabs.S create mode 100644 tests/m68k/fdiv.S create mode 100644 tests/m68k/fmul.S create mode 100644 tests/m68k/fsub.S
diff --git a/.gitignore b/.gitignore index 59c343c..08819c2 100644 --- a/.gitignore +++ b/.gitignore @@ -71,3 +71,10 @@ cscope.* tags TAGS *~ +tests/m68k/fabs +tests/m68k/fdiv +tests/m68k/fmove +tests/m68k/fmovecr +tests/m68k/fmovem +tests/m68k/fmul +tests/m68k/fsub diff --git a/tests/m68k/Makefile b/tests/m68k/Makefile index 8f09805..8b0d8a7 100644 --- a/tests/m68k/Makefile +++ b/tests/m68k/Makefile @@ -1,14 +1,10 @@ -TESTS=fmovecr fmove fmovem +TESTS=fmovecr fmove fmovem fsub fdiv fmul fabs all: $(TESTS) %: %.S m68k-linux-gnu-gcc -m68040 -nostartfiles -nodefaultlibs -nostdlib -o $@ $< -fmovecr: fmovecr.S -fmove: fmove.S -fmovem: fmovem.S - .PHONY: clean clean: diff --git a/tests/m68k/fabs.S b/tests/m68k/fabs.S new file mode 100644 index 0000000..cbe2a4a --- /dev/null +++ b/tests/m68k/fabs.S @@ -0,0 +1,9 @@ + .include "trap.i" + + .text + .globl _start +_start: + fabs.b #-55, %fp0 + fmove.l #-1024, %fp1 + fabs.x %fp1 + exit 0 diff --git a/tests/m68k/fdiv.S b/tests/m68k/fdiv.S new file mode 100644 index 0000000..a5e3656 --- /dev/null +++ b/tests/m68k/fdiv.S @@ -0,0 +1,10 @@ + .include "trap.i" + + .text + .globl _start +_start: +# Pi + fmove.b #10, %fp0 + fmove.b #3, %fp1 + fdiv.x %fp1, %fp0 + exit 0 diff --git a/tests/m68k/fmove.S b/tests/m68k/fmove.S index 3f2daba..d08c866 100644 --- a/tests/m68k/fmove.S +++ b/tests/m68k/fmove.S @@ -2,9 +2,8 @@ .data tmp: .long 0x88776655 -pi: .long 0x40000000 - .long 0xc90fdaa2 - .long 0x2168C235 +pi: .long 0x40000000, 0xc90fdaa2, 0x2168C235 +store: .long 0, 0, 0 .text .globl _start @@ -12,6 +11,12 @@ _start: lea pi,%a0 move.l (%a0), %d0 fmove.x (%a0), %fp4 + fmove.b %fp4, store + fmove.w %fp4, store + fmove.l %fp4, store + fmove.s %fp4, store + fmove.d %fp4, store + fmove.x %fp4, store # Dn move.l #-1, %d3 @@ -48,7 +53,7 @@ _start: fmove.w #0xFABC,%fp1 fmove.l #0xFABCDEFA,%fp2 fmove.s #0xDEADBEAF,%fp3 - fmove.d #0xFABCDEFADEADBEAF,%fp4 + fmove.d #0f4.29497E+09,%fp4 fmove.x #0xFABCDEFADEADBEAF12345678,%fp5 fmove.p #0xFABCDEFADEADBEAF12345678,%fp6 diff --git a/tests/m68k/fmul.S b/tests/m68k/fmul.S new file mode 100644 index 0000000..1b989fc --- /dev/null +++ b/tests/m68k/fmul.S @@ -0,0 +1,9 @@ + .include "trap.i" + + .text + .globl _start +_start: + fmove.b #255, %fp0 + fmove.w #1023, %fp1 + fmul.x %fp1, %fp0 + exit 0 diff --git a/tests/m68k/fsub.S b/tests/m68k/fsub.S new file mode 100644 index 0000000..cf1a77a --- /dev/null +++ b/tests/m68k/fsub.S @@ -0,0 +1,11 @@ + .include "trap.i" + + .text + .globl _start +_start: +# Pi + fmovecr.x #0x00, %fp0 + fmove.b #3, %fp1 +# 0.1415926535897932 + fsub.x %fp1, %fp0 + exit 0 -- 1.7.2.3