[Bug middle-end/46674] [4.6 Regression] Weak alias is mistakenly optimized away

davek at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Dec 10 14:29:00 GMT 2010


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46674

--- Comment #10 from Dave Korn <davek at gcc dot gnu.org> 2010-12-10 14:29:03 UTC ---
Author: davek
Date: Fri Dec 10 14:28:58 2010
New Revision: 167688

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=167688
Log:
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.


Added:
    trunk/gcc/testsuite/gcc.dg/pr43157.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/cygming.h
    trunk/gcc/config/i386/i386-protos.h
    trunk/gcc/config/i386/winnt.c
    trunk/gcc/doc/tm.texi
    trunk/gcc/doc/tm.texi.in
    trunk/gcc/lto-streamer-out.c
    trunk/gcc/lto-symtab.c
    trunk/gcc/target.def
    trunk/gcc/targhooks.c
    trunk/gcc/targhooks.h
    trunk/gcc/testsuite/ChangeLog
    trunk/lto-plugin/ChangeLog
    trunk/lto-plugin/config.h.in
    trunk/lto-plugin/configure
    trunk/lto-plugin/configure.ac
    trunk/lto-plugin/lto-plugin.c



More information about the Gcc-bugs mailing list