>>>>> "David" == David Daney <[EMAIL PROTECTED]> writes:

>> -    aa = aa << 3 | aa >>> -3;
>> +    aa = aa << 3 | aa >>> (32 - 3);
>> 
David> Java masks all shift counts to the number of bits being operated on.
David> Your patches are a nop.

David> I have not tried them, so I don't know if they quiet the warnings
David> emitted by ecj.  But if they do, it *might* be worthwhile applying
David> them on those grounds.

Historically we've heard about jikes warning for this code.  But, the
code is perfectly valid, and IMO:

    (foo << N) | (foo >>> -N)

... makes a nice "bit rotation" idiom.

Perhaps we should replace these uses with Integer.rotateLeft, for
clarity.

Tom

Reply via email to