Add VMX instructions.

This commit is contained in:
Eric Christopher 2006-03-02 18:35:09 +00:00
parent 1e0de6e913
commit aa348dec7d
2 changed files with 17 additions and 2 deletions

View File

@ -1673,3 +1673,17 @@ MOVSHDUP xmmreg,mem \301\3\xF3\x0F\x16\110 PRESCOTT,SSE3
MOVSHDUP xmmreg,xmmreg \3\xF3\x0F\x16\110 PRESCOTT,SSE3
MOVSLDUP xmmreg,mem \301\3\xF3\x0F\x12\110 PRESCOTT,SSE3
MOVSLDUP xmmreg,xmmreg \3\xF3\x0F\x12\110 PRESCOTT,SSE3
; VMX Instructions
VMCALL void \3\x0F\x01\xC1 VMX
VMCLEAR mem \3\x66\x0F\xC7\206 VMX
VMLAUNCH void \3\x0F\x01\xC2 VMX
VMPTRLD mem \2\x0F\xC7\206 VMX
VMPTRST mem \2\x0F\xC7\207 VMX
VMREAD mem,reg32 \2\x0F\x78\101 VMX
VMREAD reg32,reg32 \2\x0F\x78\101 VMX
VMRESUME void \3\x0F\x01\xC3 VMX
VMWRITE reg32,mem \2\x0F\x79\110 VMX
VMWRITE reg32,reg32 \2\x0F\x79\110 VMX
VMXOFF void \3\x0F\x01\xC4 VMX
VMXON mem \3\xF3\x0F\xC7\206 VMX

View File

@ -27,8 +27,8 @@ struct itemplate {
unsigned long flags; /* some flags */
};
/*
* this define is used to signify the end of an itemplate
/*
* this define is used to signify the end of an itemplate
*/
#define ITEMPLATE_END {-1,-1,{-1,-1,-1},NULL,0}
@ -78,6 +78,7 @@ struct itemplate {
#define IF_SSE 0x00010000UL /* it's a SSE (KNI, MMX2) instruction */
#define IF_SSE2 0x00020000UL /* it's a SSE2 instruction */
#define IF_SSE3 0x00040000UL /* it's a SSE3 (PNI) instruction */
#define IF_VMX 0x00080000UL /* it's a VMX instruction */
#define IF_PMASK 0xFF000000UL /* the mask for processor types */
#define IF_PLEVEL 0x0F000000UL /* the mask for processor instr. level */
/* also the highest possible processor */