diff -ur binutils-2.13.90.0.14~/gas/config/tc-i386.c binutils-2.13.90.0.14/gas/config/tc-i386.c --- binutils-2.13.90.0.14~/gas/config/tc-i386.c Sat Oct 12 18:02:23 2002 +++ binutils-2.13.90.0.14/gas/config/tc-i386.c Tue Dec 10 13:03:21 2002 @@ -411,6 +411,7 @@ {"k6", Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|CpuK6|CpuMMX|Cpu3dnow }, {"athlon", Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686|CpuK6|CpuAthlon|CpuMMX|Cpu3dnow }, {"sledgehammer",Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686|CpuK6|CpuAthlon|CpuSledgehammer|CpuMMX|Cpu3dnow|CpuSSE|CpuSSE2 }, + {"cyrix", Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|CpuMMX|CpuCxMMX}, {NULL, 0 } }; diff -ur binutils-2.13.90.0.14~/gas/config/tc-i386.h binutils-2.13.90.0.14/gas/config/tc-i386.h --- binutils-2.13.90.0.14~/gas/config/tc-i386.h Tue Dec 10 13:07:41 2002 +++ binutils-2.13.90.0.14/gas/config/tc-i386.h Tue Dec 10 13:08:28 2002 @@ -243,13 +243,14 @@ #define CpuSSE 0x1000 /* Streaming SIMD extensions required */ #define CpuSSE2 0x2000 /* Streaming SIMD extensions 2 required */ #define Cpu3dnow 0x4000 /* 3dnow! support required */ +#define CpuEMMI 0x8000 /* Cyrix EMMI support required */ /* These flags are set by gas depending on the flag_code. */ #define Cpu64 0x4000000 /* 64bit support required */ #define CpuNo64 0x8000000 /* Not supported in the 64bit mode */ /* The default value for unknown CPUs - enable all features to avoid problems. */ -#define CpuUnknownFlags (Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686|CpuP4|CpuSledgehammer|CpuMMX|CpuSSE|CpuSSE2|Cpu3dnow|CpuK6|CpuAthlon) +#define CpuUnknownFlags (Cpu086|Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686|CpuP4|CpuSledgehammer|CpuMMX|CpuSSE|CpuSSE2|Cpu3dnow|CpuEMMI|CpuK6|CpuAthlon) /* the bits in opcode_modifier are used to generate the final opcode from the base_opcode. These bits also are used to detect alternate forms of diff -ur binutils-2.13.90.0.14~/include/opcode/i386.h binutils-2.13.90.0.14/include/opcode/i386.h --- binutils-2.13.90.0.14~/include/opcode/i386.h Wed Jul 17 20:38:29 2002 +++ binutils-2.13.90.0.14/include/opcode/i386.h Tue Dec 10 13:09:14 2002 @@ -1337,6 +1337,21 @@ {"sysret", 0, 0x0f07, X, CpuK6, lq_Suf|DefaultSize, { 0, 0, 0} }, {"swapgs", 0, 0x0f01, 0xf8, Cpu64, NoSuf|ImmExt, { 0, 0, 0} }, +/* Cyrix MII Extended MMX */ +{"paddsiw", 2, 0x0f51, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"paveb", 2, 0x0f50, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pdistib", 2, 0x0f54, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmachriw", 2, 0x0f5e, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmagw", 2, 0x0f52, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmagw", 2, 0x0f52, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmulhrw", 2, 0x0f59, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmulhriw", 2, 0x0f5d, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmvzb", 2, 0x0f58, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmvnzb", 2, 0x0f5a, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmvlzb", 2, 0x0f5b, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"pmvgezb", 2, 0x0f5c, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, +{"psubsiw", 2, 0x0f55, X, CpuEMMI, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, + /* sentinel */ {NULL, 0, 0, 0, 0, 0, { 0, 0, 0} } };