This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: g++ Bug? use of alloca in a function prevents exception handler walkback on ppc linux
- To: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>,Geoff Keating <geoffk at redhat dot com>
- Subject: Re: g++ Bug? use of alloca in a function prevents exception handler walkback on ppc linux
- From: Kevin B. Hendricks <kevin dot hendricks at sympatico dot ca>
- Date: Mon, 18 Dec 2000 09:30:47 -0500
- Cc: khendricks at ivey dot uwo dot ca,gcc at gcc dot gnu dot org,dje at watson dot ibm dot com
- References: <00121423310900.02039@enzo.bigblue.local> <4.3.2.7.2.20001218143529.026ccdc0@mail.lauterbach.com>
- Reply-To: khendricks at ivey dot uwo dot ca
Hi Franz,
> The code is nearly the same (I compared the assembly), I believe this was a
> temporary failure and not related to the bug you are referring to. What
> makes me wonder though is the code generated for "thrower" in Kevin's
> testcase, that looks bogus. It seems to me that the code is using an
> uninitialized and unallocated stackslot for aExc, which overlays (!) with
> the register save area, r31 in this example. The bug is already in the
> initial RTL dump, which would suggest that except.c and cp/except.c have a
> bug here.
>
> > > Anyway, Kevin is working with gcc-2.95.3 so I'll look into backporting
> > your
> > > fix, cause I don't have time to do gcc-2.97 RPM's before xmas.
> >
> >Sure. As a workaround, this is suitable for 2.95.3.
>
> As this bug turned out to be a different one than you thought (?), the
> solution for gcc-2.95.3 is really simple and related to the unofficial
> DWARF EH patch used on Linux/PPC. It turns out the patch missed to call
> dwarf2out_def_cfa() after the framepointer activating "mr 31,1". Fixing
> this lets the testcase succeed.
>
> Kevin, I'll upload new RPM's as soon as the build finished.
Great, I have a much more complex testcase (the actual bridges code in
openoffice) which actually works if I change from alloca to malloc based
versions. I will convert it back to alloca and test the new compiler.
Thanks!
Kevin
---
Kevin B. Hendricks, Associate Professor
Operations and Information Technology
Richard Ivey School of Business, UWO, London ON, CANADA
(519) 661-3874