This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: -fomit-frame-pointer and exceptions or setjmp/longjmp
- From: Richard Henderson <rth at redhat dot com>
- To: Denis Zaitsev <zzz at cd-club dot ru>
- Cc: Nix <nix at esperi dot demon dot co dot uk>, gcc at gcc dot gnu dot org
- Date: Tue, 2 Jul 2002 16:45:55 -0700
- Subject: Re: PATCH: -fomit-frame-pointer and exceptions or setjmp/longjmp
- References: <20020603032930.A23158@natasha.zzz.zzz> <20020602151141.A13006@redhat.com> <87fzzuc12b.fsf@amaterasu.srvr.nix> <20020614052419.A6289@natasha.zzz.zzz> <87it4l8z43.fsf@amaterasu.srvr.nix> <20020702050849.A13730@natasha.zzz.zzz>
On Tue, Jul 02, 2002 at 05:08:49AM +0600, Denis Zaitsev wrote:
> The place, where the call frame info goes astray, is loading of the
> PIC register. It consists of a call for a "just after the call" point
> and then pop pc's value there. The call must be considered just as it
> would be push(pc), but instead it asumed to be a usual call, which
> leaves the stack pointer the same after return. And it is an error.
While this patch may or may not be correct, it is definitely
the only problem. See PR 6678 for an example that does not
require -fpic at all.
In any case, I won't apply this. I'd rather see the POP insn
merged into the prologue_get_pc pattern.
r~