diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | Makerules | 8 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/socket.S | 4 |
3 files changed, 16 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog index fe09dfa769..8e52bf5d13 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Tue May 28 13:11:19 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> + + * Makerules (sed-remove-objpfx): Avoid extra space in regexp due to + continuation line. + + * sysdeps/unix/sysv/linux/i386/socket.S: Fix off-by-one error in + setting %ecx to 2nd syscall arg: we have pushed nothing, so function + args are found at 4(%esp), not 8(%esp). + Mon May 27 10:10:00 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * Makefile ($(includedir)/stubs.h): Add missing backslash. diff --git a/Makerules b/Makerules index f2c7a7d66d..15a0b0e7af 100644 --- a/Makerules +++ b/Makerules @@ -281,9 +281,11 @@ $(sed-remove-objpfx) > $(@:.d=.T) mv -f $(@:.d=.T) $@ endef ifneq (,$(objpfx)) -sed-remove-objpfx = -e 's@ $(subst .,\.,\ - $(subst @,\@,$(objpfx)))@ $$(objpfx)@g' \ - -e 's@^$(subst .,\.,$(subst @,\@,$(objpfx)))@$$(objpfx)@g' +# Continuation lines here are dangerous because they introduce spaces! +define sed-remove-objpfx +-e 's@ $(subst .,\.,$(subst @,\@,$(objpfx)))@ $$(objpfx)@g' \ +-e 's@^$(subst .,\.,$(subst @,\@,$(objpfx)))@$$(objpfx)@g' +endef endif # Figure out the source filenames in this directory. diff --git a/sysdeps/unix/sysv/linux/i386/socket.S b/sysdeps/unix/sysv/linux/i386/socket.S index 5a7d774175..39db6aa50a 100644 --- a/sysdeps/unix/sysv/linux/i386/socket.S +++ b/sysdeps/unix/sysv/linux/i386/socket.S @@ -1,4 +1,4 @@ -/* Copyright (C) 1995 Free Software Foundation, Inc. +/* Copyright (C) 1995, 1996 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -43,7 +43,7 @@ ENTRY (P(__,socket)) /* Use ## so `socket' is a separate token that might be #define'd. */ movl $P(SOCKOP_,socket), %ebx /* Subcode is first arg to syscall. */ - lea 8(%esp), %ecx /* Address of args is 2nd arg. */ + lea 4(%esp), %ecx /* Address of args is 2nd arg. */ /* Do the system call trap. */ int $0x80 |