From 1769a73f0bd6e11590ed88eea4391284585216d7 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 15 Oct 2003 05:47:36 +0000 Subject: Update. 2003-10-12 Carlos O'Donell * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use. * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL, SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL, and undef JUMPTARGET before use. [PIC]: Save pic register around syscall. * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall): Cleanup asm statment. 2003-10-13 Kaz Kojima * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD after trapa instruction. --- sysdeps/unix/sysv/linux/sh/sysdep.h | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'sysdeps/unix/sysv/linux/sh') diff --git a/sysdeps/unix/sysv/linux/sh/sysdep.h b/sysdeps/unix/sysv/linux/sh/sysdep.h index ee6eec1956..cb36ec7663 100644 --- a/sysdeps/unix/sysv/linux/sh/sysdep.h +++ b/sysdeps/unix/sysv/linux/sh/sysdep.h @@ -183,6 +183,13 @@ # endif /* _LIBC_REENTRANT */ #endif /* PIC */ +# ifdef NEED_SYSCALL_INST_PAD +# define SYSCALL_INST_PAD \ + or r0,r0; or r0,r0; or r0,r0; or r0,r0; or r0,r0 +# else +# define SYSCALL_INST_PAD +# endif + #define SYSCALL_INST0 trapa #0x10 #define SYSCALL_INST1 trapa #0x11 #define SYSCALL_INST2 trapa #0x12 @@ -195,19 +202,13 @@ #define DO_CALL(syscall_name, args) \ mov.l 1f,r3; \ SYSCALL_INST##args; \ + SYSCALL_INST_PAD; \ bra 2f; \ nop; \ .align 2; \ 1: .long SYS_ify (syscall_name); \ 2: -# ifdef NEED_SYSCALL_INST_PAD -# define SYSCALL_INST_PAD \ - or r0,r0; or r0,r0; or r0,r0; or r0,r0; or r0,r0 -# else -# define SYSCALL_INST_PAD -# endif - #else /* not __ASSEMBLER__ */ #define SYSCALL_INST_STR0 "trapa #0x10\n\t" -- cgit 1.4.1