[PATCH] libc++abi: Make the .eh_frame_hdr code work on FreeBSD as well

Ed Schouten ed at nuxi.nl
Tue Mar 31 01:49:34 PDT 2015


http://reviews.llvm.org/D8169

Files:
  src/Unwind/AddressSpace.hpp

Index: src/Unwind/AddressSpace.hpp
===================================================================
--- src/Unwind/AddressSpace.hpp
+++ src/Unwind/AddressSpace.hpp
@@ -57,9 +57,16 @@
 #endif // !defined(_LIBUNWIND_IS_BAREMETAL)
 #endif  // LIBCXXABI_ARM_EHABI
 
-#if defined(__CloudABI__) || defined(__linux__)
+#if defined(__CloudABI__) || defined(__FreeBSD__) || defined(__linux__)
 #if _LIBUNWIND_SUPPORT_DWARF_UNWIND && _LIBUNWIND_SUPPORT_DWARF_INDEX
 #include <link.h>
+// Macro for machine-independent access to the ELF program headers. This
+// macro is not available on some systems (e.g., FreeBSD). On these
+// systems the data structures are just called Elf_XXX. Define ElfW()
+// locally.
+#ifndef ElfW
+#define ElfW(type) Elf_##type
+#endif
 #include "EHHeaderParser.hpp"
 #endif
 #endif

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8169.22929.patch
Type: text/x-patch
Size: 804 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150331/58d16ddd/attachment.bin>


More information about the cfe-commits mailing list