From 1057567ea711d80f9937653179b06507827d5819 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Mon, 9 Nov 2015 00:13:08 -0500 Subject: sim: m32c: move test code to testsuite Various target code belongs in the testsuite/ subdir, so move the m32c code to match all the other targets. --- sim/testsuite/sim/m32c/ChangeLog | 4 ++++ sim/testsuite/sim/m32c/blinky.s | 34 +++++++++++++++++++++++++++++++++ sim/testsuite/sim/m32c/gloss.s | 32 +++++++++++++++++++++++++++++++ sim/testsuite/sim/m32c/sample.ld | 41 ++++++++++++++++++++++++++++++++++++++++ sim/testsuite/sim/m32c/sample.s | 27 ++++++++++++++++++++++++++ sim/testsuite/sim/m32c/sample2.c | 29 ++++++++++++++++++++++++++++ 6 files changed, 167 insertions(+) create mode 100644 sim/testsuite/sim/m32c/ChangeLog create mode 100644 sim/testsuite/sim/m32c/blinky.s create mode 100644 sim/testsuite/sim/m32c/gloss.s create mode 100644 sim/testsuite/sim/m32c/sample.ld create mode 100644 sim/testsuite/sim/m32c/sample.s create mode 100644 sim/testsuite/sim/m32c/sample2.c (limited to 'sim/testsuite') diff --git a/sim/testsuite/sim/m32c/ChangeLog b/sim/testsuite/sim/m32c/ChangeLog new file mode 100644 index 0000000..2c28054 --- /dev/null +++ b/sim/testsuite/sim/m32c/ChangeLog @@ -0,0 +1,4 @@ +2015-11-09 Mike Frysinger + + * blinky.s: Moved from ../../../m32c/. + * gloss.s, sample.ld, sample.s, sample2.c: Likewise. diff --git a/sim/testsuite/sim/m32c/blinky.s b/sim/testsuite/sim/m32c/blinky.s new file mode 100644 index 0000000..725ac7c --- /dev/null +++ b/sim/testsuite/sim/m32c/blinky.s @@ -0,0 +1,34 @@ +;;; blinky.s --- sample program to blink LED's on M32C simulator +;;; +;;; Copyright (C) 2005-2015 Free Software Foundation, Inc. +;;; Contributed by Red Hat, Inc. +;;; +;;; This file is part of the GNU simulators. +;;; +;;; This program is free software; you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see . + + .text + + .global _start +_start: + mov.w #0xe1,a0 +top: + sub.w #1,r0 + mov.b r0h,[a0] + + mov.w #1000,r1 +loop: + adjnz.w #-1,r1,loop + + jmp.w top diff --git a/sim/testsuite/sim/m32c/gloss.s b/sim/testsuite/sim/m32c/gloss.s new file mode 100644 index 0000000..981036d --- /dev/null +++ b/sim/testsuite/sim/m32c/gloss.s @@ -0,0 +1,32 @@ +;;; gloss.s --- system calls for sample2.x +;;; +;;; Copyright (C) 2005-2015 Free Software Foundation, Inc. +;;; Contributed by Red Hat, Inc. +;;; +;;; This file is part of the GNU simulators. +;;; +;;; This program is free software; you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see . + +;;; See the 'sample2.x' target in Makefile.in. + .global _exit +_exit: + mov.b #1,r0l + ste.b r0l,0xe0000 + rts + + .global _foo +_foo: + mov.b #2,r0l + ste.b r0l,0xe0000 + rts diff --git a/sim/testsuite/sim/m32c/sample.ld b/sim/testsuite/sim/m32c/sample.ld new file mode 100644 index 0000000..73574dc --- /dev/null +++ b/sim/testsuite/sim/m32c/sample.ld @@ -0,0 +1,41 @@ +/* sample2.ld --- linker script for sample2.x + +Copyright (C) 2005-2015 Free Software Foundation, Inc. +Contributed by Red Hat, Inc. + +This file is part of the GNU simulators. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . */ + +/* See the 'sample2.x' target in Makefile.in. */ + +ENTRY(_start) + +MEMORY { + RAM1 (w) : ORIGIN = 0xc800, LENGTH = 0x0200 + RAM2 (w) : ORIGIN = 0xca56, LENGTH = 0x1000 + ROM (w) : ORIGIN = 0x30000, LENGTH = 0x1000 +} + +SECTIONS { + .data : { + *(.data*) + } > RAM1 + .text : { + *(.text*) + } > RAM2 + .fardata : { + *(.fardata*) + } > ROM +} diff --git a/sim/testsuite/sim/m32c/sample.s b/sim/testsuite/sim/m32c/sample.s new file mode 100644 index 0000000..1c5f23d --- /dev/null +++ b/sim/testsuite/sim/m32c/sample.s @@ -0,0 +1,27 @@ +;;; sample.s --- simple test program for M32C simulator +;;; +;;; Copyright (C) 2005-2015 Free Software Foundation, Inc. +;;; Contributed by Red Hat, Inc. +;;; +;;; This file is part of the GNU simulators. +;;; +;;; This program is free software; you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see . + + .text + + .global _start +_start: + mov.w #0x1234,r1 + mov.w r1,r3 | sha.w #-8,r3 | sha.w #-7,r3 + brk diff --git a/sim/testsuite/sim/m32c/sample2.c b/sim/testsuite/sim/m32c/sample2.c new file mode 100644 index 0000000..776989c --- /dev/null +++ b/sim/testsuite/sim/m32c/sample2.c @@ -0,0 +1,29 @@ +/* sample2.c --- main source for sample2.x test program for M32C simulator + +Copyright (C) 2005-2015 Free Software Foundation, Inc. +Contributed by Red Hat, Inc. + +This file is part of the GNU simulators. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . */ + +/* See the 'sample2.x' target in Makefile.in. */ +void exit (int); + +void +start (void) +{ + foo (1, 2, 3, 4); + exit (5); +} -- cgit v1.1