When emerging perl-5.8.6-r5 with the CFLAGS march=pentium4, the build fails with "illegal instruction" errors during "make" stage. It looks like it's trying to build lib/Config.pm when it dies, but I'm not a developer and reading "make" results isn't my forte. Doing an "emerge" with CFLAGS march=i686 works fine. Reproducible: Always Steps to Reproduce: 1. USE="minimal" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" emerge perl 2. 3. Actual Results: `sh cflags "optimize='-O2 -march=pentium4 -fomit-frame-pointer'" pp_sort.o` - fPIC pp_sort.c CCCMD = i686-pc-linux-gnu-gcc -DPERL_CORE -c -fno-strict-aliasing - pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -march=pentium4 -fomit- frame-pointer -Wall pp_sort.c: In function `S_mergesortsv': pp_sort.c:368: warning: `savecmp' might be used uninitialized in this function rm -f libperl.a /usr/bin/ar rcu libperl.a perl.o gv.o toke.o perly.o op.o pad.o regcomp.o dump.o util.o mg.o reentr.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o xsutils.o globals.o perlio.o perlapi.o numeric.o locale.o pp_pack.o pp_sort.o `sh cflags "optimize='-O2 -march=pentium4 -fomit-frame-pointer'" opmini.o` - fPIC -DPERL_EXTERNAL_GLOB opmini.c CCCMD = i686-pc-linux-gnu-gcc -DPERL_CORE -c -fno-strict-aliasing - pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -march=pentium4 -fomit- frame-pointer -Wall i686-pc-linux-gnu-gcc -L/usr/local/lib -o miniperl \ miniperlmain.o opmini.o libperl.a -lpthread -lnsl -ldl -lm -lcrypt -lutil - lc ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest /bin/sh: line 1: 6203 Illegal instruction ./miniperl -w -Ilib -MExporter - e '<?>' make[1]: Entering directory `/var/tmp/portage/perl-5.8.6-r5/work/perl-5.8.6' cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm make[2]: Entering directory `/var/tmp/portage/perl-5.8.6-r5/work/perl-5.8.6' ./miniperl -Ilib configpm configpm.tmp make[2]: *** [lib/Config.pm] Illegal instruction make[2]: Leaving directory `/var/tmp/portage/perl-5.8.6-r5/work/perl-5.8.6' make[1]: [minitest.prep] Error 2 (ignored) You may see some irrelevant test failures if you have been unable to build lib/Config.pm, lib/lib.pm or the Unicode data files. cd t && (rm -f perl; /bin/ln -s ../miniperl perl) \ && ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty /bin/sh: line 1: 6222 Illegal instruction ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty make[1]: [minitest] Error 132 (ignored) make[1]: Leaving directory `/var/tmp/portage/perl-5.8.6-r5/work/perl-5.8.6' make: [extra.pods] Error 1 (ignored) ./miniperl -Ilib configpm configpm.tmp make: *** [lib/Config.pm] Illegal instruction !!! ERROR: dev-lang/perl-5.8.6-r5 failed. !!! Function src_compile, Line 256, Exitcode 2 !!! Unable to make !!! If you need support, post the topmost build error, NOT this status message. Expected Results: Successful emerge. I will attach files with results of "emerge" shortly.
Created attachment 66757 [details] STDOUT and STDERR from emerge command
Created attachment 66758 [details] My /etc/make.conf file
Created attachment 66759 [details] Results of 'emerge info'.
Created attachment 66760 [details] Hardware report according to 'lshw'.
Mass re-assign.
Actually, this was a mistake. I realized that I was compiling on the wrong computer (remotely of course). That one was a Pentium II. Doh!