http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47607
Summary: FAIL: gcc.c-torture/execute/builtins/abs-2.c execution, -O2 -flto Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassig...@gcc.gnu.org ReportedBy: amo...@gmail.com Created attachment 23244 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23244 compile with -w -O2 -m32 -flto abs-2.i abs-2-lib.i main.i -lm Fails due to "bl main_test" branching to a bogus location. This is because the only definition for main_test is one from the IR file, and ld doesn't check that the symbol has been replaced with a real one. With the patch in http://sourceware.org/ml/binutils/2011-02/msg00037.html we get a linker error. Reversing the order of inputs.. ../gcc/xgcc -B ../gcc/ -w -O2 -m32 -flto main.i abs-2.i abs-2-lib.i -lm lto1: internal compiler error: in lto_varpool_replace_node, at lto-symtab.c:305