Re: Why is UInt32 << 32 a no-op?
Re: Why is UInt32 << 32 a no-op?
- Subject: Re: Why is UInt32 << 32 a no-op?
- From: Jens Ayton <email@hidden>
- Date: Tue, 17 Nov 2009 23:06:12 +0100
On Nov 17, 2009, at 19:28, Alastair Houghton wrote:
>
>
> The reason, of course, is that some hardware has this limitation, whereas other hardware does not. The most likely two results you'd see are (a) a shift of (shift2), or (b) 0, if shift >= 32. Some architectures (and I have a suspicion that PowerPC may be one of them) may not even define which is to be expected at the assembly level, and may leave it to individual implementations even there.
Not PowerPC, no.
rlwnm[.] rA,rS,rB,MB,ME:
"The contents of rS are rotated left the number of bits specified by the low-order five bits of rB."
The 64-bit equivalents, rldcl[.] and rldcr[.] also specify that the low-order six bits are used.
--
Jens Ayton
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden