public inbox for gas2@sourceware.org
 help / color / mirror / Atom feed
* Pentium Pro changes
@ 1995-12-28 10:42 John Hassey
  0 siblings, 0 replies; only message in thread
From: John Hassey @ 1995-12-28 10:42 UTC (permalink / raw)
  To: gas2

  Here are some diffs which add Pentium Pro instruction support.
  Could someone with access to the sources install these and send
  me e-mail.

  thanks,
  john.

diff -rc2 gas-951221.orig/gas/ChangeLog gas-951221/gas/ChangeLog
*** gas-951221.orig/gas/ChangeLog	Thu Dec 21 04:28:58 1995
--- gas-951221/gas/ChangeLog	Thu Dec 28 13:27:02 1995
***************
*** 1,2 ****
--- 1,7 ----
+ Thu Dec 28 13:22:59 1995  John Hassey  <hassey@rtp.dg.com>
+ 
+ 	* config/tc-i386.c (md_assemble): Fixed test against registers
+ 	when trying to determine operand size from destination register.
+ 
  Wed Dec 20 14:57:17 1995  Ian Lance Taylor  <ian@cygnus.com>
  
diff -rc2 gas-951221.orig/gas/config/tc-i386.c gas-951221/gas/config/tc-i386.c
*** gas-951221.orig/gas/config/tc-i386.c	Tue Nov 28 14:21:17 1995
--- gas-951221/gas/config/tc-i386.c	Thu Dec 28 13:36:14 1995
***************
*** 1,4 ****
  /* i386.c -- Assemble code for the Intel 80386
!    Copyright (C) 1989, 1991, 1992, 1993 Free Software Foundation.
  
     This file is part of GAS, the GNU Assembler.
--- 1,4 ----
  /* i386.c -- Assemble code for the Intel 80386
!    Copyright (C) 1989, 1991, 1992, 1993, 1995 Free Software Foundation.
  
     This file is part of GAS, the GNU Assembler.
***************
*** 1155,1161 ****
  	  if (i.types[op] & Reg)
  	    {
! 	      i.suffix = ((i.types[op] == Reg8) ? BYTE_OPCODE_SUFFIX :
! 			  (i.types[op] == Reg16) ? WORD_OPCODE_SUFFIX :
! 			  DWORD_OPCODE_SUFFIX);
  	    }
        }
--- 1155,1161 ----
  	  if (i.types[op] & Reg)
  	    {
! 	      i.suffix = ((i.types[op] & Reg8) ? BYTE_OPCODE_SUFFIX :
! 			  (i.types[op] & Reg16) ? WORD_OPCODE_SUFFIX :
! 			  (i.types[op] & Reg32) ? DWORD_OPCODE_SUFFIX : 0);
  	    }
        }
diff -rc2 gas-951221.orig/include/opcode/ChangeLog gas-951221/include/opcode/ChangeLog
*** gas-951221.orig/include/opcode/ChangeLog	Thu Dec 21 04:30:26 1995
--- gas-951221/include/opcode/ChangeLog	Thu Dec 28 13:35:17 1995
***************
*** 1,2 ****
--- 1,6 ----
+ Thu Dec 28 13:27:53 1995  John Hassey  <hassey@rtp.dg.com>
+ 
+ 	* i386.h: Added Pentium Pro instructions.
+ 
  Thu Nov  2 22:59:22 1995  Ian Lance Taylor  <ian@cygnus.com>
  
diff -rc2 gas-951221.orig/include/opcode/i386.h gas-951221/include/opcode/i386.h
*** gas-951221.orig/include/opcode/i386.h	Fri Oct 20 18:22:05 1995
--- gas-951221/include/opcode/i386.h	Thu Dec 28 13:36:20 1995
***************
*** 758,761 ****
--- 758,795 ----
  {"cmpxchg8b", 1, 0x0fc7, 1, Modrm, { Mem, 0, 0} },
  
+ /* Pentium Pro extensions */
+ {"rdpmc", 0, 0x0f33, _, NoModrm, { 0, 0, 0} },
+ 
+ {"cmovo",  2, 0x0f40, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovno", 2, 0x0f41, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovb",  2, 0x0f42, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovae", 2, 0x0f43, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmove",  2, 0x0f44, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovne", 2, 0x0f45, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovbe", 2, 0x0f46, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmova",  2, 0x0f47, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovs",  2, 0x0f48, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovns", 2, 0x0f49, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovp",  2, 0x0f4a, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovnp", 2, 0x0f4b, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovl",  2, 0x0f4c, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovge", 2, 0x0f4d, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovle", 2, 0x0f4e, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ {"cmovg",  2, 0x0f4f, _, W|Modrm|ReverseRegRegmem, { WordReg|WordMem, WordReg, 0} },
+ 
+ {"fcmovb", 2, 0xdac0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmove", 2, 0xdac8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovbe",2, 0xdad0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovu", 2, 0xdad8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovnb", 2, 0xdbc0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovne", 2, 0xdbc8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovnbe",2, 0xdbd0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcmovnu", 2, 0xdbd8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ 
+ {"fcomi",  2, 0xdbf0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fucomi", 2, 0xdbe8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fcomip", 2, 0xdff0, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ {"fucomip",2, 0xdfe8, _, ShortForm, { FloatReg, FloatAcc, 0} },
+ 
  {"", 0, 0, 0, 0, { 0, 0, 0} }	/* sentinel */
  };
diff -rc2 gas-951221.orig/opcodes/ChangeLog gas-951221/opcodes/ChangeLog
*** gas-951221.orig/opcodes/ChangeLog	Thu Dec 21 04:32:55 1995
--- gas-951221/opcodes/ChangeLog	Thu Dec 28 13:35:25 1995
***************
*** 1,2 ****
--- 1,6 ----
+ Thu Dec 28 13:29:19 1995  John Hassey  <hassey@rtp.dg.com>
+ 
+ 	* i386-dis.c: Added Pentium Pro instructions.
+ 
  Tue Dec 19 22:56:35 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
  
diff -rc2 gas-951221.orig/opcodes/i386-dis.c gas-951221/opcodes/i386-dis.c
*** gas-951221.orig/opcodes/i386-dis.c	Thu Oct  5 22:18:18 1995
--- gas-951221/opcodes/i386-dis.c	Thu Dec 28 13:36:27 1995
***************
*** 525,529 ****
    { "invd" },
    { "wbinvd" },
!   { "(bad)" },  { "(bad)" },  
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 10 */
--- 525,529 ----
    { "invd" },
    { "wbinvd" },
!   { "(bad)" },  { "ud2a" },  
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 10 */
***************
*** 547,551 ****
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 30 */
!   { "wrmsr" },  { "rdtsc" },  { "rdmsr" },  { "(bad)" },  
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 38 */
--- 547,551 ----
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 30 */
!   { "wrmsr" },  { "rdtsc" },  { "rdmsr" },  { "rdpmc" },  
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 38 */
***************
*** 553,561 ****
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 40 */
!   { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
!   { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 48 */
!   { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
!   { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 50 */
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
--- 553,561 ----
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
    /* 40 */
!   { "cmovo", Gv,Ev }, { "cmovno", Gv,Ev }, { "cmovb", Gv,Ev }, { "cmovae", Gv,Ev },
!   { "cmove", Gv,Ev }, { "cmovne", Gv,Ev }, { "cmovbe", Gv,Ev }, { "cmova", Gv,Ev },
    /* 48 */
!   { "cmovs", Gv,Ev }, { "cmovns", Gv,Ev }, { "cmovp", Gv,Ev }, { "cmovnp", Gv,Ev },
!   { "cmovl", Gv,Ev }, { "cmovge", Gv,Ev }, { "cmovle", Gv,Ev }, { "cmovg", Gv,Ev },  
    /* 50 */
    { "(bad)" },  { "(bad)" },  { "(bad)" },  { "(bad)" },  
***************
*** 640,645 ****
    { "movzwS", Gv, Ew },  
    /* b8 */
    { "(bad)" },
-   { "(bad)" },
    { GRP8 },
    { "btcS", Ev, Gv },  
--- 640,645 ----
    { "movzwS", Gv, Ew },  
    /* b8 */
+   { "ud2b" },
    { "(bad)" },
    { GRP8 },
    { "btcS", Ev, Gv },  
***************
*** 1271,1279 ****
    /* da */
    {
      { "(bad)" },
-     { "(bad)" },
-     { "(bad)" },
-     { "(bad)" },
-     { "(bad)" },
      { FGRPda_5 },
      { "(bad)" },
--- 1271,1279 ----
    /* da */
    {
+     { "fcmovb",	ST, STi },
+     { "fcmove",	ST, STi },
+     { "fcmovbe",ST, STi },
+     { "fcmovu",	ST, STi },
      { "(bad)" },
      { FGRPda_5 },
      { "(bad)" },
***************
*** 1282,1293 ****
    /* db */
    {
!     { "(bad)" },
!     { "(bad)" },
!     { "(bad)" },
!     { "(bad)" },
      { FGRPdb_4 },
      { "(bad)" },
-     { "(bad)" },
-     { "(bad)" },
    },
    /* dc */
--- 1282,1293 ----
    /* db */
    {
!     { "fcmovnb",ST, STi },
!     { "fcmovne",ST, STi },
!     { "fcmovnbe",ST, STi },
!     { "fcmovnu",ST, STi },
      { FGRPdb_4 },
+     { "fucomi",	ST, STi },
+     { "fcomi",	ST, STi },
      { "(bad)" },
    },
    /* dc */
***************
*** 1331,1336 ****
      { "(bad)" },
      { FGRPdf_4 },
!     { "(bad)" },
!     { "(bad)" },
      { "(bad)" },
    },
--- 1331,1336 ----
      { "(bad)" },
      { FGRPdf_4 },
!     { "fucomip",ST, STi },
!     { "fcomip", ST, STi },
      { "(bad)" },
    },

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1995-12-28 10:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1995-12-28 10:42 Pentium Pro changes John Hassey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).