diff options
| author | Logan Chien <tzuhsiang.chien@gmail.com> | 2015-07-19 15:23:10 +0000 |
|---|---|---|
| committer | Logan Chien <tzuhsiang.chien@gmail.com> | 2015-07-19 15:23:10 +0000 |
| commit | 5191fe9509fab84b7681c7ef6f4eceef877d5339 (patch) | |
| tree | 80bafbd2bc8a07ea644c46f9121245d5f9fe38ea /libunwind/include | |
| parent | 611f614ee18eb31bf6ba2d0dc61aeb9f0d510bf7 (diff) | |
| download | bcm5719-llvm-5191fe9509fab84b7681c7ef6f4eceef877d5339.tar.gz bcm5719-llvm-5191fe9509fab84b7681c7ef6f4eceef877d5339.zip | |
libunwind: Introduce __libunwind_config.h.
Introduce __libunwind_config.h to avoid cross repository circular
dependency with libcxxabi.
llvm-svn: 242642
Diffstat (limited to 'libunwind/include')
| -rw-r--r-- | libunwind/include/__libunwind_config.h | 20 | ||||
| -rw-r--r-- | libunwind/include/libunwind.h | 6 | ||||
| -rw-r--r-- | libunwind/include/unwind.h | 10 |
3 files changed, 28 insertions, 8 deletions
diff --git a/libunwind/include/__libunwind_config.h b/libunwind/include/__libunwind_config.h new file mode 100644 index 00000000000..63393d3058e --- /dev/null +++ b/libunwind/include/__libunwind_config.h @@ -0,0 +1,20 @@ +//===------------------------- __libunwind_config.h -----------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is dual licensed under the MIT and the University of Illinois Open +// Source Licenses. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef ____LIBUNWIND_CONFIG_H__ +#define ____LIBUNWIND_CONFIG_H__ + +#if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \ + !defined(__ARM_DWARF_EH__) +#define _LIBUNWIND_ARM_EHABI 1 +#else +#define _LIBUNWIND_ARM_EHABI 0 +#endif + +#endif // ____LIBUNWIND_CONFIG_H__ diff --git a/libunwind/include/libunwind.h b/libunwind/include/libunwind.h index e2396e4ab7c..4a75a7ba175 100644 --- a/libunwind/include/libunwind.h +++ b/libunwind/include/libunwind.h @@ -14,11 +14,11 @@ #ifndef __LIBUNWIND__ #define __LIBUNWIND__ +#include <__libunwind_config.h> + #include <stdint.h> #include <stddef.h> -#include <__cxxabi_config.h> - #ifdef __APPLE__ #include <Availability.h> #ifdef __arm__ @@ -58,7 +58,7 @@ typedef struct unw_cursor_t unw_cursor_t; typedef struct unw_addr_space *unw_addr_space_t; typedef int unw_regnum_t; -#if LIBCXXABI_ARM_EHABI +#if _LIBUNWIND_ARM_EHABI typedef uint32_t unw_word_t; typedef uint64_t unw_fpreg_t; #else diff --git a/libunwind/include/unwind.h b/libunwind/include/unwind.h index 86001bbb563..31fb871076c 100644 --- a/libunwind/include/unwind.h +++ b/libunwind/include/unwind.h @@ -14,6 +14,8 @@ #ifndef __UNWIND_H__ #define __UNWIND_H__ +#include <__libunwind_config.h> + #include <stdint.h> #include <stddef.h> @@ -23,8 +25,6 @@ #define LIBUNWIND_UNAVAIL #endif -#include <__cxxabi_config.h> - typedef enum { _URC_NO_REASON = 0, _URC_OK = 0, @@ -36,7 +36,7 @@ typedef enum { _URC_HANDLER_FOUND = 6, _URC_INSTALL_CONTEXT = 7, _URC_CONTINUE_UNWIND = 8, -#if LIBCXXABI_ARM_EHABI +#if _LIBUNWIND_ARM_EHABI _URC_FAILURE = 9 #endif } _Unwind_Reason_Code; @@ -51,7 +51,7 @@ typedef enum { typedef struct _Unwind_Context _Unwind_Context; // opaque -#if LIBCXXABI_ARM_EHABI +#if _LIBUNWIND_ARM_EHABI typedef uint32_t _Unwind_State; static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME = 0; @@ -164,7 +164,7 @@ extern void _Unwind_Resume(_Unwind_Exception *exception_object); #endif extern void _Unwind_DeleteException(_Unwind_Exception *exception_object); -#if LIBCXXABI_ARM_EHABI +#if _LIBUNWIND_ARM_EHABI typedef enum { _UVRSC_CORE = 0, /* integer register */ _UVRSC_VFP = 1, /* vfp */ |

