unwind: always export unw_local_addr_space

It seems that the remote unwinder is entirely unused at this moment.
unw_local_addr_space was referencing sThisAddressSpace which use to be a static
in global namespace.  It has since then become a member variable of
LocalAddressSpace.  Update this definition and always export it (needed to
implement unw_get_proc_info_by_ip for ARM).

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@229133 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/libunwind.h b/include/libunwind.h
index b0f6979..e2396e4 100644
--- a/include/libunwind.h
+++ b/include/libunwind.h
@@ -107,12 +107,13 @@
 extern int unw_get_proc_name(unw_cursor_t *, char *, size_t, unw_word_t *) LIBUNWIND_AVAIL;
 //extern int       unw_get_save_loc(unw_cursor_t*, int, unw_save_loc_t*);
 
+extern unw_addr_space_t unw_local_addr_space;
+
 #ifdef UNW_REMOTE
 /*
  * Mac OS X "remote" API for unwinding other processes on same machine
  *
  */
-extern unw_addr_space_t unw_local_addr_space;
 extern unw_addr_space_t unw_create_addr_space_for_task(task_t);
 extern void unw_destroy_addr_space(unw_addr_space_t);
 extern int unw_init_remote_thread(unw_cursor_t *, unw_addr_space_t, thread_t *);
diff --git a/src/Unwind/libunwind.cpp b/src/Unwind/libunwind.cpp
index f497500..d5b18d8 100644
--- a/src/Unwind/libunwind.cpp
+++ b/src/Unwind/libunwind.cpp
@@ -35,6 +35,9 @@
 /// internal object to represent this processes address space
 LocalAddressSpace LocalAddressSpace::sThisAddressSpace;
 
+_LIBUNWIND_EXPORT unw_addr_space_t unw_local_addr_space =
+    (unw_addr_space_t)&LocalAddressSpace::sThisAddressSpace;
+
 /// record the registers and stack position of the caller
 extern int unw_getcontext(unw_context_t *);
 // note: unw_getcontext() implemented in assembly
@@ -70,16 +73,12 @@
 }
 
 #ifdef UNW_REMOTE
-
-_LIBUNWIND_EXPORT unw_addr_space_t unw_local_addr_space =
-    (unw_addr_space_t) & sThisAddressSpace;
-
 /// Create a cursor into a thread in another process.
 _LIBUNWIND_EXPORT int unw_init_remote_thread(unw_cursor_t *cursor,
                                              unw_addr_space_t as,
                                              void *arg) {
   // special case: unw_init_remote(xx, unw_local_addr_space, xx)
-  if (as == (unw_addr_space_t) & sThisAddressSpace)
+  if (as == (unw_addr_space_t)&LocalAddressSpace::sThisAddressSpace)
     return unw_init_local(cursor, NULL); //FIXME
 
   // use "placement new" to allocate UnwindCursor in the cursor buffer