[Top] [All Lists]

Re: load_unaligned() and "uld" instruction

To: "Kevin D. Kissell" <>
Subject: Re: load_unaligned() and "uld" instruction
From: Jun Sun <>
Date: Thu, 05 Oct 2000 21:32:41 -0700
Cc: Ralf Baechle <>,,, Dominic Sweetman <>
References: <> <> <> <000d01c02782$32d31560$0deca8c0@Ulysses> <> <> <> <00d101c02f04$3a6d7340$0deca8c0@Ulysses>
"Kevin D. Kissell" wrote:
> > > > Ralf, before the perfect solution is found, the following patch makes
> > > > the gcc complain go away.  It just use ".set mips3" pragma.
> Which, as Ralf correctly observes, will generate code that will
> crash on 32-bit CPUs, 

Why will it crash 32-bit CPUs?  On my R5432 CPU, the lwl/lwr sequence
executes just fine.

Or do you mean it will crash SOME 32-bit CPUs?  Do those 32-bit CPUs
support lwl or lwr?  If they don't, they should generate a reserved
instruction exception.  If they do, I don't see any problem. 

> > With the second half, are you saying the "cut-off-upper-32-bit" bug
> > actually hides the register corruption problem?  If so, maybe we need
> > the "cut-off-upper_32-bit" bug for the 32-bit MIPS tree.
> This is a joke, right?

Not entirely.  I was thinking if the unaligned load/store instruction
corrupts the upper 32 bit content on SOME cpus, maybe we do need to cut
the upper 32bit as a workaround.  Well, I hope it is not necessary.


<Prev in Thread] Current Thread [Next in Thread>