]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR middle-end/46674 (Weak alias is mistakenly optimized away)
authorDave Korn <dave.korn.cygwin@gmail.com>
Fri, 10 Dec 2010 14:28:58 +0000 (14:28 +0000)
committerDave Korn <davek@gcc.gnu.org>
Fri, 10 Dec 2010 14:28:58 +0000 (14:28 +0000)
commit77754180a97af78b7b330bdabc7072e1f1da07e6
treecb0845f24d59969509e47111a1b3af34cd9b8773
parent4816c5938dfb6d9510b43f9223dab24af530e00e
re PR middle-end/46674 (Weak alias is mistakenly optimized away)

gcc/ChangeLog:

PR middle-end/46674
PR lto/43157
* target.def (mangle_assembler_name): New target asm_out hook.
* targhooks.c (default_mangle_assembler_name): Add default hook
implementation.
* targhooks.h (default_mangle_assembler_name): Add prototype.
* lto-symtab.c (lto_symtab_register_decl): Use new hook when
processing DECL_ASSEMBLER_NAMEs for lto symtabs.
(lto_symtab_get_resolution): Likewise.
(lto_cgraph_replace_node): Likewise.
(lto_symtab_prevailing_decl): Likewise.
* lto-streamer-out.c (write_symbol): Likewise.
* doc/tm.texi.in (TARGET_MANGLE_ASSEMBLER_NAME): Add @hook directive.
* doc/tm.texi: Regenerate.
* config/i386/cygming.h (TARGET_MANGLE_ASSEMBLER_NAME): Define to
point at i386_pe_mangle_assembler_name.
* config/i386/winnt.c (i386_pe_mangle_assembler_name): New function.
* config/i386/i386-protos.h (i386_pe_mangle_assembler_name): Add
prototype.

lto-plugin/ChangeLog:

PR middle-end/46674
PR lto/43157
* configure.ac (SYM_STYLE): Don't AC_DEFINE.
* lto-plugin.c (sym_style): Don't use it; default to ss_none.
* configure: Regenerate.
* config.h.in: Likewise.

gcc/testsuite/ChangeLog:

PR middle-end/46674
PR lto/43157
* gcc.dg/pr43157.c: New file.

From-SVN: r167688
18 files changed:
gcc/ChangeLog
gcc/config/i386/cygming.h
gcc/config/i386/i386-protos.h
gcc/config/i386/winnt.c
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/lto-streamer-out.c
gcc/lto-symtab.c
gcc/target.def
gcc/targhooks.c
gcc/targhooks.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr43157.c [new file with mode: 0644]
lto-plugin/ChangeLog
lto-plugin/config.h.in
lto-plugin/configure
lto-plugin/configure.ac
lto-plugin/lto-plugin.c