Browse Source

KVM: x86 emulator: fix JMP_REL

Change JMP_REL to call to register_address_increment(): the operands size
should not effect the calculation of the eip, instead the ad_bytes should
affect it.

Signed-off-by: Izik Eidus <izike@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Izik Eidus 17 years ago
parent
commit
e826ec9ae2
1 changed files with 1 additions and 2 deletions
  1. 1 2
      drivers/kvm/x86_emulate.c

+ 1 - 2
drivers/kvm/x86_emulate.c

@@ -448,8 +448,7 @@ struct operand {
 
 #define JMP_REL(rel) 							\
 	do {								\
-		_eip += (int)(rel);					\
-		_eip = ((op_bytes == 2) ? (uint16_t)_eip : (uint32_t)_eip); \
+		register_address_increment(_eip, rel);			\
 	} while (0)
 
 /*