3 ms·
Nice article, I learned something. Nitpick: MOVZX EAX, BYTE PTR [RDI] AND EAX, 0xFFFFFF00 MOV EBX, EAX // no partial register stall I think the aut
by f00zz 7y ago
Nice article, I learned something.
Nitpick:
MOVZX EAX, BYTE PTR [RDI]
AND EAX, 0xFFFFFF00
MOV EBX, EAX // no partial register stall
I think the author probably meant AND EAX, 0xFF. But the AND is redundant, as MOVZX is already zero-extending the byte. The snippet immediately above needs the AND, though.
- bonzini 7y agoI think he meant MOVZX EBX, [RDI] + AND EAX, 0xFFFFFF00 + OR EAX, EBX. The sequence would be equivalent to MOV AL, [RDI].