http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60319
--- Comment #5 from Zhendong Su <su at cs dot ucdavis.edu> --- Did you separately compile the two files at -O0 and link at -Os, like below? > $ gcc-trunk -flto -O0 -c foo.c > $ gcc-trunk -flto -O0 -c main.c > $ gcc-trunk -flto -Os foo.o main.o