Why is LIMITS_H_TEST defined in cris/t-linux? It caused cross-compiler build errors

Steve Kenton skenton@ou.edu
Fri Aug 31 09:29:00 GMT 2007


Interesting.  I built it (along with 22 others) today and it worked 
using gcc 4.2.1 and binutils 2.18 on x86_64 to build a 4.2.1 criss 
cross-compiler on top of the inhibit_libc check for linux-unwind.h I 
posted yesterday.  I need to rework that one a bit,
but it got alpha, sparc, and several others building for me.  The one 
liner LIMITS_H_TEST got cris-gcc building for me. It is probably not 
ready for prime time either, but it works for me.

I had a similar looking ICE on v850 which was the only one I have not 
gotten to work yet although ia64 comes and goes, I'm not sure exactly 
why yet.  I started to reduce the list of things I'm --disabling or 
doing --without and now I have yet another similar looking error in frv 
that was not there earlier today.  I looked into what I would need for a 
bug report, but time for judo class rolled around and I left work before 
I made any real progress on it.  Not much difference to the config 
commands.  I moved the --enable-languages up a bit and got rid of 
--disable-checking.  The --with-sysroot and --with-newlib were already 
commented out and ignored earlier.  Something is definitely rotten.

Here is the config that produced criss-gcc and frv-gcc but got an ice 
building v850-gcc
 > $CONFIG_SHELL $source/gcc-$gcc/configure --quiet --prefix=$prefix 
--disable-nls --build=$thisystem --host=$thisystem --target=$target 
--enable-targets-all --program-prefix=$arch-linux- 
--with-local-prefix=$prefix -disable-shared --disable-multilib 
--disable-threads --disable-libssp --disable-libmudflap 
--disable-libgomp --disable-decimal-float --disable-checking 
--enable-languages=c  #--with-sysroot=$prefix/$arch-linux --with-newlib

Here is the config that produces criss-gcc but got an ice building 
frv-gcc and another ice building v850-gcc
< $CONFIG_SHELL $source/gcc-$gcc/configure --quiet --prefix=$prefix 
--disable-nls --build=$thisystem --host=$thisystem --target=$target 
--enable-targets-all --program-prefix=$arch-linux- 
--with-local-prefix=$prefix --enable-languages=c $gccoptions 
-disable-shared --disable-multilib --disable-threads --disable-libssp 
--disable-libmudflap --disable-libgomp --disable-decimal-float 
#--disable-checking

/snap/build/src/gcc-4.2.1/gcc/libgcc2.c: In function '__divsc3':
/snap/build/src/gcc-4.2.1/gcc/libgcc2.c:1910: internal compiler error: 
in default_secondary_reload, at targhooks.c:532
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make[3]: *** [libgcc/./_divsc3.o] Error 1
make[3]: Leaving directory `/snap/build/obj/gcc-4.2.1/frv/gcc'


fp-bit.c: In function '__fixsfsi':
fp-bit.c:1445: error: unrecognizable insn:
(insn 136 8 137 2 fp-bit.c:1423 (set (reg/f:SI 3 sp)
        (plus:SI (reg/f:SI 3 sp)
            (const_int 4294967256 [0xffffffd8]))) -1 (nil)
    (nil))
fp-bit.c:1445: internal compiler error: in extract_insn, at recog.c:2077
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make[3]: *** [libgcc/./_sf_to_si.o] Error 1
make[3]: Leaving directory `/snap/build/obj/gcc-4.2.1/v850/gcc'


Segher Boessenkool wrote:
>> Segher - If remember right, cris was one of the targets that did not 
>> build for you. This might help.
>
> No idea if it would help or not -- it currently dies with
> an ICE while building __mulvdi3:
>
> /home/segher/src/gcc/libgcc/../gcc/libgcc2.c: In function '__mulvdi3':
> /home/segher/src/gcc/libgcc/../gcc/libgcc2.c:404: error: 
> unrecognizable insn:
> (call_insn 353 352 354 38 
> /home/segher/src/gcc/libgcc/../gcc/libgcc2.c:403 (parallel [
>             (call (mem:QI (symbol_ref:SI ("abort") [flags 0x41] 
> <function_decl 0x2b4a0543f900 abort>) [0 S1 A8])
>                 (const_int 0 [0x0]))
>             (clobber (reg:SI 16 srp))
>         ]) -1 (expr_list:REG_NORETURN (const_int 0 [0x0])
>         (expr_list:REG_EH_REGION (const_int 0 [0x0])
>             (nil)))
>     (nil))
> /home/segher/src/gcc/libgcc/../gcc/libgcc2.c:404: internal compiler 
> error: in ex
> tract_insn, at recog.c:1990
>
>
> Segher



More information about the Gcc mailing list