search for: lang_eh_catch_all

Displaying 11 results from an estimated 11 matches for "lang_eh_catch_all".

2007 Dec 08
2
[LLVMdev] Darwin vs exceptions
...es > > not causes the unwinder to go into a loop. this is the bit I don't understand. Why does it go into a loop? How can the unwinder possibly know that the original code did not have a catch-all, since we tell it which catches there are and we say: there is a catch-all! > > - lang_eh_catch_all = return_null_tree; > > +/* lang_eh_catch_all = return_null_tree;*/ > Ok, cool :) Duncan, Anton, what do you guys think about this? This is wrong - it breaks the semantics of invoke and causes eh to not work properly in some cases (see my email to Dale). Ciao, Duncan.
2007 Dec 08
0
[LLVMdev] Darwin vs exceptions
...============================================ > --- cp/except.c (revision 44663) > +++ cp/except.c (working copy) > @@ -104,7 +104,7 @@ > lang_eh_runtime_type = build_eh_type_type; > lang_protect_cleanup_actions = &cp_protect_cleanup_actions; > /* LLVM local */ > - lang_eh_catch_all = return_null_tree; > +/* lang_eh_catch_all = return_null_tree;*/ > } > > /* Returns an expression to be executed if an unhandled exception is > > and that works well for me; i.e., the gcc tests that exercise > exceptions work as well with the > two patches above (on x8...
2007 Dec 08
0
[LLVMdev] Darwin vs exceptions
...the IP because the IP of the throw and Unwind_Resume call were different, but when caching the CFA they are the same, which confuses Unwind_Resume. (This is darwin's unwinder but I think the patch I quoted is the only relevant change to generic gcc code. Could be wrong.) >>> - lang_eh_catch_all = return_null_tree; >>> +/* lang_eh_catch_all = return_null_tree;*/ > >> Ok, cool :) Duncan, Anton, what do you guys think about this? > > This is wrong - it breaks the semantics of invoke and causes > eh to not work properly in some cases (see my email to Dale). Well,...
2007 Dec 08
4
[LLVMdev] Darwin vs exceptions
...except.c =================================================================== --- cp/except.c (revision 44663) +++ cp/except.c (working copy) @@ -104,7 +104,7 @@ lang_eh_runtime_type = build_eh_type_type; lang_protect_cleanup_actions = &cp_protect_cleanup_actions; /* LLVM local */ - lang_eh_catch_all = return_null_tree; +/* lang_eh_catch_all = return_null_tree;*/ } /* Returns an expression to be executed if an unhandled exception is and that works well for me; i.e., the gcc tests that exercise exceptions work as well with the two patches above (on x86) as they did before. Now I need s...
2007 Dec 09
1
[LLVMdev] Darwin vs exceptions
...Are you sure that this isn't simply a bug in where labels are placed etc, the frame info or the exception table setup etc? > (This is darwin's unwinder but I think the patch I quoted is the only > relevant change to generic gcc code. > Could be wrong.) > > >>> - lang_eh_catch_all = return_null_tree; > >>> +/* lang_eh_catch_all = return_null_tree;*/ > > > >> Ok, cool :) Duncan, Anton, what do you guys think about this? > > > > This is wrong - it breaks the semantics of invoke and causes > > eh to not work properly in some cases...
2007 Dec 10
0
[LLVMdev] Darwin vs exceptions
...ptions a lot. > I guess an easy but undesirable fallback position is to tell the > inliner not to inline anything that invokes Unwind_Resume. If you push a "cleanup" instead of a catch-all on Darwin, does everything work? This is exactly what you get if you apply your patch - lang_eh_catch_all = return_null_tree; +/* lang_eh_catch_all = return_null_tree;*/ Ciao, Duncan.
2010 May 24
0
[LLVMdev] linker errors when trying to link llvm-gcc
Hi Anatoly, > any ideas what library has these symbols > > lang_eh_catch_all > get_pointer_alignment > validate_arglist it sounds like you are trying to build a version of llvm-gcc without LLVM enabled. Did you specify --enable-llvm=path_to_llvm_build_directory when configuring llvm-gcc? These symbols are all defined in llvm-gcc itself, but only when ENABLE_LLVM is...
2007 Dec 10
3
[LLVMdev] Darwin vs exceptions
On Dec 9, 2007, at 1:01 PM, Duncan Sands wrote: > Hi Dale, > >> #include <cstdio> >> class A { >> public: >> A() {} >> ~A() {} >> }; >> void f() { >> A a; >> throw 5.0; >> } >> main() { >> try { >> f(); >> } catch(...) { printf("caught\n"); } >> } > > this example
2010 May 24
2
[LLVMdev] linker errors when trying to link llvm-gcc
any ideas what library has these symbols lang_eh_catch_all get_pointer_alignment validate_arglist i get these linker errors when trying to link llvm-gcc: make[1]: Entering directory `/home/anatolyy/qctp406/pakman/depot/users/anatolyy/proto/crosscompiler/llvm-gcc-4.2-2.7.source-objtree' make[2]: Entering directory `/home/anatolyy/qctp406/pakman/depot...
2010 May 25
2
[LLVMdev] linker errors when trying to link llvm-gcc
...vm-gcc-4.2-2.7.source/gcc/config/arm/lib1funcs.asm:1004: Error: backward ref to unknown label "8:" Thanks, Anatoly On Mon, May 24, 2010 at 12:52 PM, Duncan Sands <baldrick at free.fr> wrote: > Hi Anatoly, > >> any ideas what library has these symbols >> >> lang_eh_catch_all >> get_pointer_alignment >> validate_arglist > > it sounds like you are trying to build a version of llvm-gcc without LLVM > enabled.  Did you specify --enable-llvm=path_to_llvm_build_directory when > configuring llvm-gcc?  These symbols are all defined in llvm-gcc itself, &...
2007 Dec 10
3
[LLVMdev] Darwin vs exceptions
...easy but undesirable fallback position is to tell the >> inliner not to inline anything that invokes Unwind_Resume. > > If you push a "cleanup" instead of a catch-all on Darwin, does > everything work? This is exactly what you get if you apply your > patch > > - lang_eh_catch_all = return_null_tree; > +/* lang_eh_catch_all = return_null_tree;*/ No, things are much better than there were, but inlining functions that call Unwind_Resume still causes the problem we've been talking about. Disabling that as well makes everything work.