search for: _unwind_setgr

Displaying 9 results from an estimated 9 matches for "_unwind_setgr".

2009 May 19
5
[LLVMdev] Getting exceptions to work?
...n without crashing. However, what I don't yet understand is how to get the result from the personality function back to the landing pad. For example, I could use the function _Unwind_SetIP to tell it where to jump to, except that I can't take the address of a label in LLVM. I could call _Unwind_SetGR to set an index and then have a switch in the landing pad that uses that index - except that I would have no way to determine which register is safe to set in a platform-independent way. I could even just have the personality function do nothing at all, and have the landing pad do all the work...
2009 Sep 23
2
[LLVMdev] [llvm-commits] [PATCH] BlocksRuntime updates for Linux
...object lib/CMakeFiles/CompilerRT-Common.dir/gcc_personality_v0.c.o /export/home/edward/lab/llvm/build/compiler-rt/lib/gcc_personality_v0.c:232:36: warning: implicit declaration of function '__builtin_eh_return_data_regno' is invalid in C99 [-Wimplicit-function-declaration] _Unwind_SetGR(context, __builtin_eh_return_data_regno(0), ^ 1 diagnostic generated. I committed a fix for the other warnings and a fix for each of the #endif, I did not think they where very 'clear/readable' however they are now. Thanks for your work on the CMake syst...
2020 Aug 15
5
Supporting libunwind on Windows 10 (32bit; 64bit) for MSVC and Clang
...ind_Context *context, int index) { ^ C:/Users/clang/libunwind/include\unwind.h:221:18: note: previous declaration is here extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index); ^ C:/Users/clang/libunwind/src/UnwindLevel1.c:485:24: warning: redeclaration of '_Unwind_SetGR' should not add 'dllexport' attribute [-Wdll-attribute-on-redeclaration] _LIBUNWIND_EXPORT void _Unwind_SetGR(struct _Unwind_Context *context, int index, ^ C:/Users/clang/libunwind/include\unwind.h:222:13: note: previous declaration is here extern void _Unwind_Set...
2009 May 18
0
[LLVMdev] Getting exceptions to work?
Hi Talin, You're not using the llvm intrinsics for exception handling, so your code won't work. Using _Unwind_RaiseException should be OK, but your main function must at least use llvm.eh.exception, llvm.eh.selector.i32/64 and probably __cxa_begin_catch and __cxa_end_catch. Nicolas Talin wrote: > I've been struggling for several days, trying to get native exceptions > to
2009 May 19
0
[LLVMdev] Getting exceptions to work?
...However, what I don't > yet understand is how to get the result from the personality function > back to the landing pad. For example, I could use the function > _Unwind_SetIP to tell it where to jump to, except that I can't take the > address of a label in LLVM. I could call _Unwind_SetGR to set an index > and then have a switch in the landing pad that uses that index - except > that I would have no way to determine which register is safe to set in a > platform-independent way. I could even just have the personality > function do nothing at all, and have the landing...
2009 Sep 23
0
[LLVMdev] [llvm-commits] [PATCH] BlocksRuntime updates for Linux
...RT-Common.dir/gcc_personality_v0.c.o > /export/home/edward/lab/llvm/build/compiler-rt/lib/ > gcc_personality_v0.c:232:36: > warning: implicit declaration of function > '__builtin_eh_return_data_regno' is invalid in C99 > [-Wimplicit-function-declaration] > _Unwind_SetGR(context, __builtin_eh_return_data_regno(0), > ^ > 1 diagnostic generated. > > I committed a fix for the other warnings and a fix for each of the > #endif, I did not think they where very 'clear/readable' however they > are now. > > T...
2009 May 18
4
[LLVMdev] Getting exceptions to work?
I've been struggling for several days, trying to get native exceptions to work in my code. I managed to boil down the IR to the simplest possible example that I can think of. If anyone on this list can tell me what changes I need to make to the following code to get it to work (i.e. return 0 instead of a bus error), it would make my life immensely better. ; ModuleID =
2009 Sep 23
0
[LLVMdev] [llvm-commits] [PATCH] BlocksRuntime updates for Linux
Seems pretty clear cut to me. #if defined(HAVE_OSATOMIC_COMPARE_AND_SWAP_INT) && defined (HAVE_OSATOMIC_COMPARE_AND_SWAP_LONG) ... #elif defined(__WIN32__) ... #elif defined(HAVE_SYNC_BOOL_COMPARE_AND_SWAP_INT) && defined (HAVE_SYNC_BOOL_COMPARE_AND_SWAP_LONG) ... #else #error unknown atomic compare-and-swap primitive #endif The problem isn't mismatched #if/#endif. The
2009 Sep 23
2
[LLVMdev] [llvm-commits] [PATCH] BlocksRuntime updates for Linux
No, As it worked fine before. I can't see the #if that goes with +#elif defined(__WIN32__) as you removed -#if TARGET_OS_MAC. Please go over your #if / #endif blocks and trail the #endif with a comment. I am willing to bet there is a problem there. Thanks for your time, Edward. 2009/9/23 Shantonu Sen <ssen at apple.com>: > Sounds like your system compiler doesn't support