diff options
author | Alan Modra <amodra@gmail.com> | 2001-03-22 02:27:54 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2001-03-22 02:27:54 +0000 |
commit | 87890af05c79e3fb1cfb2cdc0ffa0cea8a3b26da (patch) | |
tree | edbbb1cc8711e22f56c0e42340f1ea76bfbe6820 | |
parent | c26e1c2b790d52ba3e9ec78798ebf0b6e2ac155a (diff) | |
download | gdb-87890af05c79e3fb1cfb2cdc0ffa0cea8a3b26da.zip gdb-87890af05c79e3fb1cfb2cdc0ffa0cea8a3b26da.tar.gz gdb-87890af05c79e3fb1cfb2cdc0ffa0cea8a3b26da.tar.bz2 |
paddq and psubq support.
-rw-r--r-- | include/opcode/ChangeLog | 4 | ||||
-rw-r--r-- | include/opcode/i386.h | 4 | ||||
-rw-r--r-- | opcodes/ChangeLog | 6 | ||||
-rw-r--r-- | opcodes/i386-dis.c | 12 |
4 files changed, 20 insertions, 6 deletions
diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index eef5c4d..1c1cb55 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,7 @@ +2001-03-22 Alan Modra <alan@linuxcare.com.au> + + * i386.h (i386_optab): Add paddq, psubq. + 2001-03-19 Alan Modra <alan@linuxcare.com.au> * i386.h (REGNAM_AL, REGNAM_AX, REGNAM_EAX): Define. diff --git a/include/opcode/i386.h b/include/opcode/i386.h index f480dd4..44d92ae 100644 --- a/include/opcode/i386.h +++ b/include/opcode/i386.h @@ -993,6 +993,8 @@ static const template i386_optab[] = { {"paddw", 2, 0x660ffd,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"paddd", 2, 0x0ffe, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, {"paddd", 2, 0x660ffe,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, +{"paddq", 2, 0x0fd4, X, CpuMMX, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } }, +{"paddq", 2, 0x660fd4,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"paddsb", 2, 0x0fec, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, {"paddsb", 2, 0x660fec,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"paddsw", 2, 0x0fed, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, @@ -1063,6 +1065,8 @@ static const template i386_optab[] = { {"psubw", 2, 0x660ff9,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"psubd", 2, 0x0ffa, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, {"psubd", 2, 0x660ffa,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, +{"psubq", 2, 0x0ffb, X, CpuMMX, FP|Modrm, { RegMMX|LLongMem, RegMMX, 0 } }, +{"psubq", 2, 0x660ffb,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"psubsb", 2, 0x0fe8, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, {"psubsb", 2, 0x660fe8,X,CpuSSE2,FP|Modrm, { RegXMM|LLongMem, RegXMM, 0 } }, {"psubsw", 2, 0x0fe9, X, CpuMMX, FP|Modrm, { RegMMX|LongMem, RegMMX, 0 } }, diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 692a029..b75e0b3 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,9 @@ +2001-03-22 Alan Modra <alan@linuxcare.com.au> + + * i386-dis.c (dis386_twobyte_att): Add entries for paddq, psubq. + (dis386_twobyte_intel): Likewise. + (twobyte_has_modrm): Set entry for paddq, psubq. + 2001-03-20 Patrick Macdonald <patrickm@redhat.com> * cgen-dis.in (print_insn_@arch@): Add support for target machine diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index b2fc9e1..399d61c 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -1854,7 +1854,7 @@ static const struct dis386 dis386_twobyte_att[] = { { "psrlw", MX, EM, XX }, { "psrld", MX, EM, XX }, { "psrlq", MX, EM, XX }, - { "(bad)", XX, XX, XX }, + { "paddq", MX, EM, XX }, { "pmullw", MX, EM, XX }, { PREGRP21 }, { "pmovmskb", Ev, MX, XX }, @@ -1898,7 +1898,7 @@ static const struct dis386 dis386_twobyte_att[] = { { "psubb", MX, EM, XX }, { "psubw", MX, EM, XX }, { "psubd", MX, EM, XX }, - { "(bad)", XX, XX, XX }, + { "psubq", MX, EM, XX }, { "paddb", MX, EM, XX }, { "paddw", MX, EM, XX }, { "paddd", MX, EM, XX }, @@ -2146,7 +2146,7 @@ static const struct dis386 dis386_twobyte_intel[] = { { "psrlw", MX, EM, XX }, { "psrld", MX, EM, XX }, { "psrlq", MX, EM, XX }, - { "(bad)", XX, XX, XX }, + { "paddq", MX, EM, XX }, { "pmullw", MX, EM, XX }, { PREGRP21 }, { "pmovmskb", Ev, MX, XX }, @@ -2190,7 +2190,7 @@ static const struct dis386 dis386_twobyte_intel[] = { { "psubb", MX, EM, XX }, { "psubw", MX, EM, XX }, { "psubd", MX, EM, XX }, - { "(bad)", XX, XX, XX }, + { "psubq", MX, EM, XX }, { "paddb", MX, EM, XX }, { "paddw", MX, EM, XX }, { "paddd", MX, EM, XX }, @@ -2236,9 +2236,9 @@ static const unsigned char twobyte_has_modrm[256] = { /* a0 */ 0,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1, /* af */ /* b0 */ 1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1, /* bf */ /* c0 */ 1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0, /* cf */ - /* d0 */ 0,1,1,1,0,1,0,1,1,1,1,1,1,1,1,1, /* df */ + /* d0 */ 0,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1, /* df */ /* e0 */ 1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1, /* ef */ - /* f0 */ 0,1,1,1,0,1,1,1,1,1,1,0,1,1,1,0 /* ff */ + /* f0 */ 0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0 /* ff */ /* ------------------------------- */ /* 0 1 2 3 4 5 6 7 8 9 a b c d e f */ }; |