mirror of
https://github.com/golang/go
synced 2024-11-22 07:44:43 -07:00
libmach: disassemble MOVLQZX correctly
R=ken2 CC=golang-dev https://golang.org/cl/1007041
This commit is contained in:
parent
c6138efbcb
commit
43409ed2c6
@ -1131,7 +1131,7 @@ static Optable optabFF[8] =
|
|||||||
[0x06] 0,0, "PUSHL %e",
|
[0x06] 0,0, "PUSHL %e",
|
||||||
};
|
};
|
||||||
|
|
||||||
static Optable optable[256+1] =
|
static Optable optable[256+2] =
|
||||||
{
|
{
|
||||||
[0x00] RMB,0, "ADDB %r,%e",
|
[0x00] RMB,0, "ADDB %r,%e",
|
||||||
[0x01] RM,0, "ADD%S %r,%e",
|
[0x01] RM,0, "ADD%S %r,%e",
|
||||||
@ -1387,6 +1387,7 @@ static Optable optable[256+1] =
|
|||||||
[0xfe] RMOPB,0, optabFE,
|
[0xfe] RMOPB,0, optabFE,
|
||||||
[0xff] RMOP,0, optabFF,
|
[0xff] RMOP,0, optabFF,
|
||||||
[0x100] RM,0, "MOVLQSX %e,%r",
|
[0x100] RM,0, "MOVLQSX %e,%r",
|
||||||
|
[0x101] RM,0, "MOVLQZX %e,%r",
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1590,7 +1591,10 @@ newop:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if(c == 0x63){
|
if(c == 0x63){
|
||||||
op = &obase[0x100]; /* MOVLQSX */
|
if(ip->rex&REXW)
|
||||||
|
op = &obase[0x100]; /* MOVLQSX */
|
||||||
|
else
|
||||||
|
op = &obase[0x101]; /* MOVLQZX */
|
||||||
goto hack;
|
goto hack;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user