Tom Tromey writes: > >>>>> "David" == David Daney <ddaney@xxxxxxxxxx> 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. In MD5? Nooooooooooooo! Please! At least, not until this stuff gets inlined everywhere... Andrew.