This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: 2.95.4 plans
- To: Bernd Schmidt <bernds at cambridge dot redhat dot com>
- Subject: Re: 2.95.4 plans
- From: Manfred Hollstein <manfredh at redhat dot com>
- Date: Mon, 19 Mar 2001 16:41:05 +0100 (CET)
- Cc: gcc at gcc dot gnu dot org
- References: <Pine.LNX.4.30.0103161614060.1311-100000@host140.cambridge.redhat.com>
- Reply-To: Manfred Hollstein <manfred dot h at gmx dot net>
On Friday, 16 March 2001, 16:18:03 +0000, bernds@cambridge.redhat.com wrote:
> Now that 2.95.3 is out, I'll again accept suggestions what to include in
> 2.95.4, so please send candidate patches and bug reports.
This patch hadn't been accepted because it was too late. I'd like to
see this integrated now.
Cheers.
l8er
manfred
On Sun, 4 Feb 2001 16:44:09 +0100, manfredh@redhat.com wrote:
Hi Bernd,
Running "make check" with a snapshot from the binutils-2_11-branch
using a gcc-2.95.3 pre-release from the gcc-2_95-branch on
armv4l-unknown-linux-gnu showed these failures:
ld/ld.log:
/home/gnu/work/GNU/binutils-2.11-armv4l-unknown-linux-gnu/ld/../binutils/nm-new tmpdir/2.x >tmpdir/nm.out
selective3: missing foo
FAIL: selective3
[...]
/home/gnu/work/GNU/binutils-2.11-armv4l-unknown-linux-gnu/ld/../binutils/nm-new tmpdir/3.x >tmpdir/nm.out
selective4: missing start
FAIL: selective4
Philip Blundell sent me a patch for that, which I tested today on
trees checked out from
binutils: anoncvs.cygnus.com as of 2001/02/04 11:01:57 +0100
gcc: gcc.gnu.org as of 2001/02/04 10:51:44 +0100
As a result these failures are fixed now, and no other regressions
showed up. I'd appreciate, if you can install this patch in the
upcoming gcc-2.95.3 release tree.
TIA, cheers.
l8er
manfred
2001-02-02 Philip Blundell <philb@gnu.org>
* arm/linux-elf.h (MAKE_DECL_ONE_ONLY, UNIQUE_SECTION_P): Define.
(UNIQUE_SECTION): Define.
diff -rup -x CVS -x RCS -x *.o -x *.info* -x *.html* -x *.elc -x *.dvi -x *.orig -x *~ -x version.el gcc-2.95.3.orig/gcc/config/arm/linux-elf.h gcc-2.95.3/gcc/config/arm/linux-elf.h
--- gcc-2.95.3.orig/gcc/config/arm/linux-elf.h Sun Jan 28 14:54:49 2001
+++ gcc-2.95.3/gcc/config/arm/linux-elf.h Sun Feb 4 10:58:39 2001
@@ -223,6 +223,44 @@ const_section () \
go into the const section. */
#define SELECT_RTX_SECTION(MODE,RTX) const_section ()
+#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1)
+#define UNIQUE_SECTION_P(DECL) (DECL_ONE_ONLY (DECL))
+
+#define UNIQUE_SECTION(DECL, RELOC) \
+ do \
+ { \
+ int len; \
+ char *name; \
+ char *string; \
+ char *prefix; \
+ \
+ name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (DECL)); \
+ \
+ if (! DECL_ONE_ONLY (DECL)) \
+ { \
+ prefix = "."; \
+ if (TREE_CODE (DECL) == FUNCTION_DECL) \
+ prefix = ".text."; \
+ else if (DECL_READONLY_SECTION (DECL, RELOC)) \
+ prefix = ".rodata."; \
+ else \
+ prefix = ".data."; \
+ } \
+ else if (TREE_CODE (DECL) == FUNCTION_DECL) \
+ prefix = ".gnu.linkonce.t."; \
+ else if (DECL_READONLY_SECTION (DECL, RELOC)) \
+ prefix = ".gnu.linkonce.r."; \
+ else \
+ prefix = ".gnu.linkonce.d."; \
+ \
+ len = strlen (name) + strlen (prefix); \
+ string = alloca (len + 1); \
+ sprintf (string, "%s%s", prefix, name); \
+ \
+ DECL_SECTION_NAME (DECL) = build_string (len, string); \
+ } \
+ while (0)
+
/* On svr4, we *do* have support for the .init and .fini sections, and we
can put stuff in there to be executed before and after `main'. We let
crtstuff.c and other files know this by defining the following symbols.