From c00435ed04ebd7184d0ab37c345fc6ab215538b2 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 4 Apr 1997 19:03:15 +0000 Subject: [PATCH] * i386.h: Correct opcode values for fsubp, fsubrp, fdivp, and fdivrp. --- include/opcode/ChangeLog | 11 +++++++++++ include/opcode/i386.h | 35 +++++++++++++++++++---------------- 2 files changed, 30 insertions(+), 16 deletions(-) diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index 49db6de66f0..ffb374e0a1b 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,14 @@ +Fri Apr 4 14:02:32 1997 Ian Lance Taylor + + * i386.h: Correct opcode values for fsubp, fsubrp, fdivp, and + fdivrp. + +start-sanitize-v850 +Tue Mar 25 22:57:26 1997 Stu Grossman (grossman@critters.cygnus.com) + + * v850.h (extract): Make unsigned. + +end-sanitize-v850 Mon Mar 24 14:38:15 1997 Ian Lance Taylor * i386.h: Add iclr. diff --git a/include/opcode/i386.h b/include/opcode/i386.h index fddecfccf30..f227008b09c 100644 --- a/include/opcode/i386.h +++ b/include/opcode/i386.h @@ -155,6 +155,9 @@ static const template i386_optab[] = { {"xor", 2, 0x34, _, W|NoModrm, { Imm, Acc, 0} }, {"xor", 2, 0x80, 6, W|Modrm, { Imm, Reg|Mem, 0} }, +/* iclr with 1 operand is really xor with 2 operands. */ +{"clr", 1, 0x30, _, W|Modrm|iclrKludge, { Reg } }, + {"adc", 2, 0x10, _, DW|Modrm, { Reg, Reg|Mem, 0} }, {"adc", 2, 0x83, 2, Modrm, { Imm8S, WordReg|WordMem, 0} }, {"adc", 2, 0x14, _, W|NoModrm, { Imm, Acc, 0} }, @@ -576,14 +579,14 @@ static const template i386_optab[] = { {"fsub", 2, 0xdce0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif {"fsub", 0, 0xdce1, _, NoModrm, { 0, 0, 0} }, -{"fsubp", 1, 0xdee0, _, ShortForm, { FloatReg, 0, 0} }, -{"fsubp", 2, 0xdee0, _, ShortForm, { FloatReg, FloatAcc, 0} }, +{"fsubp", 1, 0xdee8, _, ShortForm, { FloatReg, 0, 0} }, +{"fsubp", 2, 0xdee8, _, ShortForm, { FloatReg, FloatAcc, 0} }, #ifdef NON_BROKEN_OPCODES {"fsubp", 2, 0xdee8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #else -{"fsubp", 2, 0xdee0, _, ShortForm, { FloatAcc, FloatReg, 0} }, +{"fsubp", 2, 0xdee8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif -{"fsubp", 0, 0xdee1, _, NoModrm, { 0, 0, 0} }, +{"fsubp", 0, 0xdee9, _, NoModrm, { 0, 0, 0} }, {"fsubs", 1, 0xd8, 4, Modrm, { Mem, 0, 0} }, {"fisubl", 1, 0xda, 4, Modrm, { Mem, 0, 0} }, {"fsubl", 1, 0xdc, 4, Modrm, { Mem, 0, 0} }, @@ -598,14 +601,14 @@ static const template i386_optab[] = { {"fsubr", 2, 0xdce8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif {"fsubr", 0, 0xdce9, _, NoModrm, { 0, 0, 0} }, -{"fsubrp", 1, 0xdee8, _, ShortForm, { FloatReg, 0, 0} }, -{"fsubrp", 2, 0xdee8, _, ShortForm, { FloatReg, FloatAcc, 0} }, +{"fsubrp", 1, 0xdee0, _, ShortForm, { FloatReg, 0, 0} }, +{"fsubrp", 2, 0xdee0, _, ShortForm, { FloatReg, FloatAcc, 0} }, #ifdef NON_BROKEN_OPCODES {"fsubrp", 2, 0xdee0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #else -{"fsubrp", 2, 0xdee8, _, ShortForm, { FloatAcc, FloatReg, 0} }, +{"fsubrp", 2, 0xdee0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif -{"fsubrp", 0, 0xdee9, _, NoModrm, { 0, 0, 0} }, +{"fsubrp", 0, 0xdee1, _, NoModrm, { 0, 0, 0} }, {"fsubrs", 1, 0xd8, 5, Modrm, { Mem, 0, 0} }, {"fisubrl", 1, 0xda, 5, Modrm, { Mem, 0, 0} }, {"fsubrl", 1, 0xdc, 5, Modrm, { Mem, 0, 0} }, @@ -635,14 +638,14 @@ static const template i386_optab[] = { {"fdiv", 2, 0xdcf0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif {"fdiv", 0, 0xdcf1, _, NoModrm, { 0, 0, 0} }, -{"fdivp", 1, 0xdef0, _, ShortForm, { FloatReg, 0, 0} }, -{"fdivp", 2, 0xdef0, _, ShortForm, { FloatReg, FloatAcc, 0} }, +{"fdivp", 1, 0xdef8, _, ShortForm, { FloatReg, 0, 0} }, +{"fdivp", 2, 0xdef8, _, ShortForm, { FloatReg, FloatAcc, 0} }, #ifdef NON_BROKEN_OPCODES {"fdivp", 2, 0xdef8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #else -{"fdivp", 2, 0xdef0, _, ShortForm, { FloatAcc, FloatReg, 0} }, +{"fdivp", 2, 0xdef8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif -{"fdivp", 0, 0xdef1, _, NoModrm, { 0, 0, 0} }, +{"fdivp", 0, 0xdef9, _, NoModrm, { 0, 0, 0} }, {"fdivs", 1, 0xd8, 6, Modrm, { Mem, 0, 0} }, {"fidivl", 1, 0xda, 6, Modrm, { Mem, 0, 0} }, {"fdivl", 1, 0xdc, 6, Modrm, { Mem, 0, 0} }, @@ -657,14 +660,14 @@ static const template i386_optab[] = { {"fdivr", 2, 0xdcf8, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif {"fdivr", 0, 0xdcf9, _, NoModrm, { 0, 0, 0} }, -{"fdivrp", 1, 0xdef8, _, ShortForm, { FloatReg, 0, 0} }, -{"fdivrp", 2, 0xdef8, _, ShortForm, { FloatReg, FloatAcc, 0} }, +{"fdivrp", 1, 0xdef0, _, ShortForm, { FloatReg, 0, 0} }, +{"fdivrp", 2, 0xdef0, _, ShortForm, { FloatReg, FloatAcc, 0} }, #ifdef NON_BROKEN_OPCODES {"fdivrp", 2, 0xdef0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #else -{"fdivrp", 2, 0xdef8, _, ShortForm, { FloatAcc, FloatReg, 0} }, +{"fdivrp", 2, 0xdef0, _, ShortForm, { FloatAcc, FloatReg, 0} }, #endif -{"fdivrp", 0, 0xdef9, _, NoModrm, { 0, 0, 0} }, +{"fdivrp", 0, 0xdef1, _, NoModrm, { 0, 0, 0} }, {"fdivrs", 1, 0xd8, 7, Modrm, { Mem, 0, 0} }, {"fidivrl", 1, 0xda, 7, Modrm, { Mem, 0, 0} }, {"fdivrl", 1, 0xdc, 7, Modrm, { Mem, 0, 0} }, -- 2.30.2