This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libgcj/50057] [4.7 regression] misalignment of java_exception_header resulted in throwable to be null
- From: "jojelino at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 18 Jan 2012 06:20:40 +0000
- Subject: [Bug libgcj/50057] [4.7 regression] misalignment of java_exception_header resulted in throwable to be null
- Auto-submitted: auto-generated
- References: <bug-50057-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50057
gee <jojelino at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[4.7 regression] SIGSEGV in |[4.7 regression]
|natObject.cc:58 |misalignment of
| |java_exception_header
| |resulted in throwable to be
| |null
Severity|normal |major
--- Comment #3 from gee <jojelino at gmail dot com> 2012-01-18 06:20:40 UTC ---
in libjava/exception.cc
/* The object being thrown. Compiled code expects this to be immediately
before the generic exception header. Which is complicated by the fact
that _Unwind_Exception is ((aligned)). */
Starting program: /tmp/gcc/i686-pc-mingw32/libjava/testsuite/.libs/PR218
[New Thread 6064.0x1e4c]
Breakpoint 13, _Jv_Throw (value=0xa9ba08) at ../.././libjava/exception.cc:118
118 _Unwind_RaiseException (&xh->unwindHeader);
(gdb) p ((int)&xh->unwindHeader-(int)&xh->value)
$19 = 0xc
It seems that padding was unsuccessful.
following is version info.
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/i686-pc-cygwin/4.7.0/lto-wrapper.exe
Target: i686-pc-cygwin
Configured with: ./configure --config-cache --prefix=/usr
--disable-win32-registry --enable-threads=win32
--enable-languages=c,c++,lto,fortran --with-win32-nlsapi=unicode --enable-tls
--disable-bootstrap --enable-shared --disable-sjlj-exceptions --enable-gomp
--enable-cloog-backend=isl LTLDFLAGS=-no-undefined
lt_cv_deplibs_check_method=pass_all : (reconfigured) ./configure --config-cache
--prefix=/usr --disable-win32-registry --enable-threads=win32
--enable-languages=c,c++,lto,fortran --with-win32-nlsapi=unicode --enable-tls
--disable-bootstrap --enable-shared --disable-sjlj-exceptions --enable-gomp
--enable-cloog-backend=isl LTLDFLAGS=-no-undefined
lt_cv_deplibs_check_method=pass_all
Thread model: win32
gcc version 4.7.0 20120114 (experimental) (GCC)