freenode/#clasp - IRC Chatlog
Search
18:15:11
drmeister
I built an Ubuntu 18.04 server machine and compiled ctak and linked it with libcxx and libcxxabi
18:18:07
drmeister
I'm going to add some options to ctak so I can run the ctak example for lots of cycles with lots of threads and watch ptrace.
18:22:24
drmeister
Bike: here’s a crazy idea. What if we set up longjmp and when we want to unwind we check if there are any c++ personality functions between the start and stop frames of the unwind. If there are none we use longjmp. Would that buy is anything? I know c-w-v-b will block this a lot right now.
18:35:54
Bike
i don't think i really understand how setjmp/longjmp fit into things. there's a whole part of the itanium ABI for them but they're defined to allow destructors to not run...
18:40:14
Bike
also the whole problem is when we unwind we do often have intervening cleanups, like bound specials.
19:08:31
drmeister
I think setjmp/longjmp would only fit into things if there were no intervening cleanups between the frame we start at and the one we end up at.
19:10:03
drmeister
We would have a runtime cost for say the BLOCK to use setjmp and then the RETURN-FROM would to a longjmp but only if we knew there were no intervening cleanups.
23:13:16
drmeister
I just compiled gcc for yuks and the ATOMIC_FDE_FAST_PATH path is active in this gcc.
23:43:30
Bike
mm... that's good. "you have to custom compile libgcc" would be a pretty absurd build instruction even by our standards
5:31:35
drmeister
::notify Bike I tried compiling gcc and building ctak with it - it doesn't appear to change things at all. Print statements in Unwind_Find_FDE had no effect (sigh).
5:47:43
drmeister
::notify Bike Then I build llvm with libcxx/libcxxabi/libunwind - I linked with that - again - no improvement. Very frustrating. I posted a question to the libcxx mailing list. I think we really need to get rid of c-w-v-b.