gcc-dw2? or fast sjlj-exceptions EH
Wed Sep 12 02:30:00 GMT 2007
Eric Blake <firstname.lastname@example.org> wrote:
>I think you are misunderstanding a fundamental concept. sjlj exception
>handling is inherently slower than stack-tracing exception handling,
>because it must assume the worst and store the entire stack state (the
>'sj' or setjump) prior to any call site where an exception might occur,
>whether or not an exception actually happens (the 'lj' or longjump part).
> Dwarf error handling, on the other hand, is a form of stack-tracing,
>where there is NO penalty UNLESS there was an exception. Exception
>handling is slower, because it must crawl backwards through the stack to
>find all catch points with handlers to run, but more efficient when there
>is no exception because you don't waste time saving state that never gets
>In other words, the ONLY way to speed up octave is to avoid sjlj
>exceptions. And there are two ways to do that - either switch to
>stack-based exceptions (such as dwarf), or avoid exceptions to begin with.
> The octave maintainer has already expressed a reluctance to disable
>exceptions, and the current gcc for cygwin, 3.4.4, doesn't have a way to
>use anything other than sjlj, so you will just have to wait.
Dear Eric Blake
I really appreciate for your comprehensible reply.
I'll wait for a while.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
More information about the Cygwin