lkml.org 
[lkml]   [2007]   [Dec]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 29/55] KVM: Simplify decode_register_operand() calling convention
Date
Now that rex_prefix is part of the decode cache, there is no need to pass
it along.

Signed-off-by: Avi Kivity <avi@qumranet.com>
---
drivers/kvm/x86_emulate.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c
index 884e4a2..b352a6c 100644
--- a/drivers/kvm/x86_emulate.c
+++ b/drivers/kvm/x86_emulate.c
@@ -518,10 +518,10 @@ static int test_cc(unsigned int condition, unsigned int flags)

static void decode_register_operand(struct operand *op,
struct decode_cache *c,
- int highbyte_regs,
int inhibit_bytereg)
{
unsigned reg = c->modrm_reg;
+ int highbyte_regs = c->rex_prefix == 0;

if (!(c->d & ModRM))
reg = (c->b & 7) | ((c->rex_prefix & 1) << 3);
@@ -837,7 +837,7 @@ modrm_done:
case SrcNone:
break;
case SrcReg:
- decode_register_operand(&c->src, c, c->rex_prefix == 0, 0);
+ decode_register_operand(&c->src, c, 0);
break;
case SrcMem16:
c->src.bytes = 2;
@@ -895,7 +895,7 @@ modrm_done:
/* Special instructions do their own operand decoding. */
return 0;
case DstReg:
- decode_register_operand(&c->dst, c, c->rex_prefix == 0,
+ decode_register_operand(&c->dst, c,
c->twobyte && (c->b == 0xb6 || c->b == 0xb7));
break;
case DstMem:
--
1.5.3.7


\
 
 \ /
  Last update: 2007-12-26 12:17    [W:0.252 / U:0.800 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site