This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Fix glibc builds
- From: Richard Henderson <rth at redhat dot com>
- To: Jan Hubicka <jh at suse dot cz>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Wed, 12 Nov 2003 17:55:11 -0800
- Subject: Re: Fix glibc builds
- References: <20031112192914.GL1729@kam.mff.cuni.cz>
On Wed, Nov 12, 2003 at 08:29:14PM +0100, Jan Hubicka wrote:
> * c-decl.c (finish_decl): Use change_decl_assembler_name.
> * c-pragma.c (handle_pragma_redefine_extname): Likewise.
> * varasm.c (make_decl_rtl): Likewise.
> * cgraph.c (change_decl_assembler_name): New function.
> * tree.h (set_decl_assembler_name): Kill dead declaration.
> (change_decl_assembler_name): Declare.
>
> * decl.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
> * decl2.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
Mostly ok.
> + /* Check that we didn't introduce entry earlier. */
> + slot1 =
> + htab_find_slot_with_hash (cgraph_hash, name,
> + IDENTIFIER_HASH_VALUE (name), NO_INSERT);
> + if (slot1)
> + abort ();
This check is redundant with ...
> + slot =
> + htab_find_slot_with_hash (cgraph_hash, name,
> + IDENTIFIER_HASH_VALUE (name), INSERT);
> + if (*slot)
> + abort ();
... this one. Similarly for variables.
I'll say it would be nice if we had a unified hash table, since
checking everything twice like this is no fun.
r~