Summary: | gcc breaks during make bzImage using version 3.4.2 while compiling gentoo-sources 2.4.27 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | G HUNT <flyers> |
Component: | [OLD] GCC Porting | Assignee: | Please assign to toolchain <gcc-porting> |
Status: | RESOLVED UPSTREAM | ||
Severity: | critical | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
my suggestion is to either use a 2.6 kernel or wait for 2.4.28, which apparently has a number of gcc 3.4 fixes. the bug is in the kernel, not the compiler. |
When I use gcc 3.4.2-r2, compiling the 2.4.27 gentoo kernel it breaks while compiling bzImage almost immediately, However, If I emerge gcc 3.3.4, it seems to compile fine... and the when I emerge gcc 3.4.2-r2, it fails to compile once again. I noticed in 3.4.2 gcc uses athlon automation... 48 NDFA states, 90 NDFA arcs > 48 DFA states, 90 DFA arcs > 20 minimal DFA states, 62 minimal DFA arcs > 29 all insns 16 insn equivalence classes etc, etc, while in gcc 3.3.4 it uses pentium? My CPU is an athlon-xp 2600+ Reproducible: Always Steps to Reproduce: 1. emerge gcc 2. genkernel -menuconfig all 3. Actual Results: Compilation Failed. Expected Results: Compilation should have suceeded with no errors. localhost linux # genkernel --menuconfig all * Gentoo Linux Genkernel; Version 3.0.2g * Compiling Linux Kernel 2.4.27-gentoo-r1 for x86... * kernel: >> Running mrproper... * config: Using config from /usr/share/genkernel/x86/kernel-config-2.4 * Previous config backed up to .config.bak * >> Running oldconfig... * kernel: >> Cleaning... * config: >> Invoking menuconfig... Using defaults found in .config Preparing scripts: functions, parsing............................................................................................done. Saving your kernel configuration... *** End of Linux kernel configuration. *** Check the top-level Makefile for additional configuration. *** Next, you must run 'make dep'. * kernel: >> Making dependencies... * >> Compiling 2.4.27-gentoo-r1 bzImage... * ERROR: Failed to compile the "bzImage" target... * -- Grepping log... -- * Compiling Linux Kernel 2.4.27-gentoo-r1 for x86... * kernel: >> Running mrproper... COMMAND: make -j2 CC="gcc" LD="ld" AS="as" mrproper rm -f arch/i386/vmlinux.lds make[1]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/arch/i386/boot' make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. -- * * Some SCSI devices (e.g. CD jukebox) support multiple LUNs * Enable extra checks in new queueing code (CONFIG_SCSI_DEBUG_QUEUES) [Y/n/?] Probe all LUNs on each SCSI device (CONFIG_SCSI_MULTI_LUN) [Y/n/?] Verbose SCSI error reporting (kernel size +=12K) (CONFIG_SCSI_CONSTANTS) [Y/n/?] -- * * Fusion MPT device support * Fusion MPT (base + ScsiHost) drivers (CONFIG_FUSION) [M/n/?] Maximum number of scatter gather entries (CONFIG_FUSION_MAX_SGE) [40] Enhanced SCSI error reporting (CONFIG_FUSION_ISENSE) [M/n/?] -- *** Next, you must run 'make dep'. * kernel: >> Cleaning... COMMAND: make -j2 CC="gcc" LD="ld" AS="as" clean make[1]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/arch/i386/boot' make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. -- COMMAND: make j1 menuconfig * kernel: >> Making dependencies... COMMAND: make -j2 CC="gcc" LD="ld" AS="as" dep gcc -Wall -Wstrict-prototypes -O3 -fomit-frame-pointer -o scripts/mkdep scripts/mkdep.c make[1]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/arch/i386/boot' make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. -- /usr/src/linux-2.4.27-gentoo-r1/scripts/mkdep -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -- aarp.c ddp.c sysctl_net_atalk.c > .depend make[4]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/net/appletalk' make -C atm fastdep make[4]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/net/atm' /usr/src/linux-2.4.27-gentoo-r1/scripts/mkdep -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -- addr.c addr.h atm_misc.c br2684.c clip.c common.c common.h ipcommon.c ipcommon.h lec.c lec.h lec_arpc.h mpc.c mpc.h mpoa_caches.c mpoa_caches.h mpoa_proc.c pppoatm.c proc.c protocols.h pvc.c raw.c resources.c resources.h signaling.c signaling.h svc.c > .depend md5sum: WARNING: 1 of 13 computed checksums did NOT match -- make[6]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/scsi/aacraid' /usr/src/linux-2.4.27-gentoo-r1/scripts/mkdep -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -I/usr/src/linux-2.4.27-gentoo-r1/drivers/scsi -nostdinc -iwithprefix include-- aachba.c aacraid.h commctrl.c comminit.c commsup.c dpcsup.c linit.c rx.c sa.c > .depend make[6]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/scsi/aacraid' make -C aic7xxx fastdep make[6]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/scsi/aic7xxx' /usr/src/linux-2.4.27-gentoo-r1/scripts/mkdep -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -I/usr/src/linux-2.4.27-gentoo-r1/drivers/scsi -Werror -nostdinc -iwithprefixinclude -- aic7770.c aic7770_osm.c aic79xx.h aic79xx_core.c aic79xx_inline.h aic79xx_osm.c aic79xx_osm.h aic79xx_osm_pci.c aic79xx_pci.c aic79xx_proc.c aic79xx_reg.h aic79xx_reg_print.c aic79xx_seq.h aic7xxx.h aic7xxx_93cx6.c aic7xxx_93cx6.h aic7xxx_core.c aic7xxx_inline.h aic7xxx_osm.c aic7xxx_osm.h aic7xxx_osm_pci.c aic7xxx_pci.c aic7xxx_proc.c aic7xxx_reg.h aic7xxx_reg_print.c aic7xxx_seq.h aiclib.c aiclib.h cam.h queue.h scsi_iu.h scsi_message.h > .depend -- gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -DKBUILD_BASENAME=main -c -o init/main.o init/main.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -DUTS_MACHINE='"i386"' -DKBUILD_BASENAME=version -c -o init/version.o init/version.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -DKBUILD_BASENAME=do_mounts -c -o init/do_mounts.o init/do_mounts.c In file included from /usr/src/linux-2.4.27-gentoo-r1/include/linux/unistd.h:9, from init/do_mounts.c:5: /usr/src/linux-2.4.27-gentoo-r1/include/asm/unistd.h:375: warning: conflicting types for built-in function '_exit' In file included from /usr/src/linux-2.4.27-gentoo-r1/include/linux/unistd.h:9, from init/main.c:17: /usr/src/linux-2.4.27-gentoo-r1/include/asm/unistd.h:375: warning: conflicting types for built-in function '_exit' -- make -C block make[2]: Entering directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/block' make all_targets In file included from /usr/src/linux-2.4.27-gentoo-r1/include/linux/unistd.h:9, from context.c:20: /usr/src/linux-2.4.27-gentoo-r1/include/asm/unistd.h:375: warning: conflicting types for built-in function '_exit' context.c: In function `context_thread': context.c:113: warning: no return statement in function returning non-void -- gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=rd -c -o rd.o rd.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=module -c -o module.o module.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ll_rw_blk -DEXPORT_SYMTAB -c ll_rw_blk.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=blkpg -DEXPORT_SYMTAB -c blkpg.c blkpg.c: In function `blk_ioctl': /usr/src/linux-2.4.27-gentoo-r1/include/linux/blkdev.h:236: sorry, unimplemented: inlining failed in call to 'blk_get_queue': function body not available blkpg.c:264: sorry, unimplemented: called from here /usr/src/linux-2.4.27-gentoo-r1/include/linux/blkdev.h:236: sorry, unimplemented: inlining failed in call to 'blk_get_queue': function body not available blkpg.c:267: sorry, unimplemented: called from here gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=exit -c -o exit.o exit.c make[3]: *** [blkpg.o] Error 1 make[3]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/block' make[2]: *** [first_rule] Error 2 make[2]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/drivers/block' make[1]: *** [_subdir_block] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/drivers' make: *** [_dir_drivers] Error 2 make: *** Waiting for unfinished jobs.... gcc -D__KERNEL__ -I/usr/src/linux-2.4.27-gentoo-r1/include -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-xp -nostdinc -iwithprefix include -DKBUILD_BASENAME=itimer -c -o itimer.o itimer.c exit.c: In function `end_lazy_tlb': /usr/src/linux-2.4.27-gentoo-r1/include/linux/sched.h:864: sorry, unimplemented: inlining failed in call to '__mmdrop': function body not available exit.c:868: sorry, unimplemented: called from here make[2]: *** [exit.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/kernel' make[1]: *** [first_rule] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.27-gentoo-r1/kernel' make: *** [_dir_kernel] Error 2 * Gentoo Linux Genkernel; Version 3.0.2g * ERROR: Failed to compile the "bzImage" target... * -- End log... -- * Please consult /var/log/genkernel.log for more information and any * errors that were reported above.