[PATCH] D15781: [compiler-rt] Add support for ARM EHABI to gcc_personality_v0.

Logan Chien via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 4 07:18:39 PST 2016


logan added a comment.

Hi @timonvo,

I have tested your patch.  It can't be compiled with `clang` because several types and defines are missing from `<clang>/lib/Headers/unwind.h`.  Thus, submitting this patch will break all self-bootstrapping build.

Please add following symbols to `<clang>/lib/Headers/unwind.h` in an independent commit beforehand:

  --- a/lib/Headers/unwind.h
  +++ b/lib/Headers/unwind.h
  @@ -79,6 +79,7 @@ struct _Unwind_Context;
   struct _Unwind_Exception;
   typedef enum {
     _URC_NO_REASON = 0,
  +  _URC_OK = 0,
     _URC_FOREIGN_EXCEPTION_CAUGHT = 1,
   
     _URC_FATAL_PHASE2_ERROR = 2,
  @@ -88,7 +89,8 @@ typedef enum {
     _URC_END_OF_STACK = 5,
     _URC_HANDLER_FOUND = 6,
     _URC_INSTALL_CONTEXT = 7,
  -  _URC_CONTINUE_UNWIND = 8
  +  _URC_CONTINUE_UNWIND = 8,
  +  _URC_FAILURE = 9
   } _Unwind_Reason_Code;
   
   typedef enum {
  @@ -150,6 +152,13 @@ typedef enum {
     _UVRSR_FAILED = 2
   } _Unwind_VRS_Result;
   
  +typedef uint32_t _Unwind_State;
  +#define _US_VIRTUAL_UNWIND_FRAME  ((_Unwind_State)0)
  +#define _US_UNWIND_FRAME_STARTING ((_Unwind_State)1)
  +#define _US_UNWIND_FRAME_RESUME   ((_Unwind_State)2)
  +#define _US_ACTION_MASK           ((_Unwind_State)3)
  +#define _US_FORCE_UNWIND          ((_Unwind_State)8)
  +
   _Unwind_VRS_Result _Unwind_VRS_Get(struct _Unwind_Context *__context,


http://reviews.llvm.org/D15781





More information about the llvm-commits mailing list