aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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);