This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem in GCC 3.4 MIPS -march=mips1


Paul Koning wrote:
> We have code that is compiled -march=mips1 (because floating point is
> emulated and the emulator only understands mips1 float instructions).
> 
> This works mostly correctly.  But we run into trouble in one spot:
> libgcc2 has some float code in it that is compiled (apparently) with
> the default arch, which as of GCC 3.4 is mips64 (it used to be mips1).
> 
> The consequence is that applications occasionally die with an illegal
> instruction fault.  In the particular case I'm looking at, gcc
> generated a call to __fixunsdfdi, which is provided by libgcc2.
> 
> Is there something we did wrong that caused libgcc2 not to be built
> correctly?  Should libgcc2 be multilibbed?  (Is it -- and we picked
> the wrong version when building the target system image?)
> 
> If not, this suggests that libgcc2 should be built with an explicit
> -march=mips1, or alternatively the default arch should be reverted
> back to what it was.
> 

I configure with:

../gcccvsw/gcc/configure  --host=i686-pc-linux-gnu --target=mipsel-linux
--enable-languages=c,c++,java
--with-headers=/home/testcvs/mipsel-linux/include --with-arch=mips32
--with-float=soft --prefix=/home/testcvs

I am thinking that by supplying the proper --with-arch=????? you will
get what you want.

David Daney.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]