Implement Centaur's XCRYPT instructions

Implement Centaur's XCRYPT instruction (RFE 825529)
This commit is contained in:
H. Peter Anvin 2007-09-22 19:20:56 -07:00
parent 83828b6ce8
commit 4d283f685f
2 changed files with 14 additions and 8 deletions

View File

@ -272,12 +272,12 @@ CMPXCHG mem,reg32 \321\300\2\x0F\xB1\101 PENT,SM
CMPXCHG reg32,reg32 \321\2\x0F\xB1\101 PENT
CMPXCHG mem,reg64 \324\300\2\x0F\xB1\101 X64,SM
CMPXCHG reg64,reg64 \324\2\x0F\xB1\101 X64
CMPXCHG486 mem,reg8 \300\2\x0F\xA6\101 486,SM,UNDOC
CMPXCHG486 reg8,reg8 \2\x0F\xA6\101 486,UNDOC
CMPXCHG486 mem,reg16 \320\300\2\x0F\xA7\101 486,SM,UNDOC
CMPXCHG486 reg16,reg16 \320\2\x0F\xA7\101 486,UNDOC
CMPXCHG486 mem,reg32 \321\300\2\x0F\xA7\101 486,SM,UNDOC
CMPXCHG486 reg32,reg32 \321\2\x0F\xA7\101 486,UNDOC
CMPXCHG486 mem,reg8 \300\2\x0F\xA6\101 486,SM,UNDOC,ND
CMPXCHG486 reg8,reg8 \2\x0F\xA6\101 486,UNDOC,ND
CMPXCHG486 mem,reg16 \320\300\2\x0F\xA7\101 486,SM,UNDOC,ND
CMPXCHG486 reg16,reg16 \320\2\x0F\xA7\101 486,UNDOC,ND
CMPXCHG486 mem,reg32 \321\300\2\x0F\xA7\101 486,SM,UNDOC,ND
CMPXCHG486 reg32,reg32 \321\2\x0F\xA7\101 486,UNDOC,ND
CMPXCHG8B mem \300\2\x0F\xC7\201 PENT
CMPXCHG16B mem \324\300\2\x0F\xC7\201 X64
CPUID void \2\x0F\xA2 PENT
@ -1377,7 +1377,6 @@ XOR rm64,imm \324\300\155\1\x81\206\151 X64,SM
XOR mem,imm8 \300\1\x80\206\21 8086,SM
XOR mem,imm16 \320\300\145\1\x81\206\141 8086,SM
XOR mem,imm32 \321\300\155\1\x81\206\151 386,SM
XSTORE void \3\x0F\xA7\xC0 P6,CYRIX
CMOVcc reg16,mem \320\301\1\x0F\330\x40\110 P6,SM
CMOVcc reg16,reg16 \320\1\x0F\330\x40\110 P6
CMOVcc reg32,mem \321\301\1\x0F\330\x40\110 P6,SM
@ -2217,3 +2216,10 @@ GETSEC void \2\x0F\x37 KATMAI
; Geode (Cyrix) 3DNow! additions
PFRCP mmxreg,mmxrm \301\2\x0F\x0F\110\1\x86 PENT,3DNOW,SM,CYRIX
PFRSQRT mmxreg,mmxrm \301\2\x0F\x0F\110\1\x87 PENT,3DNOW,SM,CYRIX
; VIA (Centaur) security instructions
XSTORE void \3\x0F\xA7\xC0 PENT,CYRIX
XCRYPTECB void \333\3\x0F\xA7\xC8 PENT,CYRIX
XCRYPTCBC void \333\3\x0F\xA7\xD0 PENT,CYRIX
XCRYPTCFB void \333\3\x0F\xA7\xE0 PENT,CYRIX
XCRYPTOFB void \333\3\x0F\xA7\xE8 PENT,CYRIX

View File

@ -9,7 +9,7 @@
# Opcode prefixes which need their own opcode tables
# LONGER PREFIXES FIRST!
@disasm_prefixes = qw(0F0F 0F24 0F25 0F38 0F3A 0F7A 0F);
@disasm_prefixes = qw(0F0F 0F24 0F25 0F38 0F3A 0F7A 0FA7 0F);
print STDERR "Reading insns.dat...\n";