[patch] Fix oddity in personality routine
Jack Howarth
howarth@bromo.med.uc.edu
Mon Nov 16 14:22:00 GMT 2009
On Sun, Nov 15, 2009 at 11:01:22PM +0000, Bryce McKinlay wrote:
> On Fri, Nov 13, 2009@7:17 PM, Jack Howarth <howarth@bromo.med.uc.edu> wrote:
>
> >> Index: exception.cc
> >> ===================================================================
> >> --- exception.cc (revision 154059)
> >> +++ exception.cc (working copy)
> >> @@ -328,7 +328,7 @@ PERSONALITY_FUNCTION (int version,
> >> #ifdef HAVE_GETIPINFO
> >> ip = _Unwind_GetIPInfo (context, &ip_before_insn);
> >> #else
> >> - ip = _Unwind_GetIP (context) - 1;
> >> + ip = _Unwind_GetIP (context);
> >> #endif
> >> if (! ip_before_insn)
> >> --ip;
> >
> >
> > Shouldn't this fix also get backported to gcc-4_4-branch and
> > gcc-4_3-branch as well? They both have r128098.
>
> Jack, can you confirm that this actually fixes the problem you are
> seeing on Darwin? r128098 dates from 2007 - it's hard to believe that
> nobody has had a working GCJ on Darwin since then!
>
> Bryce
Bryce
Unfortunately, r154159 didn't eliminate the crashes on x86_64-apple-darwin9
or x86_64-apple-darwin10 when compiling java code with gcj on either a Core2Duo
or Xeon. Oddly...
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41991#c3
fixes the issue for Andreas Tobler. I am wondering if this is really just
tending the problem to go latent under certain conditions though. Also, the
Makefile.in and Makefile.am still seem a bit odd to me...
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41991#c10
Using variables before they are actually assigned in Makefiles can't be
right. I wonder if the same issues exist elsewhere in the libjava build
infrastructure.
Jack
ps I still ought to test the patch in comment 10 under x86_64-apple-darwin9
(as I only tested with x86_64-apple-darwin10). The darwin10 build has
the additional complexity that the FSF libgcc isn't ever really used since
Apple has subsumed libgcc into libSystem and favors those symbols over
any in libgcc. So the unwinder in libSystem is always used under darwin10
regardless of which libgcc is linked in.
More information about the Java
mailing list