diff options
author | Alex Bennée <alex.bennee@linaro.org> | 2018-04-05 15:50:08 +0100 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2018-06-20 20:22:34 +0100 |
commit | 106ea2db123ff4ed57b38b4c0084b46833a3ae4c (patch) | |
tree | 96924b26efa194a41d2e4dc4bc868063b8b549c4 /tests/tcg/hello-mips.c | |
parent | 8ec8a55e3fc9769c9904ba0dea81414784a6d527 (diff) |
tests/tcg: move MIPS specific tests into subdir
These only need to be built for MIPS guests.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Diffstat (limited to 'tests/tcg/hello-mips.c')
-rw-r--r-- | tests/tcg/hello-mips.c | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/tests/tcg/hello-mips.c b/tests/tcg/hello-mips.c deleted file mode 100644 index f8256730dd..0000000000 --- a/tests/tcg/hello-mips.c +++ /dev/null @@ -1,64 +0,0 @@ -/* -* MIPS o32 Linux syscall example -* -* http://www.linux-mips.org/wiki/RISC/os -* http://www.linux-mips.org/wiki/MIPSABIHistory -* http://www.linux.com/howtos/Assembly-HOWTO/mips.shtml -* -* mipsel-linux-gcc -nostdlib -mno-abicalls -fno-PIC -mabi=32 \ -* -O2 -static -o hello-mips hello-mips.c -* -*/ -#define __NR_SYSCALL_BASE 4000 -#define __NR_exit (__NR_SYSCALL_BASE+ 1) -#define __NR_write (__NR_SYSCALL_BASE+ 4) - -static inline void exit1(int status) -{ - register unsigned long __a0 asm("$4") = (unsigned long) status; - - __asm__ __volatile__ ( - " .set push \n" - " .set noreorder \n" - " li $2, %0 \n" - " syscall \n" - " .set pop " - : - : "i" (__NR_exit), "r" (__a0) - : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", - "memory"); -} - -static inline int write(int fd, const char *buf, int len) -{ - register unsigned long __a0 asm("$4") = (unsigned long) fd; - register unsigned long __a1 asm("$5") = (unsigned long) buf; - register unsigned long __a2 asm("$6") = (unsigned long) len; - register unsigned long __a3 asm("$7"); - unsigned long __v0; - - __asm__ __volatile__ ( - " .set push \n" - " .set noreorder \n" - " li $2, %2 \n" - " syscall \n" - " move %0, $2 \n" - " .set pop " - : "=r" (__v0), "=r" (__a3) - : "i" (__NR_write), "r" (__a0), "r" (__a1), "r" (__a2) - : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", - "memory"); - -/* if (__a3 == 0) */ - return (int) __v0; -/* - errno = __v0; - return -1; - */ -} - -void __start(void) -{ - write (1, "Hello, World!\n", 14); - exit1 (42); -} |