X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmx_lowlevel.h;h=81872e022a62e61801442f8a931c8c1b5aef8dc4;hp=b654414abc8527e3d1b49185e621b6e42042af8a;hb=61597ea2c5ccace036d8a65e429e32b8f8a7ed4a;hpb=f3eb8bbb7c58c98b03797f2188e6c1d2a7610c15 diff --git a/palacios/include/palacios/vmx_lowlevel.h b/palacios/include/palacios/vmx_lowlevel.h index b654414..81872e0 100644 --- a/palacios/include/palacios/vmx_lowlevel.h +++ b/palacios/include/palacios/vmx_lowlevel.h @@ -22,6 +22,7 @@ #ifdef __V3VEE__ +#include #define VMX_SUCCESS 0 #define VMX_FAIL_INVALID 1 @@ -134,10 +135,10 @@ static inline int vmcs_read(vmcs_field_t vmcs_field, void * dst) { __asm__ __volatile__ ( VMREAD_OPCODE EAX_ECX_MODRM - "seteb %0;" // fail valid - "setnaeb %1;" // fail invalid - : "=q"(ret_valid), "=q"(ret_invalid), "=c"(val) // Use ECX - : "a" (vmcs_field), "0"(ret_valid), "1"(ret_invalid) + "seteb %1;" // fail valid + "setnaeb %2;" // fail invalid + : "=&c"(val), "=q"(ret_valid), "=q"(ret_invalid) // Use ECX + : "a" (vmcs_field), "1"(ret_valid), "2"(ret_invalid) : "memory" );