cpu.x86: xor rax, rax -> xor eax, eax
The latter should be equivalent in all ways, but its encoding is one byte shorter.locals-and-roots
parent
e60d45a169
commit
5b3933e2e4
|
@ -74,6 +74,11 @@ cpu x86.64? [
|
|||
] unit-test
|
||||
] when
|
||||
|
||||
! %load-immediate
|
||||
{ B{ 49 201 } } [
|
||||
[ RCX 0 %load-immediate ] B{ } make
|
||||
] unit-test
|
||||
|
||||
! %prologue
|
||||
{ t } [
|
||||
[ 2 cells %prologue ] B{ } make
|
||||
|
|
|
@ -61,7 +61,7 @@ M: x86 test-instruction? t ;
|
|||
|
||||
M: x86 immediate-store? immediate-comparand? ;
|
||||
|
||||
M: x86 %load-immediate [ dup XOR ] [ MOV ] if-zero ;
|
||||
M: x86 %load-immediate [ 32-bit-version-of dup XOR ] [ MOV ] if-zero ;
|
||||
|
||||
M: x86 %load-reference
|
||||
[ swap 0 MOV rc-absolute-cell rel-literal ]
|
||||
|
|
Loading…
Reference in New Issue