libstdc++/5198: 3.0.3 linux x m68k build fail: invalid opcodes in c++locale.cc

Aaron J. Grier aaron@frye.com
Fri Jan 4 15:36:00 GMT 2002


The following reply was made to PR libstdc++/5198; it has been noted by GNATS.

From: "Aaron J. Grier" <aaron@frye.com>
To: Craig Rodrigues <rodrigc@mediaone.net>
Cc: Don Lindsay <lindsayd@cisco.com>, rodrigc@gcc.gnu.org,
        gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Subject: Re: libstdc++/5198: 3.0.3 linux x m68k build fail: invalid opcodes in c++locale.cc
Date: Fri, 4 Jan 2002 15:25:14 -0800

 On Fri, Jan 04, 2002 at 05:43:39PM -0500, Craig Rodrigues wrote:
 > On Fri, Jan 04, 2002 at 02:34:11PM -0800, Aaron J. Grier wrote:
 > > the fault is with libstdc++-v3, specifically
 > > 
 > > libstdc++-v3/config/cpu/m68k/bits/atomicity.h
 > > 
 > > which includes "cas" as an inlined assembly instruction in a supposedly
 > > generic m68k include file.
 > > 
 > > I've been able to identify at least three cases that need to be covered
 > > in atomicity.h:
 > > 
 > > 68020/30/40: use current "cas"
 > > mcpu32 and v4 coldfire: "tas" on a static local variable
 > > 68000/010, v2/3 coldfire: disable interrupts
 > > 
 > > I'm preparing a quick-and-dirty patch for people to go over, but if
 > > someone beats me to it, more power to them.  :)
 > 
 > If you can submit a good patch for atomicity.h, please do.
 > You can look at the proposed patch from Peter Barada here:
 > http://gcc.gnu.org/ml/gcc/2002-01/msg00328.html
 > 
 > That might give you an idea of what macros to use.
 
 except as Nathan Myers pointed out in a followup (which apparently
 hasn't made it to the web archive yet), Peter's solution won't work
 since you could be interrupted by another thread between the add and cmp
 instructions.
 
 -- 
   Aaron J. Grier  |   Frye Electronics, Tigard, OR   |  aaron@frye.com
      "In a few thousand years people will be scratching their heads
        wondering how on earth the first computer was invented and
           bootstrapped without a prior computer to do it with."
                     --  Chris Malcolm, on comp.arch



More information about the Gcc-prs mailing list