>> No need for shifts.
>
>Would you please explain how
>
>lduwa [%o0]0x88, %o0
>
>works? What does the load instruction "lduwa" do? And most importantly, does
>that mean that the load instructions on (Ultra)SPARC processors are faster
>than shifts?
>
>Is there an instruction clock-cycle table anywhere?
Not necessarily, but often when you need to deal with entries
you need to convert they are in memory anyway (like datastructures read
from disk or network, data to hash, etc)
The particular instructions performs the following operation:
LoaD Unsigned Word, Alternate address space 0x88, address [%o0]
to register %o0
The alternate address space 0x88 is magic and causes the word to be
endian converted.
The ld*a instructions have are also used in the kernel for copyin/copyout
(where the alternate address space is the user's address space); there's
also an alternate address space which causes loads not to fault.
These "alternate address spaces" are magically implemented in the processor
for a large part.
Casper
_______________________________________________
opensolaris-discuss mailing list
[email protected]