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]

Problem in GCC 3.4 MIPS -march=mips1


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.

     paul


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