about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/sh
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-10-15 05:47:36 +0000
committerUlrich Drepper <drepper@redhat.com>2003-10-15 05:47:36 +0000
commit1769a73f0bd6e11590ed88eea4391284585216d7 (patch)
tree30d2a677126a9df933f58f9b8863064868e6d945 /sysdeps/unix/sysv/linux/sh
parentfa3cbe3d5d0c6e6b4de642de8693f9f58347d18c (diff)
downloadglibc-1769a73f0bd6e11590ed88eea4391284585216d7.tar.gz
glibc-1769a73f0bd6e11590ed88eea4391284585216d7.tar.xz
glibc-1769a73f0bd6e11590ed88eea4391284585216d7.zip
Update.
2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>

	* 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  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
	after trapa instruction.
Diffstat (limited to 'sysdeps/unix/sysv/linux/sh')
-rw-r--r--sysdeps/unix/sysv/linux/sh/sysdep.h15
1 files changed, 8 insertions, 7 deletions
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"