summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2004-02-01 18:00:05 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2004-02-01 18:00:05 +0000
commitbb6d717863c2fd64c6d927f4f282a1bd581f374e (patch)
treec4ac87f90a31b6dea9da1539bdcdbf2eb063dbf8 /gnu
parent39839b28696c11db816f20e455ceea3705224e20 (diff)
Add support for xmove-rng and xcrypt-{ecb,cbc,cfb,ofb} instructions found
in VIA C3 cpus. Very simple encoding: 0f a7 {c0, c8, d0, e0, d8}. This change is placed into the public domain, so someone get it back to FSF
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/binutils/include/opcode/i386.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gnu/usr.bin/binutils/include/opcode/i386.h b/gnu/usr.bin/binutils/include/opcode/i386.h
index 38de44aca0a..071f7159c4a 100644
--- a/gnu/usr.bin/binutils/include/opcode/i386.h
+++ b/gnu/usr.bin/binutils/include/opcode/i386.h
@@ -895,6 +895,13 @@ static const template i386_optab[] = {
/* 2nd. official undefined instr. */
{"ud2b", 0, 0x0fb9, X, Cpu686, NoSuf, { 0, 0, 0} },
+/* VIA C3 extensions */
+{"xstore-rng",0, 0x0fa7, 0xc0, Cpu686, ImmExt|NoSuf|IsString, { 0, 0, 0} },
+{"xcrypt-ecb",0, 0x0fa7, 0xc8, Cpu686, ImmExt|NoSuf|IsString, { 0, 0, 0} },
+{"xcrypt-cbc",0, 0x0fa7, 0xd0, Cpu686, ImmExt|NoSuf|IsString, { 0, 0, 0} },
+{"xcrypt-cfb",0, 0x0fa7, 0xe0, Cpu686, ImmExt|NoSuf|IsString, { 0, 0, 0} },
+{"xcrypt-ofb",0, 0x0fa7, 0xe8, Cpu686, ImmExt|NoSuf|IsString, { 0, 0, 0} },
+
{"cmovo", 2, 0x0f40, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
{"cmovno", 2, 0x0f41, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },
{"cmovb", 2, 0x0f42, X, Cpu686, wlq_Suf|Modrm, { WordReg|WordMem, WordReg, 0} },