summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2015-03-31 13:37:32 +0000
committeremaste <emaste@FreeBSD.org>2015-03-31 13:37:32 +0000
commitc15d6a555bd1b293356cd8dd6c37894f5b2e1cc8 (patch)
tree08c33f3e4d6fd71c513e8be453a8e5b78fa6215f
parentf6c3ac521ba2ce29b60fd4127510d2b21e3f7d26 (diff)
downloadFreeBSD-src-c15d6a555bd1b293356cd8dd6c37894f5b2e1cc8.zip
FreeBSD-src-c15d6a555bd1b293356cd8dd6c37894f5b2e1cc8.tar.gz
unwind-d2 build workaround for arm64
The __builtin_init_dwarf_reg_size_table function is unimplemented in clang 3.6 for AArch64. Comment it out for now and replace it with a message and abort. Tracked in upstream LLVM PR 22997 https://llvm.org/bugs/show_bug.cgi?id=22997 Submitted by: andrew
-rw-r--r--contrib/gcc/unwind-dw2.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/contrib/gcc/unwind-dw2.c b/contrib/gcc/unwind-dw2.c
index 62c9d09..1b41242 100644
--- a/contrib/gcc/unwind-dw2.c
+++ b/contrib/gcc/unwind-dw2.c
@@ -1393,7 +1393,16 @@ uw_advance_context (struct _Unwind_Context *context, _Unwind_FrameState *fs)
static inline void
init_dwarf_reg_size_table (void)
{
+/*
+ * ARM64TODO: http://llvm.org/pr22997
+ * llvm 3.6 doesn't support __builtin_init_dwarf_reg_size_table on AArch64.
+ */
+#ifdef __aarch64__
+ printf("Unimplemented: init_dwarf_reg_size_table\n");
+ abort();
+#else
__builtin_init_dwarf_reg_size_table (dwarf_reg_size_table);
+#endif
}
static void
OpenPOWER on IntegriCloud