OSDN Git Service

Patch from Yoshinori Sato <qzb04471@nifty.ne.jp> to fix up
authorEric Andersen <andersen@codepoet.org>
Sat, 16 Feb 2002 20:03:25 +0000 (20:03 -0000)
committerEric Andersen <andersen@codepoet.org>
Sat, 16 Feb 2002 20:03:25 +0000 (20:03 -0000)
ptrace for the Hitachi h8300

libc/sysdeps/linux/h8300/ptrace.c

index acd6db0..64fb7bc 100644 (file)
@@ -2,15 +2,26 @@
 #include <errno.h>
 #include <asm/ptrace.h>
 #include <sys/syscall.h>
+#include <stdarg.h>
 
 int
-ptrace(int request, int pid, int addr, int data)
+ptrace(int request, ... /* int pid, int addr, int data */)
 {
        long ret;
        long res;
+       int pid,addr,data;
+       va_list ap;
+
+       va_start(ap,request);
+       pid  = va_arg(ap,int);
+       addr = va_arg(ap,int);
+       data = va_arg(ap,int);
+       va_end(ap);
+
        if (request > 0 && request < 4) (long *)data = &ret;
 
-       __asm__ volatile ("mov.l %1,er0\n\t"
+       __asm__ volatile ("sub.l er0,er0\n\t"
+                          "mov.b %1,r0l\n\t"
                          "mov.l %2,er1\n\t"
                          "mov.l %3,er2\n\t"
                          "mov.l %4,er3\n\t"