Quote:
Originally Posted by ross
For sure it's more generic (support shift >32)
|
Indeed, I overlooked that. Then they are not comparable.
Quote:
ah, the input are reversed,
|
Missed that too. Usually the lower register is the MSW in 64-bit register pairs. I like big-endian.
Quote:
Originally Posted by Don_Adan
If this is for C compilers then change "bra.b .2" to "rts".
|
I extracted it from vclib, exchanged d2 and d3 and removed the prolog and epilog, which includes movem. The bra.b was for the movem.
Quote:
Originally Posted by jotd
why is that better than sub.l #32,d3 only on 68000? moveq+sub register isn't faster in all cases?
|
I would always prefer moveq+sub over sub.l-immediate as well. It also saves two bytes.
When a/b's solution works it would be brilliant. But I don't think it does. Did a quick check with d0:d1=$12345678:abcdef0 shifted by 7 and the result was $f02468ac:00000008.
EDIT: Wow... ross and me posted in the same minute again. How likely is that?