mps32 was Re: upcoming snapshot and 4.6.2

Ralf Corsepius ralf_corsepius at
Tue Sep 28 16:11:38 UTC 2004

On Tue, 2004-09-28 at 17:14, gregory.menke at wrote:
> Ralf Corsepius writes:
>  > On Tue, 2004-09-28 at 15:51, gregory.menke at wrote:
>  > > "Joel Sherrill <joel at>" <joel.sherrill at> writes:
>  > >  > Jay Monkman wrote:
>  > >  > > Can we get the MIPS32 support in? (I haven't checked lately, so maybe
>  > >  > > it's alread in).
>  > >  > > 
>  > >  > 
>  > >  > I don't know if it is in or not.  If it is very intrusive, it will
>  > >  > have to go on the trunk.  But if it is mild and blessed (quickly)
>  > >  > by you and Greg Menke, then it should be OK to go in.
>  > 
>  > Are you guys referring to the patches attached to PR601?

>  > >  > This is one on the edge since it technically is a new feature but
>  > >  > I understand it is satisfying a number of users, doesn't require
>  > >  > a tool upgrade, and is hopefully minor.
>  > Hmm, I know too little about the mips to be sure.
>  > 
>  > The essential question to me is:
>  > Is -mips32 compiled code compatible to -mips1 compiled code?
>  > 
> IIRC, the changes are principally #ifdefs to influence cpu_asm related
> register stuff, not gcc code generation issues.  The mips32 question
> arises infrequently enough that I keep forgetting the details.
AFAIS from the patches in GNATS, you remember correctly.

>   I
> think the upshot is -mips1 or -mips3 is still required to make gcc do
> the right stuff, mips32 is there to force R4000 registers in cases
> where they're required.  Anyone, please correct me if I'm
> mis-remembering.
Well, I suspect a compatibility problem between "gcc -mips32" rsp
"-arch=mips32" and your patches.

Your patches rely on "#define __mips32". Current mips-rtems-gcc only
supports and implies -mips1.
=> If I understand correctly, you assume using gcc -mips1 -D__mips32.

"gcc -mips32" rsp. "gcc -arch=mips32" implicitly changes code generation
to mips32 and #defines __mips32 rsp. #defines __mips32__.

So, what I actually was asking is: Does the mips-RTEMS code with your
changes applied support -mips32?

If so, it would be worth considering adding a -mips32 multilib variant
to gcc (at least for rtems4.7), if not, I'd prefer to see your patches
changed to not using -D__mips32, because this can be ambiguous and might
conflict with the flags being implied by "gcc -mips32"

(All defines starting with double underscores are reserved)

> I'm working on it now, but I have to examine the diffs closely.  OTOH,
> we do have the Mongoose hardware functional, so testing will be
> straightforward.


PS: All PM, I tried send to your GSFC email address bounce. Until now
I've tried 3 different sending addresses (even trying to notify your
postmaster fails). I'd therefore suggest you to refrain from using your
GSFC email address in public in future, because people can't reply to
you. Sorry, but I feel saying this is inevitable.

More information about the users mailing list