Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 58283 - Emerge allegro-4.1.14 fails in compilation phase due to CFLAG problem ("error: can't find a register in class `BREG' while reloading `asm'")
Summary: Emerge allegro-4.1.14 fails in compilation phase due to CFLAG problem ("error...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High minor (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-25 06:49 UTC by Grzegorz Dubicki
Modified: 2011-09-14 20:37 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Grzegorz Dubicki 2004-07-25 06:49:03 UTC
Emerge allegro-4.1.14 fails in compilation phase due to CFLAG problem.

It doesn't compile with:

* CFLAGS="-march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -fpic"

or

* same as above without -fpic (although it shouldn't matter as this flag is filtered in the ebuild)

or 

* CFLAGS="-march=athlon-xp -Os -fomit-frame-pointer -momit-leaf-frame-pointer -ffast-math -fforce-addr -mno-push-args -pipe -s -fpic"

or

* same as above without -fpic

...but it *DOES* compile with

* CFLAGS="-march=athlon-xp -mtune=athlon-xp -O2 -pipe".

Reproducible: Always
Steps to Reproduce:
1. set CFLAGS to one of the mentioned above values
2. ACCEPT_KEYWORDS="~x86" emerge -v =media-libs/allegro-4.1.14
Actual Results:  
(...)

er -Wall -Wno-unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-
frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-
args -pipe -s -fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -
m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -
fforce-addr -mno-push-args -pipe -s -fpic -c ./src/unix/udummy.c -o obj/unix/
shared/alleg/udummy.o
rm -f lib/unix/liballeg_unsharable.a
ar rvs lib/unix/liballeg_unsharable.a obj/unix/shared/alleg/iblit16.o obj/unix/
shared/alleg/iblit24.o obj/unix/shared/alleg/iblit32.o obj/unix/shared/alleg/
iblit8.o obj/unix/shared/alleg/icpus.o obj/unix/shared/alleg/igfx15.o obj/unix/
shared/alleg/igfx16.o obj/unix/shared/alleg/igfx24.o obj/unix/shared/alleg/
igfx32.o obj/unix/shared/alleg/igfx8.o obj/unix/shared/alleg/imisc.o obj/unix/
shared/alleg/iscan.o obj/unix/shared/alleg/iscanmmx.o obj/unix/shared/alleg/
ispr15.o obj/unix/shared/alleg/ispr16.o obj/unix/shared/alleg/ispr24.o obj/unix/
shared/alleg/ispr32.o obj/unix/shared/alleg/ispr8.o obj/unix/shared/alleg/izbuf.
o obj/unix/shared/alleg/xdga2s.o obj/unix/shared/alleg/xwins.o obj/unix/shared/
alleg/svgalibs.o obj/unix/shared/alleg/vbeafs.o obj/unix/shared/alleg/modexgfx.o 
obj/unix/shared/alleg/udummy.o
ar: creating lib/unix/liballeg_unsharable.a
a - obj/unix/shared/alleg/iblit16.o
a - obj/unix/shared/alleg/iblit24.o
a - obj/unix/shared/alleg/iblit32.o
a - obj/unix/shared/alleg/iblit8.o
a - obj/unix/shared/alleg/icpus.o
a - obj/unix/shared/alleg/igfx15.o
a - obj/unix/shared/alleg/igfx16.o
a - obj/unix/shared/alleg/igfx24.o
a - obj/unix/shared/alleg/igfx32.o
a - obj/unix/shared/alleg/igfx8.o
a - obj/unix/shared/alleg/imisc.o
a - obj/unix/shared/alleg/iscan.o
a - obj/unix/shared/alleg/iscanmmx.o
a - obj/unix/shared/alleg/ispr15.o
a - obj/unix/shared/alleg/ispr16.o
a - obj/unix/shared/alleg/ispr24.o
a - obj/unix/shared/alleg/ispr32.o
a - obj/unix/shared/alleg/ispr8.o
a - obj/unix/shared/alleg/izbuf.o
a - obj/unix/shared/alleg/xdga2s.o
a - obj/unix/shared/alleg/xwins.o
a - obj/unix/shared/alleg/svgalibs.o
a - obj/unix/shared/alleg/vbeafs.o
a - obj/unix/shared/alleg/modexgfx.o
a - obj/unix/shared/alleg/udummy.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/linux/lvga.c -o obj/unix/
module/lvga.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/misc/modex.c -o obj/unix/
module/modex.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -x assembler-with-cpp -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -
mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math 
-fforce-addr -mno-push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/misc/
modexgfx.s -o obj/unix/module/modexgfx.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/misc/vga.c -o obj/unix/
module/vga.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-vga.so obj/unix/module/lvga.o 
obj/unix/module/modex.o obj/unix/module/modexgfx.o obj/unix/module/vga.o -L/usr/
X11R6/lib -Wl,-export-dynamic
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/linux/svgalib.c -o obj/unix/
module/svgalib.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -x assembler-with-cpp -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -
mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math 
-fforce-addr -mno-push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/linux/
svgalibs.s -o obj/unix/module/svgalibs.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-svgalib.so obj/unix/module/
svgalib.o obj/unix/module/svgalibs.o -L/usr/X11R6/lib -Wl,-export-dynamic  -lvga
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/linux/fbcon.c -o obj/unix/
module/fbcon.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-fbcon.so obj/unix/module/fbcon.o 
-L/usr/X11R6/lib -Wl,-export-dynamic
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/x/xdga2.c -o obj/unix/module/
xdga2.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -x assembler-with-cpp -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -
mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math 
-fforce-addr -mno-push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/x/xdga2s.s 
-o obj/unix/module/xdga2s.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-dga2.so obj/unix/module/xdga2.o 
obj/unix/module/xdga2s.o -L/usr/X11R6/lib -Wl,-export-dynamic  -lXxf86dga
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/unix/alsa5.c -o obj/unix/
module/alsa5.o
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/unix/alsa9.c -o obj/unix/
module/alsa9.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-alsadigi.so obj/unix/module/
alsa5.o obj/unix/module/alsa9.o -L/usr/X11R6/lib -Wl,-export-dynamic  -lasound
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/unix/alsamidi.c -o obj/unix/
module/alsamidi.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-alsamidi.so obj/unix/module/
alsamidi.o -L/usr/X11R6/lib -Wl,-export-dynamic  -lasound
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-
leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-
push-args -pipe -s -fpic -DALLEGRO_MODULE -c ./src/unix/arts.c -o obj/unix/
module/arts.o
gcc -shared -fPIC -DALLEGRO_SHARED -march=athlon-xp -O3 -msse -mmmx -m3dnow -
momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -ffast-math -fforce-addr 
-mno-push-args -pipe -s -fpic -o lib/unix/alleg-artsdigi.so obj/unix/module/
arts.o -L/usr/X11R6/lib -Wl,-export-dynamic  `artsc-config --libs`
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -c ./demo/demo.c -o obj/unix/demo.o
gcc -s -L/usr/X11R6/lib -Wl,-export-dynamic  -o demo/demo obj/unix/demo.o -Llib/
unix -lalleg-4.1.14 -lalleg_unsharable -lm
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -c ./setup/keyconf.c -o obj/unix/keyconf.o
gcc -s -L/usr/X11R6/lib -Wl,-export-dynamic  -o setup/keyconf obj/unix/keyconf.o 
-Llib/unix -lalleg-4.1.14 -lalleg_unsharable -lm
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -c ./setup/setup.c -o obj/unix/setup.o
gcc -s -L/usr/X11R6/lib -Wl,-export-dynamic  -o setup/setup obj/unix/setup.o -
Llib/unix -lalleg-4.1.14 -lalleg_unsharable -lm
gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/
allegro -I/usr/X11R6/include  -I/usr/kde/3.2/include/artsc -pthread -I/usr/
include/glib-2.0 -I/usr/lib/glib-2.0/include  -DALLEGRO_LIB_BUILD -pipe  -
mtune=pentium -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-
unused  -march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic -c ./tests/afinfo.c -o obj/unix/afinfo.o
./tests/afinfo.c: In function `get_af_info':
./tests/afinfo.c:258: error: can't find a register in class `BREG' while 
reloading `asm'
./tests/afinfo.c:258: error: can't find a register in class `BREG' while 
reloading `asm'
./tests/afinfo.c:258: error: can't find a register in class `BREG' while 
reloading `asm'
make: *** [obj/unix/afinfo.o] Error 1

!!! ERROR: media-libs/allegro-4.1.14 failed.
!!! Function src_compile, Line 52, Exitcode 2
!!! (no error message)

---

That's the error message with the first CFLAGS values set (CFLAGS="-
march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-
pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -fpic").

With another non-working CFLAG value the only difference, if I recall correctly, 
is that there is only *one* "./tests/afinfo.c:258: error: can't find a register 
in class `BREG' while reloading `asm'" line.

Expected Results:  
Emerge allegro-4.1.14 should finish without problems.

bet-pc linux # emerge info
Portage 2.0.50-r9 (2004.2, gcc-3.4.1, glibc-2.3.4.20040619-r0, 2.6.7-rc3-love1)
=================================================================
System uname: 2.6.7-rc3-love1 i686 AMD Athlon(tm) XP 1800+
Gentoo Base System version 1.5.1
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.
2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/
dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/
config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/
control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -O3 -msse -mmmx -m3dnow -momit-leaf-frame-pointer -
fomit-frame-pointer -ftracer -ffast-math -fforce-addr -mno-push-args -pipe -s -
fpic"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache digest distcc sandbox"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://
gentoo.inode.at/source/ ftp://ftp.easynet.nl/mirror/gentoo/ ftp://ftp.rxd.hu 
ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.linux.ee/pub/gentoo/
distfiles/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/bmg-main"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow X aalib acl acpi acpi4linux activefilter alsa apache2 apm arts 
audiofile avi berkdb cdr crypt cscope cups dga directfb divx4linux doc dvd 
encode fbcon flac foomaticdb gd gdbm ggi gif glut gpm gtk2 icc imagemagick imlib 
innodb java javamail javascript jikes jpeg kadu-modules kadu-voice kde lcms ldap 
libwww linguas_en linguas_pl live mad matroska memlimit mikmod mmx motif 
moznocompose moznoirc moznomail mozp3p mozsvg mozxmlterm mpeg mpi ncurses netcdf 
nls nocardbus nocd nptl offensive oggvorbis ooo-kde openal opengl openssh 
operanom2 oss pam pdflib pic png postgres ppds pthreads python qt quicktime 
readline samba scanner sdl slang speex spell sse ssl svg svga szip tetex theora 
tiff tlen transcode truetype unicode usb videos vim-with-x wifi wmf wxwindows 
x86 xinerama xml xml2 xmms xosd xprint xv xvid yv12 zlib"
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2004-07-25 22:01:42 UTC
Can you isolate which flag is causing the issue please?  I'll add it to the flag filtering.
Comment 2 Grzegorz Dubicki 2004-07-26 05:23:29 UTC
Ok, I've tried several combination of CFLAGS using both gcc 3.3.3 and 3.4.1 and for both of them the problem flag seems to be "-fpic" (lowercase).

("Prove": even this hardcore setting works - it compiles cleanly, that is (note the "-fno-pic" near the end:

CFLAGS="-O3 -march=athlon-xp -mtune=athlon-xp -msse -mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -funroll-loops -ftracer -ffast-math -fprefetch-loop-arrays -freduce-all-givs -finline-limit=600 -mfpmath=387 -pipe -fweb -fPIC -fno-pic -s")

*** Concluding: I would propose filtering out the "-fpic" (lowercase) flag in the ebuild.
Comment 3 Mr. Bones. (RETIRED) gentoo-dev 2004-07-26 18:51:07 UTC

*** This bug has been marked as a duplicate of 58413 ***
Comment 4 Mr. Bones. (RETIRED) gentoo-dev 2005-05-19 09:06:14 UTC
Closing to clean up after bugzilla upgrade.  reopen if closed in error.  Thanks.
Comment 5 Mr. Bones. (RETIRED) gentoo-dev 2011-09-14 20:37:55 UTC
clean up bug list after bugzilla update