[Bug other/56076] New: [4.8 regression] Several 64-bit libgo tests FAIL in read_line_header
ro at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jan 22 12:38:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56076
Bug #: 56076
Summary: [4.8 regression] Several 64-bit libgo tests FAIL in
read_line_header
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: other
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: ro@gcc.gnu.org
CC: iant@google.com
Host: sparc-sun-solaris2*
Target: sparc-sun-solaris2*
Build: sparc-sun-solaris2*
For some time (probably since 20121023), several 64-bit libgo tests FAIL on
Solaris/SPARC:
FAIL: go.go-torture/execute/array-2.go execution, -O0
FAIL: go.go-torture/execute/array-2.go execution, -O1
FAIL: go.go-torture/execute/array-2.go execution, -O2
FAIL: go.go-torture/execute/array-2.go execution, -O2 -fomit-frame-pointer
-finline-functions
FAIL: go.go-torture/execute/array-2.go execution, -O2 -fomit-frame-pointer
-finline-functions -funroll-loops
FAIL: go.go-torture/execute/array-2.go execution, -O2 -fbounds-check
FAIL: go.go-torture/execute/array-2.go execution, -O3 -g
FAIL: go.go-torture/execute/array-2.go execution, -Os
and many more, cf. testsuite results for the full list.
They seem to have a common cause:
p=0xffffffff7d400000
throw: runtime_lfstackpush: invalid pointer
goroutine 1 [running]:
panic: invalid memory address or nil pointer dereference
panic during panic
FAIL: go.go-torture/execute/array-2.go execution, -O0
[Thread debugging using libthread_db enabled]
[New Thread 1 (LWP 1)]
[New LWP 2 ]
p=0xffffffff7dd00000
throw: runtime_lfstackpush: invalid pointer
goroutine 1 [running]:
[New Thread 2 (LWP 2)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 2 (LWP 2)]
0xffffffff7ee5cb90 in strlen () from /lib/64/libc.so.1
(gdb) where
#0 0xffffffff7ee5cb90 in strlen () from /lib/64/libc.so.1
#1 0xfffffffb9fff9690 in read_line_header (u=<optimized out>,
hdr=0xc200202da0, line_buf=0xc200202de0, is_dwarf64=<optimized out>,
state=0xffffffff7e400000)
at /vol/gcc/src/hg/trunk/local/libbacktrace/dwarf.c:1666
#2 read_line_info (lines_count=<synthetic pointer>,
lines=<synthetic pointer>, hdr=0xc200202da0, u=0xffffffff7a900858,
data=0xc200203098, error_callback=0xfffffffb9fd99d34 <error_callback>,
ddata=0xffffffff74101ea8, state=0xffffffff7e400000)
at /vol/gcc/src/hg/trunk/local/libbacktrace/dwarf.c:1947
#3 dwarf_lookup_pc (state=state@entry=0xffffffff7e400000,
ddata=ddata@entry=0xffffffff74101ea8, pc=pc@entry=18446744054916594527,
callback=callback@entry=0xfffffffb9fd99cbc <callback>,
error_callback=error_callback@entry=0xfffffffb9fd99d34 <error_callback>,
data=data@entry=0xc200203098, found=0xc200202f2c)
at /vol/gcc/src/hg/trunk/local/libbacktrace/dwarf.c:2650
#4 0xfffffffb9fff9f4c in dwarf_fileline (state=0xffffffff7e400000,
pc=18446744054916594527, callback=0xfffffffb9fd99cbc <callback>,
error_callback=0xfffffffb9fd99d34 <error_callback>, data=0xc200203098)
at /vol/gcc/src/hg/trunk/local/libbacktrace/dwarf.c:2783
#5 0xfffffffb9fffae08 in backtrace_pcinfo (state=0xffffffff7e400000,
pc=pc@entry=18446744054916594527, callback=0xfffffffb9fd99cbc <callback>,
error_callback=0xfffffffb9fd99d34 <error_callback>,
data=data@entry=0xc200203098)
at /vol/gcc/src/hg/trunk/local/libbacktrace/fileline.c:190
#6 0xfffffffb9fd99e50 in __go_file_line (pc=18446744054916594527,
fn=fn@entry=0xc200203180, file=file@entry=0xc200203190,
line=line@entry=0xc200203178)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/go-caller.c:118
#7 0xfffffffb9fd9d688 in runtime_printtrace (pcbuf=pcbuf@entry=0xc200203250,
c=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/go-traceback.c:34
#8 0xfffffffb9fd9d70c in runtime_traceback ()
at /vol/gcc/src/hg/trunk/local/libgo/runtime/go-traceback.c:20
#9 0xfffffffb9fda6b60 in runtime_dopanic (unused=unused@entry=0)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/panic.c:64
#10 0xfffffffb9fda6bd0 in runtime_throw (
s=0xfffffffba0002ec0 "runtime_lfstackpush: invalid pointer")
at /vol/gcc/src/hg/trunk/local/libgo/runtime/panic.c:91
#11 0xfffffffb9fda1a14 in runtime.lfstackpush (
head=0xfffffffba05a7ff8 <work+8>, node=0xffffffff7dd00000)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/lfstack.c:26
#12 0xfffffffb9fda3b60 in putempty (b=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:689
#13 scanblock (wbuf=0xffffffff7dd00000, wp=0xffffffff7dd00018, nobj=0,
keepworking=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:488
#14 0xfffffffb9fda71e4 in runtime.parfordo (desc=0xc20041d000)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/parfor.c:108
#15 0xfffffffb9fda42c8 in gc (args=args@entry=0xc200203c1c)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1382
#16 0xfffffffb9fda4b78 in runtime_gc (force=force@entry=0)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1321
#17 0xfffffffb9fdaaf34 in runtime_mallocgc (size=<optimized out>,
flag=<optimized out>, dogc=1, zeroed=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/malloc.goc:124
#18 0x00000001000014c4 in main.main ()
at
/vol/gcc/src/hg/trunk/local/gcc/testsuite/go.go-torture/execute/array-2.go:12
I suspect this is a strlen(NULL) call. This is a regression from 4.7.
Rainer
More information about the Gcc-bugs
mailing list