public inbox for gas2@sourceware.org
 help / color / mirror / Atom feed
* binutils 2.8.1 cpu32 bug
@ 1997-09-15 12:05 Joel Sherrill
  1997-09-24 10:42 ` Ian Lance Taylor
  0 siblings, 1 reply; 4+ messages in thread
From: Joel Sherrill @ 1997-09-15 12:05 UTC (permalink / raw)
  To: gas2

Here is a fix I received from an RTEMS user.  This was in binutils 2.8.1
and I am not sure whether or not it has been fixed since.

--joel

=====================================================================
*** binutils-2.8.1/opcodes/m68k-opc.c   Wed Aug  6 09:47:31 1997
--- /usr/src/local/gnu/src/binutils-2.8.1.0.1/opcodes/m68k-opc.c      
   Wed Jul 23 21:09:13 1997
***************
*** 1760,1766 ****

  #define TBL1(name,signed,round,size)                                  \
    {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
!      two(0177700,0107777), "`sD1", cpu32 },                           \
    {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
       two(0177770,0107770), "DsD3D1", cpu32 }
  #define TBL(name1, name2, name3, s, r) \
--- 1760,1766 ----

  #define TBL1(name,signed,round,size)                                  \
    {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
!      two(0177700,0107777), "@lD1", cpu32 },                           \
    {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
       two(0177770,0107770), "DsD3D1", cpu32 }
  #define TBL(name1, name2, name3, s, r) \
***************
*** 1825,1837 ****

  {"trapv",     one(0047166),   one(0177777), "", m68000up },

! {"tstb",      one(0045000),   one(0177700), ";b", m68020up | mcf5200 },
  {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
! {"tstw",      one(0045100),   one(0177700), "*w", m68020up | mcf5200 },
! {"tstw",      one(0045110),   one(0177700), "As", cpu32 },
  {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
! {"tstl",      one(0045200),   one(0177700), "*l", m68020up | mcf5200 },
! {"tstl",      one(0045210),   one(0177700), "As", cpu32 },
  {"tstl",      one(0045200),   one(0177700), "@l", m68000up },

  {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },
--- 1825,1835 ----

  {"trapv",     one(0047166),   one(0177777), "", m68000up },

! {"tstb",      one(0045000),   one(0177700), ";b", m68020up |  
mcf5200 | cpu32 },
  {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
! {"tstw",      one(0045100),   one(0177700), "*w", m68020up |  
mcf5200 | cpu32 },
  {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
! {"tstl",      one(0045200),   one(0177700), "*l", m68020up |  
mcf5200 | cpu32 },
  {"tstl",      one(0045200),   one(0177700), "@l", m68000up },

  {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: binutils 2.8.1 cpu32 bug
  1997-09-15 12:05 binutils 2.8.1 cpu32 bug Joel Sherrill
@ 1997-09-24 10:42 ` Ian Lance Taylor
  1997-09-24 14:08   ` Joel Sherrill
  0 siblings, 1 reply; 4+ messages in thread
From: Ian Lance Taylor @ 1997-09-24 10:42 UTC (permalink / raw)
  To: joel; +Cc: gas2

   Date: Mon, 15 Sep 1997 14:05:26 -0500 (CDT)
   From: Joel Sherrill <joel@OARcorp.com>

   Here is a fix I received from an RTEMS user.  This was in binutils 2.8.1
   and I am not sure whether or not it has been fixed since.

   --joel

   =====================================================================
   *** binutils-2.8.1/opcodes/m68k-opc.c   Wed Aug  6 09:47:31 1997
   --- /usr/src/local/gnu/src/binutils-2.8.1.0.1/opcodes/m68k-opc.c      
      Wed Jul 23 21:09:13 1997
   ***************
   *** 1760,1766 ****

     #define TBL1(name,signed,round,size)                                  \
       {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
   !      two(0177700,0107777), "`sD1", cpu32 },                           \
       {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
	  two(0177770,0107770), "DsD3D1", cpu32 }
     #define TBL(name1, name2, name3, s, r) \
   --- 1760,1766 ----

     #define TBL1(name,signed,round,size)                                  \
       {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
   !      two(0177700,0107777), "@lD1", cpu32 },                           \
       {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
	  two(0177770,0107770), "DsD3D1", cpu32 }
     #define TBL(name1, name2, name3, s, r) \

I don't understand this patch, and I would need more information.  My
m680x0 book indicates that the original value is correct, since the
set of operands permitted for the tbl instructions are very limited.

   ***************
   *** 1825,1837 ****

     {"trapv",     one(0047166),   one(0177777), "", m68000up },

   ! {"tstb",      one(0045000),   one(0177700), ";b", m68020up | mcf5200 },
     {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
   ! {"tstw",      one(0045100),   one(0177700), "*w", m68020up | mcf5200 },
   ! {"tstw",      one(0045110),   one(0177700), "As", cpu32 },
     {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
   ! {"tstl",      one(0045200),   one(0177700), "*l", m68020up | mcf5200 },
   ! {"tstl",      one(0045210),   one(0177700), "As", cpu32 },
     {"tstl",      one(0045200),   one(0177700), "@l", m68000up },

     {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },
   --- 1825,1835 ----

     {"trapv",     one(0047166),   one(0177777), "", m68000up },

   ! {"tstb",      one(0045000),   one(0177700), ";b", m68020up |  
   mcf5200 | cpu32 },
     {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
   ! {"tstw",      one(0045100),   one(0177700), "*w", m68020up |  
   mcf5200 | cpu32 },
     {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
   ! {"tstl",      one(0045200),   one(0177700), "*l", m68020up |  
   mcf5200 | cpu32 },
     {"tstl",      one(0045200),   one(0177700), "@l", m68000up },

     {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },

I checked in a version of this patch.  Oddly, the original source does
not appear in my sources.  Thanks for sending it.

Ian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: binutils 2.8.1 cpu32 bug
  1997-09-24 10:42 ` Ian Lance Taylor
@ 1997-09-24 14:08   ` Joel Sherrill
  1997-09-24 15:42     ` Ian Lance Taylor
  0 siblings, 1 reply; 4+ messages in thread
From: Joel Sherrill @ 1997-09-24 14:08 UTC (permalink / raw)
  To: Ian Lance Taylor; +Cc: gas2

The user was on a 68360.  I have a manual if you don't.  Jus tlet me know
what to look up.  I do not know offhand what the actual bug being fixed
was.  Do you want me to ask them for a test case or example?

--joel

On Wed, 24 Sep 1997, Ian Lance Taylor wrote:

>    Date: Mon, 15 Sep 1997 14:05:26 -0500 (CDT)
>    From: Joel Sherrill <joel@OARcorp.com>
> 
>    Here is a fix I received from an RTEMS user.  This was in binutils 2.8.1
>    and I am not sure whether or not it has been fixed since.
> 
>    --joel
> 
>    =====================================================================
>    *** binutils-2.8.1/opcodes/m68k-opc.c   Wed Aug  6 09:47:31 1997
>    --- /usr/src/local/gnu/src/binutils-2.8.1.0.1/opcodes/m68k-opc.c      
>       Wed Jul 23 21:09:13 1997
>    ***************
>    *** 1760,1766 ****
> 
>      #define TBL1(name,signed,round,size)                                  \
>        {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
>    !      two(0177700,0107777), "`sD1", cpu32 },                           \
>        {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
> 	  two(0177770,0107770), "DsD3D1", cpu32 }
>      #define TBL(name1, name2, name3, s, r) \
>    --- 1760,1766 ----
> 
>      #define TBL1(name,signed,round,size)                                  \
>        {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400),   \
>    !      two(0177700,0107777), "@lD1", cpu32 },                           \
>        {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)),           \
> 	  two(0177770,0107770), "DsD3D1", cpu32 }
>      #define TBL(name1, name2, name3, s, r) \
> 
> I don't understand this patch, and I would need more information.  My
> m680x0 book indicates that the original value is correct, since the
> set of operands permitted for the tbl instructions are very limited.
> 
>    ***************
>    *** 1825,1837 ****
> 
>      {"trapv",     one(0047166),   one(0177777), "", m68000up },
> 
>    ! {"tstb",      one(0045000),   one(0177700), ";b", m68020up | mcf5200 },
>      {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
>    ! {"tstw",      one(0045100),   one(0177700), "*w", m68020up | mcf5200 },
>    ! {"tstw",      one(0045110),   one(0177700), "As", cpu32 },
>      {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
>    ! {"tstl",      one(0045200),   one(0177700), "*l", m68020up | mcf5200 },
>    ! {"tstl",      one(0045210),   one(0177700), "As", cpu32 },
>      {"tstl",      one(0045200),   one(0177700), "@l", m68000up },
> 
>      {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },
>    --- 1825,1835 ----
> 
>      {"trapv",     one(0047166),   one(0177777), "", m68000up },
> 
>    ! {"tstb",      one(0045000),   one(0177700), ";b", m68020up |  
>    mcf5200 | cpu32 },
>      {"tstb",      one(0045000),   one(0177700), "@b", m68000up },
>    ! {"tstw",      one(0045100),   one(0177700), "*w", m68020up |  
>    mcf5200 | cpu32 },
>      {"tstw",      one(0045100),   one(0177700), "@w", m68000up },
>    ! {"tstl",      one(0045200),   one(0177700), "*l", m68020up |  
>    mcf5200 | cpu32 },
>      {"tstl",      one(0045200),   one(0177700), "@l", m68000up },
> 
>      {"unlk",      one(0047130),   one(0177770), "As", m68000up | mcf5200 },
> 
> I checked in a version of this patch.  Oddly, the original source does
> not appear in my sources.  Thanks for sending it.
> 
> Ian
> 


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: binutils 2.8.1 cpu32 bug
  1997-09-24 14:08   ` Joel Sherrill
@ 1997-09-24 15:42     ` Ian Lance Taylor
  0 siblings, 0 replies; 4+ messages in thread
From: Ian Lance Taylor @ 1997-09-24 15:42 UTC (permalink / raw)
  To: joel; +Cc: gas2

   Date: Wed, 24 Sep 1997 16:08:10 -0500 (CDT)
   From: Joel Sherrill <joel@OARcorp.com>

   The user was on a 68360.  I have a manual if you don't.  Jus tlet me know
   what to look up.  I do not know offhand what the actual bug being fixed
   was.  Do you want me to ask them for a test case or example?

I do have a manual.  According to my reading of the manual, the
existing code is correct.  So I guess I want to know why this patch
should be made, since the current code looks right to me.  A test case
would be a good start.

Ian

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~1997-09-24 15:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-09-15 12:05 binutils 2.8.1 cpu32 bug Joel Sherrill
1997-09-24 10:42 ` Ian Lance Taylor
1997-09-24 14:08   ` Joel Sherrill
1997-09-24 15:42     ` Ian Lance Taylor

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).