tcg/x86_64: Avoid unnecessary REX.B prefixes.
authorRichard Henderson <rth@twiddle.net>
Thu, 14 Jan 2010 22:59:51 +0000 (14:59 -0800)
committerAurelien Jarno <aurelien@aurel32.net>
Fri, 15 Jan 2010 06:32:56 +0000 (07:32 +0100)
commit7e5b92b8ba33e597a646e8eea29b772d26fc716a
treea2b52e694ff69cd882913ba80cc20ee5331a4ccf
parent6452492ee10bb2f799d1f18ae919dbb7e61b2c46
tcg/x86_64: Avoid unnecessary REX.B prefixes.

The existing P_REXB internal opcode flag unconditionally emits
the REX prefix.  Technically it's not needed if the register in
question is %al, %bl, %cl, %dl.

Eliding the prefix requires splitting the P_REXB flag into two,
in order to indicate whether the byte register in question is
in the REG or the R/M field.  Within TCG, the byte register is
in the REG field only for stores.

Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
tcg/x86_64/tcg-target.c