Red Hat Bugzilla – Bug 25082
gcc 2.96-69 miscompiles crystal space 0.17.2
Last modified: 2007-04-18 12:30:56 EDT
I have gcc 2.96-69, glibc 2.2-9, kernel 2.4.0 headers, binutils is vanilla
When I compile crystalspace 0.17.2 I get the following message:
g++ -c -o out/LINUX/INTEL/optimize/scan16.o
plugins/video/renderer/software/scan16.cpp -Wall -Wunused -W -mcpu=i686
-fno-exceptions -fno-rtti -O6 -fomit-frame-pointer -ffast-math -I.
-I./apps -I./include -I./libs -I./plugins -I./support
/tmp/ccwQQ3xK.s: Assembler messages:
/tmp/ccwQQ3xK.s:16315: Error: local label "6" (instance number 1 of a fb
label) is not defined
make: *** [out/LINUX/INTEL/optimize/scan16.o] Erreur 1
Just guessing, doesn't it use inline asm which has | characters in it?
| cannot be used in inline asm on certain arches (and since the new
ia32 backend on ia32 as well) because it separates different asm
alternatives (on ia32 it is AT&T and Intel syntax).
If this is not the case, please attach here preprocessed source.
Yes it has inline asm with several '|' in it
So change all `|' to something like `or' or whatever, this really will not
work with any further gcc version.