c++ code executes very slowly - sjlj EH to blame?

Larry Hall lh-no-personal-replies-please@cygwin.com
Thu Dec 16 04:22:00 GMT 2004

At 10:17 PM 12/15/2004, you wrote:
>Hi Larry,
>Thanks for your reply.
>About the messages you referred me to:
>His situation is similar in terms of symptoms, but my
>test program (that throws an exception and tries to
>catch it) doesn't have any callbacks.

True but the way I read that conversation was that DWARF2
EH worked if callbacks weren't used or would work with 
callbacks so long as -fexceptions was used.  Maybe I read
that incorrectly though.

>This message seems to be talking about DWARF2 debug
>output.  Or does -gdwarf-2 have any effect on EH?

As you can see, I didn't do *any* weeding of results. ;-)

>My goal is to build gcc/g++ that use Dwarf2 EH.  A
>compiler with working EH will be able to run my test
>program without aborting.  So far I have built several
>versions of gcc, all of which have the abort() EH,
>which is equivalent to having _no_ EH in practical
>Maybe Danny Smith has some thoughts about this, since
>he has apparently been at least partially successful
>in getting DWARF2 EH to work on cygwin.

Yes, I expect he'll chime in.

>Another question for anyone at all: any ideas why sjlj
>is so crap-tastically slow on cygwin?  I can't believe
>that sjlj EH has nearly such a huge hit on other
>targets.  If sjlj it is the sole perpetrator of the
>slowdown, then it is doing a very very effective job
>of slowing things down.

You might want to check out the gcc list too.  There are
apparently issues with sjlj that transcend Cygwin and Windows
targets.  Perhaps crap-tastically poor performance is one of
those things as well. ;-)

Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
838 Washington Street                   (508) 893-9889 - FAX
Holliston, MA 01746                     

Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

More information about the Cygwin mailing list