This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug go/59432] New: [4.9 regression] sync/atomic FAILs on Solaris/x86
- From: "ro at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 09 Dec 2013 15:38:50 +0000
- Subject: [Bug go/59432] New: [4.9 regression] sync/atomic FAILs on Solaris/x86
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59432
Bug ID: 59432
Summary: [4.9 regression] sync/atomic FAILs on Solaris/x86
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: go
Assignee: ian at airs dot com
Reporter: ro at gcc dot gnu.org
Host: i386-pc-solaris2.*
Target: i386-pc-solaris2.*
Build: i386-pc-solaris2.*
The sync/atomic test recently started to FAIL on Solaris/x86:
Abort
goroutine 1 [chan receive]:
main.main
/var/gcc/gcc-4.9.0-20131206/10-gcc/i386-pc-solaris2.10/libgo/gotest22695
/test/_testmain.go:67
FAIL: sync/atomic
The Abort happens in the TestNilDeref test:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 3 (LWP 3)]
0xfeb32ddc in sync_atomic.CompareAndSwapInt32 (val=val@entry=0x0,
old=old@entry=0, new=new@entry=0)
at /vol/gcc/src/hg/trunk/solaris/libgo/go/sync/atomic/atomic.c:78
78 return __sync_bool_compare_and_swap (val, old, new);
(gdb) where
#0 0xfeb32ddc in sync_atomic.CompareAndSwapInt32 (val=val@entry=0x0,
old=old@entry=0, new=new@entry=0)
at /vol/gcc/src/hg/trunk/solaris/libgo/go/sync/atomic/atomic.c:78
#1 0x0805e902 in atomic_test.$nested16 () at atomic_test.go:1469
#2 0x0805edac in atomic_test.$nested45 () at atomic_test.go:1505
#3 0x0805e8d1 in sync_atomic_test.TestNilDeref (t=0xde625180)
at atomic_test.go:1500
#4 0xfe976e4a in testing.tRunner (test=<optimized out>,
t.param=<optimized out>)
at /vol/gcc/src/hg/trunk/solaris/libgo/go/testing/testing.go:391
#5 testing.$thunk13 (__go_thunk_parameter=0xde200688)
at /vol/gcc/src/hg/trunk/solaris/libgo/go/testing/testing.go:471
#6 0xfe8d005b in kickoff ()
at /vol/gcc/src/hg/trunk/solaris/libgo/runtime/proc.c:229
#7 0xfe4a5ba2 in makecontext () from /lib/libc.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
1: x/i $pc
=> 0xfeb32ddc <sync_atomic.CompareAndSwapInt32+12>:
lock cmpxchg %ecx,(%edx)
(gdb) p $ecx
$1 = 0
(gdb) p $edx
$2 = 0
Rainer