Matt Thomas wrote:

> Module Name:  src
> Committed By: matt
> Date:         Tue May 11 22:08:02 UTC 2010
> 
> Modified Files:
> 
>       src/sys/arch/mips/include [matt-nb5-mips64]: locore.h
> 
> Log Message:
> 
> Use assembly since deref a 64bit value as a pointer does not make a
> 32bit compiler happy.

Dang, ignore my previous because this code is a little different.

+       __asm volatile("lw      %0, 0(%1)" : "=r"(rv) : "d"(addr));

"d" is listed as "General-purpose integer register" in the gcc docs.
Does the new code pass the full 64-bits of addr in when compiled on an
ABI where an int is 32-bits even though a full register is 64-bits?

Cheers,
Simon.

Reply via email to