about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-07-25 22:15:17 +0000
committerUlrich Drepper <drepper@redhat.com>2001-07-25 22:15:17 +0000
commitca13ce66be1bb4d218c89b1680e7aa177a3275cd (patch)
treee3789e80df94ee38392971b6863f7d9d027aba2b
parent6ef77f193e623585ccc8af005df956c5e10e01ca (diff)
downloadglibc-ca13ce66be1bb4d218c89b1680e7aa177a3275cd.tar.gz
glibc-ca13ce66be1bb4d218c89b1680e7aa177a3275cd.tar.xz
glibc-ca13ce66be1bb4d218c89b1680e7aa177a3275cd.zip
Update.
2001-07-25  Ulrich Drepper  <drepper@redhat.com>

	* csu/gmon-start.c: Use ENTRY_POINT_DECL is defined instead of a
	declaration using ENTRY_POINT.
	* sysdeps/ia64/elf/entry.h (ENTRY_POINT_DECL): New definition.

2001-07-25  H.J. Lu  <hjl@gnu.org>

	* csu/gmon-start.c: Include <entry.h>
	(_start): Replaced with ENTRY_POINT.
-rw-r--r--ChangeLog11
-rw-r--r--csu/gmon-start.c9
-rw-r--r--sysdeps/ia64/elf/entry.h3
3 files changed, 21 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index d043b8b8aa..65ebdf4460 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2001-07-25  Ulrich Drepper  <drepper@redhat.com>
+
+	* csu/gmon-start.c: Use ENTRY_POINT_DECL is defined instead of a
+	declaration using ENTRY_POINT.
+	* sysdeps/ia64/elf/entry.h (ENTRY_POINT_DECL): New definition.
+
+2001-07-25  H.J. Lu  <hjl@gnu.org>
+
+	* csu/gmon-start.c: Include <entry.h>
+	(_start): Replaced with ENTRY_POINT.
+
 2001-07-25  Mark Kettenis  <kettenis@gnu.org>
 
 	* sysdeps/unix/bsd/bsd4.4/bits/socket.h: New file.
diff --git a/csu/gmon-start.c b/csu/gmon-start.c
index dce4688474..4df3a1326e 100644
--- a/csu/gmon-start.c
+++ b/csu/gmon-start.c
@@ -1,5 +1,5 @@
 /* Code to enable profiling at program startup.
-   Copyright (C) 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 2000, 2001 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
@@ -28,7 +28,12 @@
    as the external functions since we want the addresses of those
    labels. Taking the address of a function may have different
    meanings on different platforms. */
-extern void ENTRY_POINT, etext;
+#ifdef ENTRY_POINT_DECL
+ENTRY_POINT_DECL(extern)
+#else
+extern void ENTRY_POINT;
+#endif
+extern void etext;
 
 #ifndef HAVE_INITFINI
 /* This function gets called at startup by the normal constructor
diff --git a/sysdeps/ia64/elf/entry.h b/sysdeps/ia64/elf/entry.h
index 53ea9a2297..b93e1b6a57 100644
--- a/sysdeps/ia64/elf/entry.h
+++ b/sysdeps/ia64/elf/entry.h
@@ -5,3 +5,6 @@ extern void _start (void);
 /* The function's entry point is stored in the first word of the
    function descriptor (plabel) of _start().  */
 #define ENTRY_POINT (((long int *) _start)[0])
+
+/* We have to provide a special declaration.  */
+#define ENTRY_POINT_DECL(class) class void _start (void);