[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
PA: more misc fixes
From: |
Matthew Wilcox |
Subject: |
PA: more misc fixes |
Date: |
Thu, 19 Apr 2001 23:42:00 -0600 |
2001-04-19 Alan Modra <address@hidden>
* Makerules (libc_pic.os): Add $(LDFLAGS-os).
* sysdeps/hppa/Makefile (LDFLAGS-os): Define.
(CFLAGS-.os): Remove.
* sysdeps/unix/sysv/linux/hppa/sysdep.h (CALL_MCOUNT): Update comment.
* sysdeps/unix/sysv/linux/hppa/sys/ucontext.h (NGREG, NFPREG,
gregset): Correct for new kernel definitions.
Index: Makerules
===================================================================
RCS file: /cvs/glibc/libc/Makerules,v
retrieving revision 1.349
diff -u -p -r1.349 Makerules
--- Makerules 2001/04/18 16:02:13 1.349
+++ Makerules 2001/04/20 05:38:00
@@ -500,7 +500,7 @@ LDFLAGS-c.so += -u __register_frame
# between libc.so and ld.so, which can make it impossible to upgrade.
$(common-objpfx)libc_pic.os: $(common-objpfx)libc_pic.a
$(LINK.o) -nostdlib -nostartfiles -r -o $@ \
- -Wl,-d -Wl,--whole-archive $^
+ $(LDFLAGS-os) -Wl,-d -Wl,--whole-archive $^
# Use our own special initializer and finalizer files for libc.so.
$(common-objpfx)libc.so: $(elfobjdir)/soinit.os \
$(common-objpfx)libc_pic.os \
Index: sysdeps/hppa/Makefile
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/hppa/Makefile,v
retrieving revision 1.1
diff -u -p -r1.1 Makefile
--- sysdeps/hppa/Makefile 2000/10/15 03:16:57 1.1
+++ sysdeps/hppa/Makefile 2001/04/20 05:38:01
@@ -17,8 +17,10 @@
# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-# We need this for all shared objects since the build process uses ld -r
-CFLAGS-.os += -ffunction-sections
+# We used to need this since the build process uses ld -r. Now we use
+# ld -r --unique=.text* which does more or less the same thing, but better.
+# CFLAGS-.os += -ffunction-sections
+LDFLAGS-os += -Wl,--unique=.text*
ifeq ($(subdir),elf)
dl-routines += dl-symaddr dl-fptr
Index: sysdeps/unix/sysv/linux/hppa/sysdep.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/hppa/sysdep.h,v
retrieving revision 1.3
diff -u -p -r1.3 sysdep.h
--- sysdeps/unix/sysv/linux/hppa/sysdep.h 2001/04/19 21:23:49 1.3
+++ sysdeps/unix/sysv/linux/hppa/sysdep.h 2001/04/20 05:38:01
@@ -89,13 +89,8 @@
1: .size C_SYMBOL_NAME(name),1b-C_SYMBOL_NAME(name)
/* If compiled for profiling, call `mcount' at the start of each function. */
-#ifdef PROF
-/* The mcount code relies on a normal frame pointer being on the stack
- to locate our caller, so push one just for its benefit. */
-#define CALL_MCOUNT /* XXX */
-#else
+/* No, don't bother. gcc will put the call in for us. */
#define CALL_MCOUNT /* Do nothing. */
-#endif
/* syscall wrappers consist of
#include <sysdep.h>
Index: sysdeps/unix/sysv/linux/hppa/sys/ucontext.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/hppa/sys/ucontext.h,v
retrieving revision 1.2
diff -u -p -r1.2 ucontext.h
--- sysdeps/unix/sysv/linux/hppa/sys/ucontext.h 2000/10/15 18:37:53 1.2
+++ sysdeps/unix/sysv/linux/hppa/sys/ucontext.h 2001/04/20 05:38:01
@@ -33,15 +33,16 @@
typedef unsigned long int greg_t;
/* Number of general registers. */
-#define NGREG 42
-#define NFPREG 33
+#define NGREG 80
+#define NFPREG 32
/* Container for all general registers. */
typedef struct gregset
{
greg_t g_regs[32];
- greg_t sr_regs[5];
- greg_t g_pad[5];
+ greg_t sr_regs[8];
+ greg_t cr_regs[24];
+ greg_t g_pad[16];
} gregset_t;
/* Container for all FPU registers. */
- PA: more misc fixes,
Matthew Wilcox <=