This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug go/78980] New: runtime/internal/atomic FAILs on 32-bit SPARC


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78980

            Bug ID: 78980
           Summary: runtime/internal/atomic FAILs on 32-bit SPARC
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: go
          Assignee: ian at airs dot com
          Reporter: ro at gcc dot gnu.org
                CC: cmang at google dot com
  Target Milestone: ---
              Host: sparc*-sun-solaris2.*
            Target: sparc*-sun-solaris2.*
             Build: sparc*-sun-solaris2.*

Between 20160909 and 20160912, there occured a new libgo testsuite failure on
32-bit (only) Solaris/SPARC:

FAIL: runtime/internal/atomic

--- FAIL: TestXadduintptrOnUint64 (0.01s)
        atomic_test.go:65: xadduintptr should increase lower-order bits, want
100, got 429496729600
FAIL
FAIL: runtime/internal/atomic

go/runtime/internal/atomic/atomic_test.go has

// Tests that xadduintptr correctly updates 64-bit values. The place where
// we actually do so is mstats.go, functions mSysStat{Inc,Dec}.
func TestXadduintptrOnUint64(t *testing.T) {
        /*      if runtime.BigEndian != 0 {
                // On big endian architectures, we never use xadduintptr to
update
                // 64-bit values and hence we skip the test.  (Note that
functions
                // mSysStat{Inc,Dec} in mstats.go have explicit checks for
                // big-endianness.)
                return
        }*/

but it's commented (and obviously isn't an issue on 64-bit SPARC).

  Rainer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]