From 6e96b6ec3a6a092ea3eeca1fa9b1eb61e3ab8a45 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 24 Jul 2002 17:39:23 +0000 Subject: [PATCH] Update. 2002-07-24 Philip Blundell * sysdeps/unix/arm/brk.S: Improve schedule. * sysdeps/unix/sysv/linux/arm/socket.S (PUSHARGS_1): Use more efficient instruction. (__socket): Optimize return sequence. * locale/hashval.h: Make more self-contained by defining LONG_BITS. --- ChangeLog | 9 ++++++++- sysdeps/unix/arm/brk.S | 6 +++--- sysdeps/unix/sysv/linux/arm/socket.S | 8 +++----- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0e37d65..e292f18 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2002-07-24 Philip Blundell + + * sysdeps/unix/arm/brk.S: Improve schedule. + * sysdeps/unix/sysv/linux/arm/socket.S (PUSHARGS_1): Use more + efficient instruction. + (__socket): Optimize return sequence. + 2002-07-24 Ulrich Drepper * sysdeps/unix/sysv/linux/opensock.c (__opensock): Prefer inet @@ -11,7 +18,7 @@ 2002-07-24 Ulrich Drepper - * locale/hashval.h: Make more self-containedby defining LONG_BITS. + * locale/hashval.h: Make more self-contained by defining LONG_BITS. * locale/programs/simple-hash.c: Remove LONG_BITS definition. * locale/programs/locarchive.c (add_locale_to_archive): Correct diff --git a/sysdeps/unix/arm/brk.S b/sysdeps/unix/arm/brk.S index c68fec6..9e20dc6 100644 --- a/sysdeps/unix/arm/brk.S +++ b/sysdeps/unix/arm/brk.S @@ -35,8 +35,8 @@ C_LABEL(__curbrk) SYSCALL__ (brk, 1) #ifdef PIC ldr r1, 1f - add r1, r1, pc -2: ldr r2, _cb_addr + ldr r2, _cb_addr +2: add r1, pc, r1 add r1, r1, r2 #else ldr r1, _cb_addr @@ -45,7 +45,7 @@ SYSCALL__ (brk, 1) mov r0, $0 RETINSTR(mov, pc, r14) #ifdef PIC -1: .long _GLOBAL_OFFSET_TABLE_ - 2b - 4 +1: .long _GLOBAL_OFFSET_TABLE_ - 2b - 8 _cb_addr: .long C_SYMBOL_NAME(__curbrk)(GOTOFF) #else diff --git a/sysdeps/unix/sysv/linux/arm/socket.S b/sysdeps/unix/sysv/linux/arm/socket.S index a672413..2672de7 100644 --- a/sysdeps/unix/sysv/linux/arm/socket.S +++ b/sysdeps/unix/sysv/linux/arm/socket.S @@ -35,7 +35,7 @@ #define __socket P(__,socket) #endif -#define PUSHARGS_1 stmfd sp!, {a1} +#define PUSHARGS_1 str a1, [sp, $-4]! #define PUSHARGS_2 stmfd sp!, {a1, a2} #define PUSHARGS_3 stmfd sp!, {a1, a2, a3} #define PUSHARGS_4 stmfd sp!, {a1, a2, a3, a4} @@ -78,10 +78,8 @@ ENTRY (__socket) /* r0 is < 0 if there was an error. */ cmn r0, $124 - bhs PLTJMP(syscall_error) - - /* Successful; return the syscall's value. */ - ret + RETINSTR(movcc, pc, r14) + b PLTJMP(syscall_error) PSEUDO_END (__socket) -- 2.7.4