building GCC cross toolchain for mips

Vania Joloboff vania.joloboff@inria.fr
Fri Mar 22 10:09:00 GMT 2013


Hello,


We have been generating toolchain for MIPS for some time and it used to 
work well
We have upgraded before to the following versions
> V_BINUTILS=2.23.1
> V_NEWLIB=1.20.0
> V_GMP=5.1.1
> V_MPFR=3.1.1
> V_MPC=1.0.1
> V_GCC=4.7.2

With these versions we can also generate binutils, gcc and newlib for 
target="mips-none-elf"
No problem.
Next we have tried to do the same with V_NEWLIB=2.0.0
Then we can build binutils and gcc. But when we make newlib we get

*Error*: *opcode* not supported on this processor: mips1 ... mips1 
(mips1) *pref*


What happened ?
Should we now use a different target ?
The configure newlib we have

     "$SRC_DIR"/newlib-$V_NEWLIB/configure --host=$HOST --build=$BUILD \
         --target=mips-none-elf --prefix="$INSTALL_DIR" --disable-nls

Then when compiling memcpy.S in newlib , I get:
opcode not supported on this processor: mips1 (mips1) `pref

but it seems the opcode is not found is because the assembler generated
by binutils does not support pref !

I also tried with target=mipsisa64r2

Then I get
memcpy.S:389: Error: Illegal operands `ld t4,((4)*8)($5)'

Is it a binutils problem or a newlib problem?
However it works with newlib 1.20....

Which target do I need to use to have binutils , gcc and newlib
for both mips32 and mips64 architecture ?

Do I need to use argument --with-extra-multilibs= ??

Comments appreciated.
--vj



More information about the Newlib mailing list