Improve handling of x86[-64] prefix instructions in the disassembler.
authorLutz Euler <lutz.euler@freenet.de>
Wed, 14 Dec 2011 17:11:53 +0000 (18:11 +0100)
committerLutz Euler <lutz.euler@freenet.de>
Wed, 14 Dec 2011 17:11:53 +0000 (18:11 +0100)
commit65bdee4ba534e82c352cff3eec16473daaf285dd
tree3f7dbcefc6415bf2a525890c0fca37f22697bcc6
parentb83ac6ca16d5c9ee7aa6f261959035accf697681
Improve handling of x86[-64] prefix instructions in the disassembler.

Make LOCK, REP, REX and #x66 true prefix instructions on x86[-64].
This changes only the disassembler part of the instruction definitions;
with respect to assembly LOCK already was a true prefix instruction and
REP/REPE/REPNE remain instructions in their own right.

Delete the scores of instruction formats and printer clauses that are
made obsolete by this change. Two printer clauses are still needed for
each of those SSE instructions that use the REX prefix in an infix
position.

An example of the changes in the disassembler output (on x86-64):
Old:

;     5FFC:       F0               LOCK
;     5FFD:       480FB171F9       CMPXCHG [RCX-7], RSI

New:

;       4C:       F0480FB171F9     LOCK CMPXCHG [RCX-7], RSI
src/compiler/x86-64/insts.lisp
src/compiler/x86/insts.lisp