Looks like I should have RTFM properly.
It's clearly stated that -flto is not compatible with -g at this time.
Sorry if I wasted anyone's time,
Patrick
Hi,
I'm running into an internal compiler error when trying to build a
powerpc project.
In the past when I've run into ICEs I usually submit the preprocessed
source as part of the bug report. In this case I'm not sure what to
submit as the error is occuring during the LTO link phase.
Running gcc with -v -save-temps results in the following output and a
bunch of *.ltrans??.o files a ltrans.out file and a libgcc.res file.
Are these of any use or do the original object files need to be
included in the bug report?
Also, is there any other way to diagnose what's going wrong here?
Thanks,
Patrick
Using built-in specs.
COLLECT_GCC=powerpc-eabispe-gcc
COLLECT_LTO_WRAPPER=/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/lto-wrapper
Target: powerpc-eabispe
Configured with: /z/src/e7/toolchain/src/gcc-4.7.2/configure
--prefix=/z/src/e7/toolchain/stage2 --build=x86_64-unknown-linux-gnu
--host=x86_64-unknown-linux-gnu --target=powerpc-eabispe
--enable-languages=c,c++
--with-sysroot=/z/src/e7/toolchain/../prex_sysroot --disable-nls
--disable-werror --with-newlib --with-gmp=/z/src/e7/toolchain/stage2
--with-mpfr=/z/src/e7/toolchain/stage2 --disable-shared
--disable-debug --disable-libssp --with-cpu=8540
Thread model: single
gcc version 4.7.2 (GCC)
COMPILER_PATH=/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/bin/
LIBRARY_PATH=/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/lib/
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-I'
'/home/patrick/src/e7/build/kernel' '-I' '/home/patrick/src/e7/prex'
'-I' '/home/patrick/src/e7/build/kernel/sys/arch/ppc/include' '-I'
'/home/patrick/src/e7/prex/sys/arch/ppc/include' '-I'
'/home/patrick/src/e7/prex/sys/include' '-I'
'/home/patrick/src/e7/prex/include' '-nostdinc' '-fno-builtin' '-D'
'KERNEL' '-D' '__KERNEL__' '-msdata=none' '-mno-spe'
'-Wframe-larger-than=128' '-fshort-double' '-fconserve-stack'
'-gdwarf-2' '-Os' '-Wall' '-Wundef' '-fno-strict-aliasing'
'-Wstrict-prototypes' '-Wpointer-arith' '-fno-stack-protector' '-D'
'__ppc__' '-D' '__e7__' '-D' '__ARCH__=ppc' '-D' '__PLATFORM__=e7'
'-U' 'ppc' '-U' 'e7' '-D' 'DEBUG' '-flto=jobserver' '-std=gnu99'
'-fomit-frame-pointer' '-g' '-Wsign-compare'
'-Werror=implicit-function-declaration' '-fwhole-program' '-static'
'-nostdlib' '-L/home/patrick/src/e7/build/kernel/conf' '-z'
'max-page-size=4096' '-nostdlib' '-fuse-linker-plugin' '-o'
'/home/patrick/src/e7/build/kernel/sys/prex' '-T'
'./arch/ppc/ppc/kernel.ld' '-mcpu=8540'
/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/collect2
-plugin
/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/liblto_plugin.so
-plugin-opt=/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/lto-wrapper
-plugin-opt=-fresolution=libgcc.res -flto=jobserver
--sysroot=/z/src/e7/toolchain/../prex_sysroot -V -G0 -dn -Bstatic -o
/home/patrick/src/e7/build/kernel/sys/prex -z max-page-size=4096
-L/home/patrick/src/e7/build/kernel/conf
-L/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2
-L/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc
-L/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/lib
/home/patrick/src/e7/build/kernel/sys/./arch/ppc/e7/platform.o
/home/patrick/src/e7/build/kernel/sys/./kern/kern.o
/home/patrick/src/e7/build/kernel/sys/./mem/mem.o
/home/patrick/src/e7/build/kernel/sys/./ipc/ipc.o
/home/patrick/src/e7/build/kernel/sys/./sync/sync.o
/home/patrick/src/e7/build/kernel/sys/../dev/dev.o
/home/patrick/src/e7/prex/dev/ppc/mpc555x/ssd_h7f_v323/ssd_h7f_v323.o_moto
/home/patrick/src/e7/build/kernel/sys/lib/libkern.a
/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/libgcc.a
-T ./arch/ppc/ppc/kernel.ld
GNU ld (GNU Binutils) 2.22
Supported emulations:
elf32ppc
elf32ppclinux
elf32ppcsim powerpc-eabispe-gcc @/tmp/cc6cZHTJ.args
Using built-in specs.
COLLECT_GCC=powerpc-eabispe-gcc
Target: powerpc-eabispe
Configured with: /z/src/e7/toolchain/src/gcc-4.7.2/configure
--prefix=/z/src/e7/toolchain/stage2 --build=x86_64-unknown-linux-gnu
--host=x86_64-unknown-linux-gnu --target=powerpc-eabispe
--enable-languages=c,c++
--with-sysroot=/z/src/e7/toolchain/../prex_sysroot --disable-nls
--disable-werror --with-newlib --with-gmp=/z/src/e7/toolchain/stage2
--with-mpfr=/z/src/e7/toolchain/stage2 --disable-shared
--disable-debug --disable-libssp --with-cpu=8540
Thread model: single
gcc version 4.7.2 (GCC)
COLLECT_GCC_OPTIONS='-c' '-msdata=none' '-mcpu=8540' '-v'
'-save-temps' '-D' 'KERNEL' '-D' '__KERNEL__' '-msdata=none'
'-mno-spe' '-Wframe-larger-than=128' '-fconserve-stack' '-gdwarf-2'
'-Os' '-fno-strict-aliasing' '-fno-stack-protector' '-D' '__ppc__'
'-D' '__e7__' '-D' '__ARCH__=ppc' '-D' '__PLATFORM__=e7' '-D' 'DEBUG'
'-fomit-frame-pointer' '-g' '-Werror=implicit-function-declaration'
'-fwhole-program' '-static' '-nostdlib'
'-L/home/patrick/src/e7/build/kernel/conf' '-z' 'max-page-size=4096'
'-nostdlib' '-fuse-linker-plugin' '-T' './arch/ppc/ppc/kernel.ld'
'-mcpu=8540' '-dumpdir' '/home/patrick/src/e7/build/kernel/sys/'
'-dumpbase' 'prex.wpa' '-fltrans-output-list=prex.ltrans.out' '-fwpa'
'-fresolution=libgcc.res'
/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/../../libexec/gcc/powerpc-eabispe/4.7.2/lto1
-quiet -dumpdir /home/patrick/src/e7/build/kernel/sys/ -dumpbase
prex.wpa -msdata=none -mcpu=8540 -msdata=none -mno-spe -mcpu=8540
-auxbase kern -gdwarf-2 -g -Os -Wframe-larger-than=128
-Werror=implicit-function-declaration -version -fconserve-stack
-fno-strict-aliasing -fno-stack-protector -fomit-frame-pointer
-fwhole-program -fuse-linker-plugin
-fltrans-output-list=prex.ltrans.out -fwpa -fresolution=libgcc.res
@/tmp/ccmtsA1J
GNU GIMPLE (GCC) version 4.7.2 (powerpc-eabispe)
compiled by GNU C version 4.7.2, GMP version 5.0.1, MPFR version
3.1.1, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072
GNU GIMPLE (GCC) version 4.7.2 (powerpc-eabispe)
compiled by GNU C version 4.7.2, GMP version 5.0.1, MPFR version
3.1.1, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072
COMPILER_PATH=/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/../../libexec/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/../../libexec/gcc/:/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../libexec/gcc/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/bin/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/bin/
LIBRARY_PATH=/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/:/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/lib/
COLLECT_GCC_OPTIONS='-c' '-msdata=none' '-mcpu=8540' '-v'
'-save-temps' '-D' 'KERNEL' '-D' '__KERNEL__' '-msdata=none'
'-mno-spe' '-Wframe-larger-than=128' '-fconserve-stack' '-gdwarf-2'
'-Os' '-fno-strict-aliasing' '-fno-stack-protector' '-D' '__ppc__'
'-D' '__e7__' '-D' '__ARCH__=ppc' '-D' '__PLATFORM__=e7' '-D' 'DEBUG'
'-fomit-frame-pointer' '-g' '-Werror=implicit-function-declaration'
'-fwhole-program' '-static' '-nostdlib'
'-L/home/patrick/src/e7/build/kernel/conf' '-z' 'max-page-size=4096'
'-nostdlib' '-fuse-linker-plugin' '-T' './arch/ppc/ppc/kernel.ld'
'-mcpu=8540' '-dumpdir' '/home/patrick/src/e7/build/kernel/sys/'
'-dumpbase' 'prex.wpa' '-fltrans-output-list=prex.ltrans.out' '-fwpa'
'-fresolution=libgcc.res'
[Leaving LTRANS /tmp/cc6cZHTJ.args]
[Leaving LTRANS prex.ltrans.out]
make -f /tmp/ccl2Hr6j.mk all
Using built-in specs.
COLLECT_GCC=powerpc-eabispe-gcc
Target: powerpc-eabispe
Configured with: /z/src/e7/toolchain/src/gcc-4.7.2/configure
--prefix=/z/src/e7/toolchain/stage2 --build=x86_64-unknown-linux-gnu
--host=x86_64-unknown-linux-gnu --target=powerpc-eabispe
--enable-languages=c,c++
--with-sysroot=/z/src/e7/toolchain/../prex_sysroot --disable-nls
--disable-werror --with-newlib --with-gmp=/z/src/e7/toolchain/stage2
--with-mpfr=/z/src/e7/toolchain/stage2 --disable-shared
--disable-debug --disable-libssp --with-cpu=8540
Thread model: single
gcc version 4.7.2 (GCC)
COLLECT_GCC_OPTIONS='-c' '-msdata=none' '-mcpu=8540' '-v'
'-save-temps' '-D' 'KERNEL' '-D' '__KERNEL__' '-msdata=none'
'-mno-spe' '-Wframe-larger-than=128' '-fconserve-stack' '-gdwarf-2'
'-Os' '-fno-strict-aliasing' '-fno-stack-protector' '-D' '__ppc__'
'-D' '__e7__' '-D' '__ARCH__=ppc' '-D' '__PLATFORM__=e7' '-D' 'DEBUG'
'-fomit-frame-pointer' '-g' '-Werror=implicit-function-declaration'
'-fwhole-program' '-static' '-nostdlib'
'-L/home/patrick/src/e7/build/kernel/conf' '-z' 'max-page-size=4096'
'-nostdlib' '-fuse-linker-plugin' '-T' './arch/ppc/ppc/kernel.ld'
'-mcpu=8540' '-dumpdir' '/home/patrick/src/e7/build/kernel/sys/'
'-dumpbase' 'prex.ltrans0' '-fltrans' '-o' 'prex.ltrans0.ltrans.o'
/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/../../libexec/gcc/powerpc-eabispe/4.7.2/lto1
-quiet -dumpdir /home/patrick/src/e7/build/kernel/sys/ -dumpbase
prex.ltrans0 -msdata=none -mcpu=8540 -msdata=none -mno-spe -mcpu=8540
-auxbase-strip prex.ltrans0.ltrans.o -gdwarf-2 -g -Os
-Wframe-larger-than=128 -Werror=implicit-function-declaration -version
-fconserve-stack -fno-strict-aliasing -fno-stack-protector
-fomit-frame-pointer -fwhole-program -fuse-linker-plugin -fltrans
prex.ltrans0.o -o prex.ltrans0.s
GNU GIMPLE (GCC) version 4.7.2 (powerpc-eabispe)
compiled by GNU C version 4.7.2, GMP version 5.0.1, MPFR version
3.1.1, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072
GNU GIMPLE (GCC) version 4.7.2 (powerpc-eabispe)
compiled by GNU C version 4.7.2, GMP version 5.0.1, MPFR version
3.1.1, MPC version 0.9
GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072
In file included from :0:0:
etpu/sync.c: In function 'sync_isr':
etpu/sync.c:752:12: internal compiler error: in
expand_debug_locations, at cfgexpand.c:3683
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [prex.ltrans0.ltrans.o] Error 1
lto-wrapper: make returned 2 exit status
[Leaving LTRANS /tmp/ccl2Hr6j.mk]
[Leaving LTRANS prex.ltrans0.o]
[Leaving LTRANS prex.ltrans0.ltrans.o]
[Leaving LTRANS prex.ltrans1.o]
[Leaving LTRANS prex.ltrans1.ltrans.o]
[Leaving LTRANS prex.ltrans2.o]
[Leaving LTRANS prex.ltrans2.ltrans.o]
[Leaving LTRANS prex.ltrans3.o]
[Leaving LTRANS prex.ltrans3.ltrans.o]
[Leaving LTRANS prex.ltrans4.o]
[Leaving LTRANS prex.ltrans4.ltrans.o]
[Leaving LTRANS prex.ltrans5.o]
[Leaving LTRANS prex.ltrans5.ltrans.o]
[Leaving LTRANS prex.ltrans6.o]
[Leaving LTRANS prex.ltrans6.ltrans.o]
[Leaving LTRANS prex.ltrans7.o]
[Leaving LTRANS prex.ltrans7.ltrans.o]
[Leaving LTRANS prex.ltrans8.o]
[Leaving LTRANS prex.ltrans8.ltrans.o]
[Leaving LTRANS prex.ltrans9.o]
[Leaving LTRANS prex.ltrans9.ltrans.o]
[Leaving LTRANS prex.ltrans10.o]
[Leaving LTRANS prex.ltrans10.ltrans.o]
[Leaving LTRANS prex.ltrans11.o]
[Leaving LTRANS prex.ltrans11.ltrans.o]
[Leaving LTRANS prex.ltrans12.o]
[Leaving LTRANS prex.ltrans12.ltrans.o]
[Leaving LTRANS prex.ltrans13.o]
[Leaving LTRANS prex.ltrans13.ltrans.o]
[Leaving LTRANS prex.ltrans14.o]
[Leaving LTRANS prex.ltrans14.ltrans.o]
[Leaving LTRANS prex.ltrans15.o]
[Leaving LTRANS prex.ltrans15.ltrans.o]
[Leaving LTRANS prex.ltrans16.o]
[Leaving LTRANS prex.ltrans16.ltrans.o]
[Leaving LTRANS prex.ltrans17.o]
[Leaving LTRANS prex.ltrans17.ltrans.o]
[Leaving LTRANS prex.ltrans18.o]
[Leaving LTRANS prex.ltrans18.ltrans.o]
[Leaving LTRANS prex.ltrans19.o]
[Leaving LTRANS prex.ltrans19.ltrans.o]
[Leaving LTRANS prex.ltrans20.o]
[Leaving LTRANS prex.ltrans20.ltrans.o]
[Leaving LTRANS prex.ltrans21.o]
[Leaving LTRANS prex.ltrans21.ltrans.o]
[Leaving LTRANS prex.ltrans22.o]
[Leaving LTRANS prex.ltrans22.ltrans.o]
[Leaving LTRANS prex.ltrans23.o]
[Leaving LTRANS prex.ltrans23.ltrans.o]
[Leaving LTRANS prex.ltrans24.o]
[Leaving LTRANS prex.ltrans24.ltrans.o]
[Leaving LTRANS prex.ltrans25.o]
[Leaving LTRANS prex.ltrans25.ltrans.o]
[Leaving LTRANS prex.ltrans26.o]
[Leaving LTRANS prex.ltrans26.ltrans.o]
[Leaving LTRANS prex.ltrans27.o]
[Leaving LTRANS prex.ltrans27.ltrans.o]
[Leaving LTRANS prex.ltrans28.o]
[Leaving LTRANS prex.ltrans28.ltrans.o]
[Leaving LTRANS prex.ltrans29.o]
[Leaving LTRANS prex.ltrans29.ltrans.o]
[Leaving LTRANS prex.ltrans30.o]
[Leaving LTRANS prex.ltrans30.ltrans.o]
[Leaving LTRANS prex.ltrans31.o]
[Leaving LTRANS prex.ltrans31.ltrans.o]
/home/patrick/src/e7/toolchain/stage2/bin/../lib/gcc/powerpc-eabispe/4.7.2/../../../../powerpc-eabispe/bin/ld:
lto-wrapper failed
collect2: error: ld returned 1 exit status