Commit 00ea18d19e3ed4acc1b4b92a733d34a04a5fb5af

Authored by aliguori
1 parent b28b6230

Fix i386-linux-user build (Laurent Desnogues)

This broke due to r7230.

Signed-off-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>



git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7233 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 8 additions and 0 deletions
target-i386/op_helper.c
@@ -1191,6 +1191,7 @@ void do_interrupt_user(int intno, int is_int, int error_code, @@ -1191,6 +1191,7 @@ void do_interrupt_user(int intno, int is_int, int error_code,
1191 EIP = next_eip; 1191 EIP = next_eip;
1192 } 1192 }
1193 1193
  1194 +#if !defined(CONFIG_USER_ONLY)
1194 static void handle_even_inj(int intno, int is_int, int error_code, 1195 static void handle_even_inj(int intno, int is_int, int error_code,
1195 int is_hw, int rm) 1196 int is_hw, int rm)
1196 { 1197 {
@@ -1209,6 +1210,7 @@ static void handle_even_inj(int intno, int is_int, int error_code, @@ -1209,6 +1210,7 @@ static void handle_even_inj(int intno, int is_int, int error_code,
1209 stl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj), event_inj); 1210 stl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj), event_inj);
1210 } 1211 }
1211 } 1212 }
  1213 +#endif
1212 1214
1213 /* 1215 /*
1214 * Begin execution of an interruption. is_int is TRUE if coming from 1216 * Begin execution of an interruption. is_int is TRUE if coming from
@@ -1250,8 +1252,10 @@ void do_interrupt(int intno, int is_int, int error_code, @@ -1250,8 +1252,10 @@ void do_interrupt(int intno, int is_int, int error_code,
1250 } 1252 }
1251 } 1253 }
1252 if (env->cr[0] & CR0_PE_MASK) { 1254 if (env->cr[0] & CR0_PE_MASK) {
  1255 +#if !defined(CONFIG_USER_ONLY)
1253 if (env->hflags & HF_SVMI_MASK) 1256 if (env->hflags & HF_SVMI_MASK)
1254 handle_even_inj(intno, is_int, error_code, is_hw, 0); 1257 handle_even_inj(intno, is_int, error_code, is_hw, 0);
  1258 +#endif
1255 #ifdef TARGET_X86_64 1259 #ifdef TARGET_X86_64
1256 if (env->hflags & HF_LMA_MASK) { 1260 if (env->hflags & HF_LMA_MASK) {
1257 do_interrupt64(intno, is_int, error_code, next_eip, is_hw); 1261 do_interrupt64(intno, is_int, error_code, next_eip, is_hw);
@@ -1261,15 +1265,19 @@ void do_interrupt(int intno, int is_int, int error_code, @@ -1261,15 +1265,19 @@ void do_interrupt(int intno, int is_int, int error_code,
1261 do_interrupt_protected(intno, is_int, error_code, next_eip, is_hw); 1265 do_interrupt_protected(intno, is_int, error_code, next_eip, is_hw);
1262 } 1266 }
1263 } else { 1267 } else {
  1268 +#if !defined(CONFIG_USER_ONLY)
1264 if (env->hflags & HF_SVMI_MASK) 1269 if (env->hflags & HF_SVMI_MASK)
1265 handle_even_inj(intno, is_int, error_code, is_hw, 1); 1270 handle_even_inj(intno, is_int, error_code, is_hw, 1);
  1271 +#endif
1266 do_interrupt_real(intno, is_int, error_code, next_eip); 1272 do_interrupt_real(intno, is_int, error_code, next_eip);
1267 } 1273 }
1268 1274
  1275 +#if !defined(CONFIG_USER_ONLY)
1269 if (env->hflags & HF_SVMI_MASK) { 1276 if (env->hflags & HF_SVMI_MASK) {
1270 uint32_t event_inj = ldl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj)); 1277 uint32_t event_inj = ldl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj));
1271 stl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj), event_inj & ~SVM_EVTINJ_VALID); 1278 stl_phys(env->vm_vmcb + offsetof(struct vmcb, control.event_inj), event_inj & ~SVM_EVTINJ_VALID);
1272 } 1279 }
  1280 +#endif
1273 } 1281 }
1274 1282
1275 /* This should come from sysemu.h - if we could include it here... */ 1283 /* This should come from sysemu.h - if we could include it here... */