[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Aha!



On Fri, Sep 01, 2000 at 02:45:23PM -0400, Christopher C. Chimelis wrote:

> 	-mips1 = generates code for the R2000 and R3000 processors
> 	-mips2 = generates code for the R6000 processor
> 	-mips3 = generates code for the R4000 processor
> 	-mips4 = generates code for the R8000 and R10000 processors

This is not quit right - The -mips defines the Mips ISA for
which code should be generated - And there are even exception.
To implement locks and semaphores you need the instructions

ll and sc

These instructions are not available on mips1 - BUT the mips port
does include those CPUs - Meaning - We are compiling userspace with
mips2 and have an emulator in the kernel for ll and sc.

mips3 is mips2 + 64 bit stuff afaik.

I dont think there will ever be interested in 64Bit Userspace Linux Ports
for Mips as its a "dying" cpu architecture.

> It seems that, when binutils is configured for the mips-unknown-linux-gnu
> target, it assumes that -mips1 is the default, apparently.  This is
> probably for maximum compatibility.  Since I don't have any reference
> manuals on the generations of MIPS processors, I don't really know the
> differences yet between all of these families, but it appears that, either
> the R2000/R3000 processors cannot handle these specific jumps for some
> reason OR (most likely) there is a bug in binutils wrt -mips1 support.

Relativ jumps on mips are limited to 32K each direction. Otherwise
you need to use a register.

> going to see if I can target binutils and gcc towards the R4x00 that's in
> this indy and go from there.

Current gcc and binutils ( i tried 20000822 work )

Flo
-- 
Florian Lohoff		flo@rfc822.org		      	+49-5201-669912
      "Write only memory - Oops. Time for my medication again ..."



Reply to: