mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-09-22 10:43:39 -04:00
Add VMX instructions.
This commit is contained in:
14
insns.dat
14
insns.dat
@@ -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
|
MOVSHDUP xmmreg,xmmreg \3\xF3\x0F\x16\110 PRESCOTT,SSE3
|
||||||
MOVSLDUP xmmreg,mem \301\3\xF3\x0F\x12\110 PRESCOTT,SSE3
|
MOVSLDUP xmmreg,mem \301\3\xF3\x0F\x12\110 PRESCOTT,SSE3
|
||||||
MOVSLDUP xmmreg,xmmreg \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
|
||||||
|
5
insns.h
5
insns.h
@@ -27,8 +27,8 @@ struct itemplate {
|
|||||||
unsigned long flags; /* some flags */
|
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}
|
#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_SSE 0x00010000UL /* it's a SSE (KNI, MMX2) instruction */
|
||||||
#define IF_SSE2 0x00020000UL /* it's a SSE2 instruction */
|
#define IF_SSE2 0x00020000UL /* it's a SSE2 instruction */
|
||||||
#define IF_SSE3 0x00040000UL /* it's a SSE3 (PNI) 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_PMASK 0xFF000000UL /* the mask for processor types */
|
||||||
#define IF_PLEVEL 0x0F000000UL /* the mask for processor instr. level */
|
#define IF_PLEVEL 0x0F000000UL /* the mask for processor instr. level */
|
||||||
/* also the highest possible processor */
|
/* also the highest possible processor */
|
||||||
|
Reference in New Issue
Block a user