This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: BUG? -fomit-frame-pointer and exceptions or setjmp/longjmp


On Fri, 14 Jun 2002, Denis Zaitsev said:
> On Mon, Jun 10, 2002 at 09:48:28PM +0100, Nix wrote:
>> ...
>> As the trace shows, this crash occurs during unwinding, the presence or
>> absence of a catch is irrelevant. I'm rather wondering why we're hitting
>> MD_FALLBACK_FRAME_STATE_FOR at all: perhaps there's a problem in FDE
>> generation or something.
> 
> Exact, uw_update_context_1 calculates bad context->cfa, if it works
> for a function with the frame pointer omited.  Now I'm looking what
> follows...

Ah, so it was `working' beforehand only because the fallback function
was recovering from the FDE unwinder's[1] errors?

Why is there a fallback function at all? It doesn't work when fairly
common switches are used, so its usefulness is limited, at best (bit of
a shame the if-of-opcodes hack in the i386 variant is choosing to diff
against the frame pointer, but there's not much else to show where a
function starts, I guess...)

[1] or the FDE frame-location emitter, or something like that

-- 
`What happened?'
                 `Nick shipped buggy code!'
                                             `Oh, no dinner for him...'


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]